@charset "UTF-8";
@font-face {
  font-family: "icomoon";
  src: url("../fonts/icomoon.woff2?vvs5") format("woff2"), url("../fonts/icomoon.ttf?vvs5") format("truetype"), url("../fonts/icomoon.woff?vvs5") format("woff"), url("../fonts/icomoon.svg?v5#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block; }

.icomoon-icon {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-live:before {
  content: "";
  color: #f00; }

.icon-check-green:before {
  content: "";
  color: #2c8a82; }

.icon-plus-green:before {
  content: "";
  color: #2c8a82; }

.icon-play-circle:before {
  content: "";
  color: #f2f2f2; }

.icon-hollow-check:before {
  content: "";
  color: #929898; }

.icon-earth:before {
  content: ""; }

.icon-copy:before {
  content: "";
  color: #fff; }

.icon-green-check:before {
  content: "";
  color: #2c8a82; }

.icon-facebook-colored:before {
  content: "";
  color: #1877f2; }

.icon-bookmark-green:before {
  content: "";
  color: #2c8a82; }

.icon-user-circle-o-black:before {
  content: ""; }

.icon-sign-out:before {
  content: ""; }

.icon-bookmark-outline:before {
  content: "";
  color: #fff; }

.icon-arrow-left3:before {
  content: ""; }

.icon-arrow-left4:before {
  content: "";
  color: #efece2; }

.icon-apple-colored:before {
  content: ""; }

.icon-news:before {
  content: "";
  color: #fff; }

.icon-eye1:before {
  content: "";
  color: #9a9a9a; }

.icon-lock:before {
  content: "";
  color: #9a9a9a; }

.icon-envelop1:before {
  content: "";
  color: #fff; }

.icon-envelop2:before {
  content: "";
  color: #9a9a9a; }

.icon-envelop-green:before {
  content: "";
  color: #2c8a82; }

.icon-drag-vertical:before {
  content: ""; }

.icon-share2:before {
  content: "";
  color: #2c8a82; }

.icon-share:before {
  content: "";
  color: #4d4d4d; }

.icon-upload:before {
  content: "";
  color: #4d4d4d; }

.icon-user-circle-o:before {
  content: "";
  color: #f7fafa; }

.icon-file-pdf:before {
  content: "";
  color: #fff; }

.icon-date:before {
  content: "";
  color: #afafaf; }

.icon-eye:before {
  content: "";
  color: #afafaf; }

.icon-play:before {
  content: ""; }

.icon-play-green:before {
  content: "";
  color: #2c8a82; }

.icon-archive:before {
  content: ""; }

.icon-album:before {
  content: "";
  color: #fff; }

.icon-arrow-right-black:before {
  content: ""; }

.icon-edit:before {
  content: "";
  color: #2c8a82; }

.icon-calendar:before {
  content: "";
  color: #afafaf; }

.icon-menu:before {
  content: "";
  color: #fff; }

.icon-twitter:before {
  content: ""; }

.icon-tiktok:before {
  content: ""; }

.icon-telegram:before {
  content: "";
  color: #2ca5e0; }

.icon-pause:before {
  content: ""; }

.icon-instagram:before {
  content: ""; }

.icon-search:before {
  content: ""; }

.icon-print:before {
  content: ""; }

.icon-print1:before {
  content: ""; }

.icon-print2:before {
  content: ""; }

.icon-wind:before {
  content: ""; }

.icon-cloudy:before {
  content: ""; }

.icon-rain:before {
  content: ""; }

.icon-lightnight:before {
  content: ""; }

.icon-snow:before {
  content: ""; }

.icon-weather:before {
  content: ""; }

.icon-file-pdf1:before {
  content: ""; }

.icon-mic:before {
  content: ""; }

.icon-fire:before {
  content: ""; }

.icon-bookmark:before {
  content: ""; }

.icon-bookmark1:before {
  content: ""; }

.icon-headphone:before {
  content: ""; }

.icon-calendar1:before {
  content: ""; }

.icon-time1:before {
  content: ""; }

.icon-time:before {
  content: ""; }

.icon-circle:before {
  content: ""; }

.icon-close:before {
  content: ""; }

.icon-menu1:before {
  content: ""; }

.icon-quotes-left:before {
  content: ""; }

.icon-quotes-right:before {
  content: ""; }

.icon-arrow-right1:before {
  content: ""; }

.icon-arrow-down1:before {
  content: ""; }

.icon-arrow-left1:before {
  content: ""; }

.icon-arrow-up1:before {
  content: ""; }

.icon-arrow-left:before {
  content: ""; }

.icon-arrow-right:before {
  content: ""; }

.icon-arrow-up:before {
  content: ""; }

.icon-arrow-down:before {
  content: ""; }

.icon-volume:before {
  content: ""; }

.icon-photos:before {
  content: ""; }

.icon-play1:before {
  content: ""; }

.icon-search1:before {
  content: ""; }

.icon-telegram1:before {
  content: ""; }

.icon-whatsapp:before {
  content: ""; }

.icon-youtube:before {
  content: ""; }

.icon-linkedin:before {
  content: ""; }

.icon-facebook:before {
  content: ""; }

.icon-facebook1:before {
  content: ""; }

.icon-twitter-old:before {
  content: ""; }

@font-face {
  font-family: 'STIX Two Text';
  src: url("../fonts/STIXTwoText-Regular.woff2") format("woff2"), url("../fonts/STIXTwoText-Regular.woff") format("woff"), url("../fonts/STIXTwoText-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'STIX Two Text';
  src: url("../fonts/STIXTwoText-Medium.woff2") format("woff2"), url("../fonts/STIXTwoText-Medium.woff") format("woff"), url("../fonts/STIXTwoText-Medium.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'STIX Two Text';
  src: url("../fonts/STIXTwoText-MediumItalic.woff2") format("woff2"), url("../fonts/STIXTwoText-MediumItalic.woff") format("woff"), url("../fonts/STIXTwoText-MediumItalic.ttf") format("truetype");
  font-weight: 500;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: 'STIX Two Text';
  src: url("../fonts/STIXTwoText-SemiBold.woff2") format("woff2"), url("../fonts/STIXTwoText-SemiBold.woff") format("woff"), url("../fonts/STIXTwoText-SemiBold.ttf") format("truetype");
  font-weight: 600;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'STIX Two Text';
  src: url("../fonts/STIXTwoText-BoldItalic.woff2") format("woff2"), url("../fonts/STIXTwoText-BoldItalic.woff") format("woff"), url("../fonts/STIXTwoText-BoldItalic.ttf") format("truetype");
  font-weight: bold;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: 'STIX Two Text';
  src: url("../fonts/STIXTwoText-SemiBoldItalic.woff2") format("woff2"), url("../fonts/STIXTwoText-SemiBoldItalic.woff") format("woff"), url("../fonts/STIXTwoText-SemiBoldItalic.ttf") format("truetype");
  font-weight: 600;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: 'STIX Two Text';
  src: url("../fonts/STIXTwoText-Bold.woff2") format("woff2"), url("../fonts/STIXTwoText-Bold.woff") format("woff"), url("../fonts/STIXTwoText-Bold.ttf") format("truetype");
  font-weight: bold;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'STIX Two Text';
  src: url("../fonts/STIXTwoText-Italic.woff2") format("woff2"), url("../fonts/STIXTwoText-Italic.woff") format("woff"), url("../fonts/STIXTwoText-Italic.ttf") format("truetype");
  font-weight: normal;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: 'Open-Sans';
  src: url("../fonts/OpenSans-SemiboldItalic.woff2") format("woff2"), url("../fonts/OpenSans-SemiboldItalic.woff") format("woff");
  font-weight: 600;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: 'Open-Sans';
  src: url("../fonts/OpenSans-Semibold.woff2") format("woff2"), url("../fonts/OpenSans-Semibold.woff") format("woff");
  font-weight: 600;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Open-Sans';
  src: url("../fonts/OpenSans.woff2") format("woff2"), url("../fonts/OpenSans.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Open-Sans';
  src: url("../fonts/OpenSans-ExtraboldItalic.woff2") format("woff2"), url("../fonts/OpenSans-ExtraboldItalic.woff") format("woff");
  font-weight: bold;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: 'Open-Sans';
  src: url("../fonts/OpenSansLight-Italic.woff2") format("woff2"), url("../fonts/OpenSansLight-Italic.woff") format("woff");
  font-weight: 300;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: 'Open-Sans';
  src: url("../fonts/OpenSans-Italic.woff2") format("woff2"), url("../fonts/OpenSans-Italic.woff") format("woff");
  font-weight: normal;
  font-style: italic;
  font-display: swap; }

@font-face {
  font-family: 'Open-Sans';
  src: url("../fonts/OpenSans-Extrabold.woff2") format("woff2"), url("../fonts/OpenSans-Extrabold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Open-Sans';
  src: url("../fonts/OpenSans-Light.woff2") format("woff2"), url("../fonts/OpenSans-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Open-Sans';
  src: url("../fonts/OpenSans-Bold.woff2") format("woff2"), url("../fonts/OpenSans-Bold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: 'Open-Sans';
  src: url("../fonts/OpenSans-BoldItalic.woff2") format("woff2"), url("../fonts/OpenSans-BoldItalic.woff") format("woff");
  font-weight: bold;
  font-style: italic;
  font-display: swap; }

/*ok*/
/*end ok*/
/**
 * Foundation for Sites
 * Version 6.7.4
 * 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; } }

.uppercase {
  text-transform: uppercase !important; }

.capitalize {
  text-transform: capitalize; }

.gray-font-color {
  color: #717171; }
  .gray-font-color a {
    color: inherit; }
    .gray-font-color a:hover {
      color: #2c8a82; }

.primary-font-color {
  color: #2c8a82; }

.font-secondary-bold {
  font-family: "Open-Sans";
  font-weight: bold; }

.font-semibold {
  font-weight: 600; }

p {
  font-family: "Open-Sans"; }

h3 {
  line-height: 1.5; }

.ft-sz-14 {
  font-size: 0.875rem; }
  .article-item-content .ft-sz-14 {
    line-height: 1.9; }

.ft-sz-15 {
  font-size: 0.9375rem; }

/*! 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 {
  box-sizing: content-box;
  height: 0;
  overflow: visible; }

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

a {
  background-color: transparent; }

abbr[title] {
  border-bottom: 0;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; }

b,
strong {
  font-weight: bolder; }

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

small {
  font-size: 80%; }

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

img {
  border-style: none; }

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

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

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

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

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

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

legend {
  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"] {
  box-sizing: border-box;
  padding: 0; }

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

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

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

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

details {
  display: block; }

summary {
  display: list-item; }

template {
  display: none; }

[hidden] {
  display: none; }

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

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

.foundation-mq {
  font-family: "small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"; }

html {
  box-sizing: border-box;
  font-size: 100%; }

*,
*::before,
*::after {
  box-sizing: inherit; }

body {
  margin: 0;
  padding: 0;
  background: #e9f2ef;
  font-family: "STIX Two Text", Helvetica Neue, Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: 1.2;
  color: #000000;
  -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 {
  box-sizing: border-box;
  width: 100%;
  border-radius: 0; }

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

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

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

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

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

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

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'],
textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 2.1375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  border: 1px solid #959292;
  border-radius: 0;
  background-color: #ffffff;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.2;
  color: #000000;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  -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: 1px solid #555555;
    background-color: #ffffff;
    box-shadow: 0 0 5px #959292;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }

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

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

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

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

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

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

::placeholder {
  color: #959292; }

[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;
    line-height: 1.2;
    padding: 0.5625rem 0; }

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

.input-group {
  display: flex;
  width: 100%;
  margin-bottom: 1rem;
  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 #959292;
  background: #dcdfdf;
  color: #000000;
  text-align: center;
  white-space: nowrap;
  display: flex;
  flex: 0 0 auto;
  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;
  flex: 1 1 0px;
  min-width: 0; }

.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  display: flex;
  flex: 0 0 auto; }
  .input-group-button a,
  .input-group-button input,
  .input-group-button button,
  .input-group-button label {
    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 #959292; }
  .fieldset legend {
    margin: 0;
    margin-left: -0.1875rem;
    padding: 0 0.1875rem; }

select {
  height: 2.1375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 1px solid #959292;
  border-radius: 0;
  background-color: #ffffff;
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.2;
  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%2885, 85, 85%29"></polygon></svg>');
  background-origin: content-box;
  background-position: right -1rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 1.5rem;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }
  @media screen and (min-width: 0\0) {
    select {
      background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg=="); } }
  select:focus {
    outline: none;
    border: 1px solid #555555;
    background-color: #ffffff;
    box-shadow: 0 0 5px #959292;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }
  select:disabled {
    background-color: #dcdfdf;
    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: #bd3c2f;
  background-color: #f8ecea; }
  .is-invalid-input:not(:focus)::-moz-placeholder {
    color: #bd3c2f; }
  .is-invalid-input:not(:focus):-ms-input-placeholder {
    color: #bd3c2f; }
  .is-invalid-input:not(:focus)::placeholder {
    color: #bd3c2f; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media print, screen and (min-width: 40em) {
  h1, .h1 {
    font-size: 2.375rem; }
  h2, .h2 {
    font-size: 2rem; }
  h3, .h3 {
    font-size: 1.0625rem; }
  h4, .h4 {
    font-size: 1.0625rem; }
  h5, .h5 {
    font-size: 1.25rem; }
  h6, .h6 {
    font-size: 1rem; } }

a {
  line-height: inherit;
  color: #000000;
  text-decoration: none;
  cursor: pointer; }
  a:hover, a:focus {
    color: #2c8a82; }
  a img {
    border: 0; }

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

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

li {
  font-size: inherit; }

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

ol {
  margin-left: 1.25rem; }

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

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

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

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

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

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

code, .code-inline {
  border: 1px solid #959292;
  background-color: #dcdfdf;
  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 #959292;
  background-color: #dcdfdf;
  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;
    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 #555555;
    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: 87.5rem;
  margin-left: auto;
  margin-right: auto; }
  @media print, screen and (min-width: 40em) {
    .grid-container {
      padding-right: 1.28125rem;
      padding-left: 1.28125rem; } }
  .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: 1.28125rem;
        padding-left: 1.28125rem; } }
  .grid-container.full {
    padding-right: 0;
    padding-left: 0;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }

.grid-x {
  display: flex;
  flex-flow: row wrap; }

.cell {
  flex: 0 0 auto;
  min-height: 0;
  min-width: 0;
  width: 100%; }
  .cell.auto {
    flex: 1 1 0; }
  .cell.shrink {
    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 {
  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 {
    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 {
    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 {
    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 {
  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 {
    flex: 1 1 0;
    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 {
    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 {
    flex: 1 1 0;
    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 {
    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 {
    flex: 1 1 0;
    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 {
    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: -1.28125rem;
      margin-right: -1.28125rem; } }
  .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% - 2.5625rem);
      margin-left: 1.28125rem;
      margin-right: 1.28125rem; } }
  .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% - 2.5625rem); }
    .grid-margin-x > .small-2 {
      width: calc(16.66667% - 2.5625rem); }
    .grid-margin-x > .small-3 {
      width: calc(25% - 2.5625rem); }
    .grid-margin-x > .small-4 {
      width: calc(33.33333% - 2.5625rem); }
    .grid-margin-x > .small-5 {
      width: calc(41.66667% - 2.5625rem); }
    .grid-margin-x > .small-6 {
      width: calc(50% - 2.5625rem); }
    .grid-margin-x > .small-7 {
      width: calc(58.33333% - 2.5625rem); }
    .grid-margin-x > .small-8 {
      width: calc(66.66667% - 2.5625rem); }
    .grid-margin-x > .small-9 {
      width: calc(75% - 2.5625rem); }
    .grid-margin-x > .small-10 {
      width: calc(83.33333% - 2.5625rem); }
    .grid-margin-x > .small-11 {
      width: calc(91.66667% - 2.5625rem); }
    .grid-margin-x > .small-12 {
      width: calc(100% - 2.5625rem); }
    .grid-margin-x > .medium-auto {
      width: auto; }
    .grid-margin-x > .medium-shrink {
      width: auto; }
    .grid-margin-x > .medium-1 {
      width: calc(8.33333% - 2.5625rem); }
    .grid-margin-x > .medium-2 {
      width: calc(16.66667% - 2.5625rem); }
    .grid-margin-x > .medium-3 {
      width: calc(25% - 2.5625rem); }
    .grid-margin-x > .medium-4 {
      width: calc(33.33333% - 2.5625rem); }
    .grid-margin-x > .medium-5 {
      width: calc(41.66667% - 2.5625rem); }
    .grid-margin-x > .medium-6 {
      width: calc(50% - 2.5625rem); }
    .grid-margin-x > .medium-7 {
      width: calc(58.33333% - 2.5625rem); }
    .grid-margin-x > .medium-8 {
      width: calc(66.66667% - 2.5625rem); }
    .grid-margin-x > .medium-9 {
      width: calc(75% - 2.5625rem); }
    .grid-margin-x > .medium-10 {
      width: calc(83.33333% - 2.5625rem); }
    .grid-margin-x > .medium-11 {
      width: calc(91.66667% - 2.5625rem); }
    .grid-margin-x > .medium-12 {
      width: calc(100% - 2.5625rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-x > .large-auto {
      width: auto; }
    .grid-margin-x > .large-shrink {
      width: auto; }
    .grid-margin-x > .large-1 {
      width: calc(8.33333% - 2.5625rem); }
    .grid-margin-x > .large-2 {
      width: calc(16.66667% - 2.5625rem); }
    .grid-margin-x > .large-3 {
      width: calc(25% - 2.5625rem); }
    .grid-margin-x > .large-4 {
      width: calc(33.33333% - 2.5625rem); }
    .grid-margin-x > .large-5 {
      width: calc(41.66667% - 2.5625rem); }
    .grid-margin-x > .large-6 {
      width: calc(50% - 2.5625rem); }
    .grid-margin-x > .large-7 {
      width: calc(58.33333% - 2.5625rem); }
    .grid-margin-x > .large-8 {
      width: calc(66.66667% - 2.5625rem); }
    .grid-margin-x > .large-9 {
      width: calc(75% - 2.5625rem); }
    .grid-margin-x > .large-10 {
      width: calc(83.33333% - 2.5625rem); }
    .grid-margin-x > .large-11 {
      width: calc(91.66667% - 2.5625rem); }
    .grid-margin-x > .large-12 {
      width: calc(100% - 2.5625rem); } }
  @media screen and (min-width: 75em) {
    .grid-margin-x > .xlarge-auto {
      width: auto; }
    .grid-margin-x > .xlarge-shrink {
      width: auto; }
    .grid-margin-x > .xlarge-1 {
      width: calc(8.33333% - 2.5625rem); }
    .grid-margin-x > .xlarge-2 {
      width: calc(16.66667% - 2.5625rem); }
    .grid-margin-x > .xlarge-3 {
      width: calc(25% - 2.5625rem); }
    .grid-margin-x > .xlarge-4 {
      width: calc(33.33333% - 2.5625rem); }
    .grid-margin-x > .xlarge-5 {
      width: calc(41.66667% - 2.5625rem); }
    .grid-margin-x > .xlarge-6 {
      width: calc(50% - 2.5625rem); }
    .grid-margin-x > .xlarge-7 {
      width: calc(58.33333% - 2.5625rem); }
    .grid-margin-x > .xlarge-8 {
      width: calc(66.66667% - 2.5625rem); }
    .grid-margin-x > .xlarge-9 {
      width: calc(75% - 2.5625rem); }
    .grid-margin-x > .xlarge-10 {
      width: calc(83.33333% - 2.5625rem); }
    .grid-margin-x > .xlarge-11 {
      width: calc(91.66667% - 2.5625rem); }
    .grid-margin-x > .xlarge-12 {
      width: calc(100% - 2.5625rem); } }

.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: -1.28125rem;
      margin-left: -1.28125rem; } }

.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: -1.28125rem;
      margin-left: -1.28125rem; } }

.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: 1.28125rem;
      padding-left: 1.28125rem; } }

.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% - 2.5625rem); }
  .grid-margin-x.small-up-2 > .cell {
    width: calc(50% - 2.5625rem); }
  .grid-margin-x.small-up-3 > .cell {
    width: calc(33.33333% - 2.5625rem); }
  .grid-margin-x.small-up-4 > .cell {
    width: calc(25% - 2.5625rem); }
  .grid-margin-x.small-up-5 > .cell {
    width: calc(20% - 2.5625rem); }
  .grid-margin-x.small-up-6 > .cell {
    width: calc(16.66667% - 2.5625rem); }
  .grid-margin-x.small-up-7 > .cell {
    width: calc(14.28571% - 2.5625rem); }
  .grid-margin-x.small-up-8 > .cell {
    width: calc(12.5% - 2.5625rem); }
  .grid-margin-x.medium-up-1 > .cell {
    width: calc(100% - 2.5625rem); }
  .grid-margin-x.medium-up-2 > .cell {
    width: calc(50% - 2.5625rem); }
  .grid-margin-x.medium-up-3 > .cell {
    width: calc(33.33333% - 2.5625rem); }
  .grid-margin-x.medium-up-4 > .cell {
    width: calc(25% - 2.5625rem); }
  .grid-margin-x.medium-up-5 > .cell {
    width: calc(20% - 2.5625rem); }
  .grid-margin-x.medium-up-6 > .cell {
    width: calc(16.66667% - 2.5625rem); }
  .grid-margin-x.medium-up-7 > .cell {
    width: calc(14.28571% - 2.5625rem); }
  .grid-margin-x.medium-up-8 > .cell {
    width: calc(12.5% - 2.5625rem); } }

@media print, screen and (min-width: 64em) {
  .grid-margin-x.large-up-1 > .cell {
    width: calc(100% - 2.5625rem); }
  .grid-margin-x.large-up-2 > .cell {
    width: calc(50% - 2.5625rem); }
  .grid-margin-x.large-up-3 > .cell {
    width: calc(33.33333% - 2.5625rem); }
  .grid-margin-x.large-up-4 > .cell {
    width: calc(25% - 2.5625rem); }
  .grid-margin-x.large-up-5 > .cell {
    width: calc(20% - 2.5625rem); }
  .grid-margin-x.large-up-6 > .cell {
    width: calc(16.66667% - 2.5625rem); }
  .grid-margin-x.large-up-7 > .cell {
    width: calc(14.28571% - 2.5625rem); }
  .grid-margin-x.large-up-8 > .cell {
    width: calc(12.5% - 2.5625rem); } }

@media screen and (min-width: 75em) {
  .grid-margin-x.xlarge-up-1 > .cell {
    width: calc(100% - 2.5625rem); }
  .grid-margin-x.xlarge-up-2 > .cell {
    width: calc(50% - 2.5625rem); }
  .grid-margin-x.xlarge-up-3 > .cell {
    width: calc(33.33333% - 2.5625rem); }
  .grid-margin-x.xlarge-up-4 > .cell {
    width: calc(25% - 2.5625rem); }
  .grid-margin-x.xlarge-up-5 > .cell {
    width: calc(20% - 2.5625rem); }
  .grid-margin-x.xlarge-up-6 > .cell {
    width: calc(16.66667% - 2.5625rem); }
  .grid-margin-x.xlarge-up-7 > .cell {
    width: calc(14.28571% - 2.5625rem); }
  .grid-margin-x.xlarge-up-8 > .cell {
    width: calc(12.5% - 2.5625rem); } }

.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% + 1.25rem / 2); }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media print, screen and (min-width: 40em) {
  .medium-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .medium-offset-0 {
    margin-left: calc(0% + 2.5625rem / 2); }
  .medium-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .medium-offset-1 {
    margin-left: calc(8.33333% + 2.5625rem / 2); }
  .medium-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .medium-offset-2 {
    margin-left: calc(16.66667% + 2.5625rem / 2); }
  .medium-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .medium-offset-3 {
    margin-left: calc(25% + 2.5625rem / 2); }
  .medium-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .medium-offset-4 {
    margin-left: calc(33.33333% + 2.5625rem / 2); }
  .medium-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .medium-offset-5 {
    margin-left: calc(41.66667% + 2.5625rem / 2); }
  .medium-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .medium-offset-6 {
    margin-left: calc(50% + 2.5625rem / 2); }
  .medium-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .medium-offset-7 {
    margin-left: calc(58.33333% + 2.5625rem / 2); }
  .medium-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .medium-offset-8 {
    margin-left: calc(66.66667% + 2.5625rem / 2); }
  .medium-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .medium-offset-9 {
    margin-left: calc(75% + 2.5625rem / 2); }
  .medium-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .medium-offset-10 {
    margin-left: calc(83.33333% + 2.5625rem / 2); }
  .medium-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .medium-offset-11 {
    margin-left: calc(91.66667% + 2.5625rem / 2); } }

@media print, screen and (min-width: 64em) {
  .large-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .large-offset-0 {
    margin-left: calc(0% + 2.5625rem / 2); }
  .large-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .large-offset-1 {
    margin-left: calc(8.33333% + 2.5625rem / 2); }
  .large-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .large-offset-2 {
    margin-left: calc(16.66667% + 2.5625rem / 2); }
  .large-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .large-offset-3 {
    margin-left: calc(25% + 2.5625rem / 2); }
  .large-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .large-offset-4 {
    margin-left: calc(33.33333% + 2.5625rem / 2); }
  .large-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .large-offset-5 {
    margin-left: calc(41.66667% + 2.5625rem / 2); }
  .large-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .large-offset-6 {
    margin-left: calc(50% + 2.5625rem / 2); }
  .large-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .large-offset-7 {
    margin-left: calc(58.33333% + 2.5625rem / 2); }
  .large-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .large-offset-8 {
    margin-left: calc(66.66667% + 2.5625rem / 2); }
  .large-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .large-offset-9 {
    margin-left: calc(75% + 2.5625rem / 2); }
  .large-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .large-offset-10 {
    margin-left: calc(83.33333% + 2.5625rem / 2); }
  .large-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .large-offset-11 {
    margin-left: calc(91.66667% + 2.5625rem / 2); } }

@media screen and (min-width: 75em) {
  .xlarge-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .xlarge-offset-0 {
    margin-left: calc(0% + 2.5625rem / 2); }
  .xlarge-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .xlarge-offset-1 {
    margin-left: calc(8.33333% + 2.5625rem / 2); }
  .xlarge-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .xlarge-offset-2 {
    margin-left: calc(16.66667% + 2.5625rem / 2); }
  .xlarge-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .xlarge-offset-3 {
    margin-left: calc(25% + 2.5625rem / 2); }
  .xlarge-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .xlarge-offset-4 {
    margin-left: calc(33.33333% + 2.5625rem / 2); }
  .xlarge-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .xlarge-offset-5 {
    margin-left: calc(41.66667% + 2.5625rem / 2); }
  .xlarge-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .xlarge-offset-6 {
    margin-left: calc(50% + 2.5625rem / 2); }
  .xlarge-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .xlarge-offset-7 {
    margin-left: calc(58.33333% + 2.5625rem / 2); }
  .xlarge-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .xlarge-offset-8 {
    margin-left: calc(66.66667% + 2.5625rem / 2); }
  .xlarge-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .xlarge-offset-9 {
    margin-left: calc(75% + 2.5625rem / 2); }
  .xlarge-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .xlarge-offset-10 {
    margin-left: calc(83.33333% + 2.5625rem / 2); }
  .xlarge-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .xlarge-offset-11 {
    margin-left: calc(91.66667% + 2.5625rem / 2); } }

.grid-y {
  display: flex;
  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 {
    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 {
      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 {
      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 {
      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 {
    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 {
      flex: 1 1 0;
      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 {
      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 {
      flex: 1 1 0;
      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 {
      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 {
      flex: 1 1 0;
      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 {
      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: -1.28125rem;
      margin-bottom: -1.28125rem; } }

.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: 1.28125rem;
      padding-bottom: 1.28125rem; } }

.grid-margin-y {
  margin-top: -0.625rem;
  margin-bottom: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y {
      margin-top: -1.28125rem;
      margin-bottom: -1.28125rem; } }
  .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% - 2.5625rem);
      margin-top: 1.28125rem;
      margin-bottom: 1.28125rem; } }
  .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% - 2.5625rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 2.5625rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 2.5625rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 2.5625rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 2.5625rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 2.5625rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 2.5625rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 2.5625rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 2.5625rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 2.5625rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 2.5625rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 2.5625rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 2.5625rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 2.5625rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 2.5625rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 2.5625rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 2.5625rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 2.5625rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 2.5625rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 2.5625rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 2.5625rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 2.5625rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 2.5625rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 2.5625rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y > .large-auto {
      height: auto; }
    .grid-margin-y > .large-shrink {
      height: auto; }
    .grid-margin-y > .large-1 {
      height: calc(8.33333% - 2.5625rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 2.5625rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 2.5625rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 2.5625rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 2.5625rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 2.5625rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 2.5625rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 2.5625rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 2.5625rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 2.5625rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 2.5625rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 2.5625rem); } }
  @media screen and (min-width: 75em) {
    .grid-margin-y > .xlarge-auto {
      height: auto; }
    .grid-margin-y > .xlarge-shrink {
      height: auto; }
    .grid-margin-y > .xlarge-1 {
      height: calc(8.33333% - 2.5625rem); }
    .grid-margin-y > .xlarge-2 {
      height: calc(16.66667% - 2.5625rem); }
    .grid-margin-y > .xlarge-3 {
      height: calc(25% - 2.5625rem); }
    .grid-margin-y > .xlarge-4 {
      height: calc(33.33333% - 2.5625rem); }
    .grid-margin-y > .xlarge-5 {
      height: calc(41.66667% - 2.5625rem); }
    .grid-margin-y > .xlarge-6 {
      height: calc(50% - 2.5625rem); }
    .grid-margin-y > .xlarge-7 {
      height: calc(58.33333% - 2.5625rem); }
    .grid-margin-y > .xlarge-8 {
      height: calc(66.66667% - 2.5625rem); }
    .grid-margin-y > .xlarge-9 {
      height: calc(75% - 2.5625rem); }
    .grid-margin-y > .xlarge-10 {
      height: calc(83.33333% - 2.5625rem); }
    .grid-margin-y > .xlarge-11 {
      height: calc(91.66667% - 2.5625rem); }
    .grid-margin-y > .xlarge-12 {
      height: calc(100% - 2.5625rem); } }

.grid-frame {
  overflow: hidden;
  position: relative;
  flex-wrap: nowrap;
  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: flex;
  flex-direction: column;
  max-height: 100%; }
  .cell-block-container > .grid-x {
    max-height: 100%;
    flex-wrap: nowrap; }

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

@media print, screen and (min-width: 40em) {
  .grid-y.medium-grid-frame {
    overflow: hidden;
    position: relative;
    flex-wrap: nowrap;
    align-items: stretch;
    height: 100vh;
    width: auto; } }

@media print, screen and (min-width: 64em) {
  .grid-y.large-grid-frame {
    overflow: hidden;
    position: relative;
    flex-wrap: nowrap;
    align-items: stretch;
    height: 100vh;
    width: auto; } }

@media screen and (min-width: 75em) {
  .grid-y.xlarge-grid-frame {
    overflow: hidden;
    position: relative;
    flex-wrap: nowrap;
    align-items: stretch;
    height: 100vh;
    width: auto; } }

.cell .grid-y.grid-frame {
  height: 100%; }

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

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

@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: -1.28125rem;
      margin-bottom: -1.28125rem; } }
  .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% - 2.5625rem);
      margin-top: 1.28125rem;
      margin-bottom: 1.28125rem; } }
  .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% - 2.5625rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 2.5625rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 2.5625rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 2.5625rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 2.5625rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 2.5625rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 2.5625rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 2.5625rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 2.5625rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 2.5625rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 2.5625rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 2.5625rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 2.5625rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 2.5625rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 2.5625rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 2.5625rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 2.5625rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 2.5625rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 2.5625rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 2.5625rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 2.5625rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 2.5625rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 2.5625rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 2.5625rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y > .large-auto {
      height: auto; }
    .grid-margin-y > .large-shrink {
      height: auto; }
    .grid-margin-y > .large-1 {
      height: calc(8.33333% - 2.5625rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 2.5625rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 2.5625rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 2.5625rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 2.5625rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 2.5625rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 2.5625rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 2.5625rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 2.5625rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 2.5625rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 2.5625rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 2.5625rem); } }
  @media screen and (min-width: 75em) {
    .grid-margin-y > .xlarge-auto {
      height: auto; }
    .grid-margin-y > .xlarge-shrink {
      height: auto; }
    .grid-margin-y > .xlarge-1 {
      height: calc(8.33333% - 2.5625rem); }
    .grid-margin-y > .xlarge-2 {
      height: calc(16.66667% - 2.5625rem); }
    .grid-margin-y > .xlarge-3 {
      height: calc(25% - 2.5625rem); }
    .grid-margin-y > .xlarge-4 {
      height: calc(33.33333% - 2.5625rem); }
    .grid-margin-y > .xlarge-5 {
      height: calc(41.66667% - 2.5625rem); }
    .grid-margin-y > .xlarge-6 {
      height: calc(50% - 2.5625rem); }
    .grid-margin-y > .xlarge-7 {
      height: calc(58.33333% - 2.5625rem); }
    .grid-margin-y > .xlarge-8 {
      height: calc(66.66667% - 2.5625rem); }
    .grid-margin-y > .xlarge-9 {
      height: calc(75% - 2.5625rem); }
    .grid-margin-y > .xlarge-10 {
      height: calc(83.33333% - 2.5625rem); }
    .grid-margin-y > .xlarge-11 {
      height: calc(91.66667% - 2.5625rem); }
    .grid-margin-y > .xlarge-12 {
      height: calc(100% - 2.5625rem); } }

.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 + 2.5625rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 2.5625rem); } }
  @media screen and (min-width: 75em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 2.5625rem); } }

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

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

@media screen and (min-width: 75em) {
  .grid-margin-y.xlarge-grid-frame {
    height: calc(100vh + 2.5625rem); } }

.button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  padding: 0.85em 2em;
  border: 1px solid transparent;
  border-radius: 0;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-family: inherit;
  font-size: 0.9rem;
  -webkit-appearance: none;
  line-height: 1;
  text-align: center;
  cursor: pointer; }
  [data-whatinput='mouse'] .button {
    outline: 0; }
  .button.tiny {
    font-size: 0.6rem; }
  .button.small {
    font-size: 0.75rem; }
  .button.large {
    font-size: 1.25rem; }
  .button.expanded {
    display: block;
    width: 100%;
    margin-right: 0;
    margin-left: 0; }
  .button, .button.disabled, .button[disabled], .button.disabled:hover, .button[disabled]:hover, .button.disabled:focus, .button[disabled]:focus {
    background-color: #2c8a82;
    color: #ffffff; }
  .button:hover, .button:focus {
    background-color: #25756f;
    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: #2c8a82;
    color: #000000; }
  .button.primary:hover, .button.primary:focus {
    background-color: #236e68;
    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: #4d998a;
    color: #000000; }
  .button.secondary:hover, .button.secondary:focus {
    background-color: #3e7a6e;
    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: #bd3c2f;
    color: #ffffff; }
  .button.alert:hover, .button.alert:focus {
    background-color: #973026;
    color: #ffffff; }
  .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 #2c8a82;
    color: #2c8a82; }
  .button.hollow:hover, .button.hollow:focus {
    border-color: #164541;
    color: #164541; }
  .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 #2c8a82;
    color: #2c8a82; }
  .button.hollow.primary:hover, .button.hollow.primary:focus {
    border-color: #164541;
    color: #164541; }
  .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 #4d998a;
    color: #4d998a; }
  .button.hollow.secondary:hover, .button.hollow.secondary:focus {
    border-color: #274d45;
    color: #274d45; }
  .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 #bd3c2f;
    color: #bd3c2f; }
  .button.hollow.alert:hover, .button.hollow.alert:focus {
    border-color: #5f1e18;
    color: #5f1e18; }
  .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: #2c8a82; }
  .button.clear:hover, .button.clear:focus {
    color: #164541; }
  .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: #2c8a82; }
  .button.clear.primary:hover, .button.clear.primary:focus {
    color: #164541; }
  .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: #4d998a; }
  .button.clear.secondary:hover, .button.clear.secondary:focus {
    color: #274d45; }
  .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: #bd3c2f; }
  .button.clear.alert:hover, .button.clear.alert:focus {
    color: #5f1e18; }
  .button.disabled, .button[disabled] {
    opacity: 0.25;
    cursor: not-allowed; }
  .button.dropdown::after {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0.4em;
    content: '';
    border-bottom-width: 0;
    border-color: #ffffff transparent transparent;
    position: relative;
    top: 0.4em;
    display: inline-block;
    float: right;
    margin-left: 2em; }
  .button.dropdown.hollow::after, .button.dropdown.clear::after {
    border-top-color: #2c8a82; }
  .button.dropdown.hollow.primary::after, .button.dropdown.clear.primary::after {
    border-top-color: #2c8a82; }
  .button.dropdown.hollow.secondary::after, .button.dropdown.clear.secondary::after {
    border-top-color: #4d998a; }
  .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: #bd3c2f; }
  .button.arrow-only::after {
    top: -0.1em;
    float: none;
    margin-left: 0; }

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

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

.label {
  display: inline-block;
  padding: 0.33333rem 0.5rem;
  border-radius: 0;
  font-size: 0.8rem;
  line-height: 1;
  white-space: nowrap;
  cursor: default;
  background: #2c8a82;
  color: #ffffff; }
  .label.primary {
    background: #2c8a82;
    color: #000000; }
  .label.secondary {
    background: #4d998a;
    color: #000000; }
  .label.success {
    background: #3adb76;
    color: #000000; }
  .label.warning {
    background: #ffae00;
    color: #000000; }
  .label.alert {
    background: #bd3c2f;
    color: #ffffff; }

.progress {
  height: 1rem;
  margin-bottom: 1rem;
  border-radius: 0;
  background-color: #959292; }
  .progress.primary .progress-meter {
    background-color: #2c8a82; }
  .progress.secondary .progress-meter {
    background-color: #4d998a; }
  .progress.success .progress-meter {
    background-color: #3adb76; }
  .progress.warning .progress-meter {
    background-color: #ffae00; }
  .progress.alert .progress-meter {
    background-color: #bd3c2f; }

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

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

table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 0; }
  thead,
  tbody,
  tfoot {
    border: 1px solid #f2f2f2;
    background-color: #ffffff; }
  caption {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: bold; }
  thead {
    background: #f9f9f9;
    color: #000000; }
  tfoot {
    background: #f2f2f2;
    color: #000000; }
  thead tr,
  tfoot tr {
    background: transparent; }
  thead th,
  thead td,
  tfoot th,
  tfoot td {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: bold;
    text-align: left; }
  tbody th,
  tbody td {
    padding: 0.5rem 0.625rem 0.625rem; }
  tbody tr:nth-child(even) {
    border-bottom: 0;
    background-color: #f2f2f2; }
  table.unstriped tbody {
    background-color: #ffffff; }
    table.unstriped tbody tr {
      border-bottom: 1px solid #f2f2f2;
      background-color: #ffffff; }

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

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

table.hover thead tr:hover {
  background-color: #f4f4f4; }

table.hover tfoot tr:hover {
  background-color: #ededed; }

table.hover tbody tr:hover {
  background-color: #fafafa; }

table.hover:not(.unstriped) tr:nth-of-type(even):hover {
  background-color: #ededed; }

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

.badge {
  display: inline-block;
  min-width: 2.1em;
  padding: 0.3em;
  border-radius: 50%;
  font-size: 0.6rem;
  text-align: center;
  background: #2c8a82;
  color: #ffffff; }
  .badge.primary {
    background: #2c8a82;
    color: #000000; }
  .badge.secondary {
    background: #4d998a;
    color: #000000; }
  .badge.success {
    background: #3adb76;
    color: #000000; }
  .badge.warning {
    background: #ffae00;
    color: #000000; }
  .badge.alert {
    background: #bd3c2f;
    color: #ffffff; }

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

.callout {
  position: relative;
  margin: 0 0 1rem 0;
  padding: 1rem;
  border: 1px solid rgba(0, 0, 0, 0.25);
  border-radius: 0;
  background-color: white;
  color: #000000; }
  .callout > :first-child {
    margin-top: 0; }
  .callout > :last-child {
    margin-bottom: 0; }
  .callout.primary {
    background-color: #2c8a82;
    color: #000000; }
  .callout.secondary {
    background-color: #4d998a;
    color: #000000; }
  .callout.success {
    background-color: #3adb76;
    color: #000000; }
  .callout.warning {
    background-color: #ffae00;
    color: #000000; }
  .callout.alert {
    background-color: #bd3c2f;
    color: #e9f2ef; }
  .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; }

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

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

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

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

.pagination {
  margin-left: 0;
  margin-bottom: 1rem; }
  .pagination::before, .pagination::after {
    display: table;
    content: ' ';
    flex-basis: 0;
    order: 1; }
  .pagination::after {
    clear: both; }
  .pagination li {
    margin-right: 0.0625rem;
    border-radius: 0;
    font-size: 0.875rem;
    display: none; }
    .pagination li:last-child, .pagination li:first-child {
      display: inline-block; }
    @media print, screen and (min-width: 40em) {
      .pagination li {
        display: inline-block; } }
  .pagination a,
  .pagination button {
    display: block;
    padding: 0.1875rem 0.625rem;
    border-radius: 0;
    color: #000000; }
    .pagination a:hover,
    .pagination button:hover {
      background: #dcdfdf; }
  .pagination .current {
    padding: 0.1875rem 0.625rem;
    background: #2c8a82;
    color: #ffffff;
    cursor: default; }
  .pagination .disabled {
    padding: 0.1875rem 0.625rem;
    color: #959292;
    cursor: not-allowed; }
    .pagination .disabled:hover {
      background: transparent; }
  .pagination .ellipsis::after {
    padding: 0.1875rem 0.625rem;
    content: '\2026';
    color: #000000; }

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

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

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

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

.accordion {
  margin-left: 0;
  background: #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 #dcdfdf;
  border-bottom: 0;
  font-size: 0.75rem;
  line-height: 1;
  color: #2c8a82; }
  :last-child:not(.is-active) > .accordion-title {
    border-bottom: 1px solid #dcdfdf;
    border-radius: 0 0 0 0; }
  .accordion-title:hover, .accordion-title:focus {
    background-color: #dcdfdf; }
  .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 #dcdfdf;
  border-bottom: 0;
  background-color: #ffffff;
  color: #000000; }
  :last-child > .accordion-content:last-child {
    border-bottom: 1px solid #dcdfdf; }

.media-object {
  display: flex;
  margin-bottom: 1rem;
  flex-wrap: nowrap; }
  .media-object img {
    max-width: none; }
  @media print, screen and (max-width: 39.99875em) {
    .media-object.stack-for-small {
      flex-wrap: wrap; } }

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

.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 #dcdfdf;
  background: #ffffff;
  list-style-type: none; }
  .tabs::before, .tabs::after {
    display: table;
    content: ' ';
    flex-basis: 0;
    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: #2c8a82; }
  .tabs.primary > li > a {
    color: #000000; }
    .tabs.primary > li > a:hover, .tabs.primary > li > a:focus {
      background: #30968e; }

.tabs-title {
  float: left; }
  .tabs-title > a {
    display: block;
    padding: 1.25rem 1.5rem;
    font-size: 0.75rem;
    line-height: 1;
    color: #2c8a82; }
    [data-whatinput='mouse'] .tabs-title > a {
      outline: 0; }
    .tabs-title > a:hover {
      background: #ffffff;
      color: #267770; }
    .tabs-title > a:focus, .tabs-title > a[aria-selected='true'] {
      background: #dcdfdf;
      color: #2c8a82; }

.tabs-content {
  border: 1px solid #dcdfdf;
  border-top: 0;
  background: #ffffff;
  color: #000000;
  transition: all 0.5s ease; }

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

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

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

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

.menu {
  padding: 0;
  margin: 0;
  list-style: none;
  position: relative;
  display: flex;
  flex-wrap: wrap; }
  [data-whatinput='mouse'] .menu li {
    outline: 0; }
  .menu a,
  .menu .button {
    line-height: 1;
    text-decoration: none;
    display: block;
    padding: 0.7rem 1rem; }
  .menu input,
  .menu select,
  .menu a,
  .menu button {
    margin-bottom: 0; }
  .menu input {
    display: inline-block; }
  .menu, .menu.horizontal {
    flex-wrap: wrap;
    flex-direction: row; }
  .menu.vertical {
    flex-wrap: nowrap;
    flex-direction: column; }
    .menu.vertical.icon-top li a img,
    .menu.vertical.icon-top li a i,
    .menu.vertical.icon-top li a svg, .menu.vertical.icon-bottom li a img,
    .menu.vertical.icon-bottom li a i,
    .menu.vertical.icon-bottom li a svg {
      text-align: left; }
  .menu.expanded li {
    flex: 1 1 0px; }
  .menu.expanded.icon-top li a img,
  .menu.expanded.icon-top li a i,
  .menu.expanded.icon-top li a svg, .menu.expanded.icon-bottom li a img,
  .menu.expanded.icon-bottom li a i,
  .menu.expanded.icon-bottom li a svg {
    text-align: left; }
  .menu.simple {
    align-items: center; }
    .menu.simple li + li {
      margin-left: 1rem; }
    .menu.simple a {
      padding: 0; }
  @media print, screen and (min-width: 40em) {
    .menu.medium-horizontal {
      flex-wrap: wrap;
      flex-direction: row; }
    .menu.medium-vertical {
      flex-wrap: nowrap;
      flex-direction: column; }
    .menu.medium-expanded li {
      flex: 1 1 0px; }
    .menu.medium-simple li {
      flex: 1 1 0px; } }
  @media print, screen and (min-width: 64em) {
    .menu.large-horizontal {
      flex-wrap: wrap;
      flex-direction: row; }
    .menu.large-vertical {
      flex-wrap: nowrap;
      flex-direction: column; }
    .menu.large-expanded li {
      flex: 1 1 0px; }
    .menu.large-simple li {
      flex: 1 1 0px; } }
  @media screen and (min-width: 75em) {
    .menu.xlarge-horizontal {
      flex-wrap: wrap;
      flex-direction: row; }
    .menu.xlarge-vertical {
      flex-wrap: nowrap;
      flex-direction: column; }
    .menu.xlarge-expanded li {
      flex: 1 1 0px; }
    .menu.xlarge-simple li {
      flex: 1 1 0px; } }
  .menu.nested {
    margin-right: 0;
    margin-left: 1rem; }
  .menu.icons a {
    display: flex; }
  .menu.icon-top a, .menu.icon-right a, .menu.icon-bottom a, .menu.icon-left a {
    display: flex; }
  .menu.icon-left li a, .menu.nested.icon-left li a {
    flex-flow: row nowrap; }
    .menu.icon-left li a img,
    .menu.icon-left li a i,
    .menu.icon-left li a svg, .menu.nested.icon-left li a img,
    .menu.nested.icon-left li a i,
    .menu.nested.icon-left li a svg {
      margin-right: 0.25rem; }
  .menu.icon-right li a, .menu.nested.icon-right li a {
    flex-flow: row nowrap; }
    .menu.icon-right li a img,
    .menu.icon-right li a i,
    .menu.icon-right li a svg, .menu.nested.icon-right li a img,
    .menu.nested.icon-right li a i,
    .menu.nested.icon-right li a svg {
      margin-left: 0.25rem; }
  .menu.icon-top li a, .menu.nested.icon-top li a {
    flex-flow: column nowrap; }
    .menu.icon-top li a img,
    .menu.icon-top li a i,
    .menu.icon-top li a svg, .menu.nested.icon-top li a img,
    .menu.nested.icon-top li a i,
    .menu.nested.icon-top li a svg {
      align-self: stretch;
      margin-bottom: 0.25rem;
      text-align: center; }
  .menu.icon-bottom li a, .menu.nested.icon-bottom li a {
    flex-flow: column nowrap; }
    .menu.icon-bottom li a img,
    .menu.icon-bottom li a i,
    .menu.icon-bottom li a svg, .menu.nested.icon-bottom li a img,
    .menu.nested.icon-bottom li a i,
    .menu.nested.icon-bottom li a svg {
      align-self: stretch;
      margin-bottom: 0.25rem;
      text-align: center; }
  .menu .is-active > a {
    background: #2c8a82;
    color: #000000; }
  .menu .active > a {
    background: #2c8a82;
    color: #000000; }
  .menu.align-left {
    justify-content: flex-start; }
  .menu.align-right li {
    display: flex;
    justify-content: flex-end; }
    .menu.align-right li .submenu li {
      justify-content: flex-start; }
  .menu.align-right.vertical li {
    display: block;
    text-align: right; }
    .menu.align-right.vertical li .submenu li {
      text-align: right; }
  .menu.align-right.icon-top li a img,
  .menu.align-right.icon-top li a i,
  .menu.align-right.icon-top li a svg, .menu.align-right.icon-bottom li a img,
  .menu.align-right.icon-bottom li a i,
  .menu.align-right.icon-bottom li a svg {
    text-align: right; }
  .menu.align-right .nested {
    margin-right: 1rem;
    margin-left: 0; }
  .menu.align-center li {
    display: flex;
    justify-content: center; }
    .menu.align-center li .submenu li {
      justify-content: flex-start; }
  .menu .menu-text {
    padding: 0.7rem 1rem;
    font-weight: bold;
    line-height: 1;
    color: inherit; }

.menu-centered > .menu {
  justify-content: center; }
  .menu-centered > .menu li {
    display: flex;
    justify-content: center; }
    .menu-centered > .menu li .submenu li {
      justify-content: flex-start; }

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

.accordion-menu li {
  width: 100%; }

.accordion-menu a {
  padding: 0.7rem 1rem; }

.accordion-menu .is-accordion-submenu a {
  padding: 0.7rem 1rem; }

.accordion-menu .nested.is-accordion-submenu {
  margin-right: 0;
  margin-left: 1rem; }

.accordion-menu.align-right .nested.is-accordion-submenu {
  margin-right: 1rem;
  margin-left: 0; }

.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a {
  position: relative; }
  .accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a::after {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px;
    content: '';
    border-bottom-width: 0;
    border-color: #2c8a82 transparent transparent;
    position: absolute;
    top: 50%;
    margin-top: -3px;
    right: 1rem; }

.accordion-menu.align-left .is-accordion-submenu-parent > a::after {
  right: 1rem;
  left: auto; }

.accordion-menu.align-right .is-accordion-submenu-parent > a::after {
  right: auto;
  left: 1rem; }

.accordion-menu .is-accordion-submenu-parent[aria-expanded='true'] > a::after {
  transform: rotate(180deg);
  transform-origin: 50% 50%; }

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

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

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

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

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

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

.drilldown a {
  padding: 0.7rem 1rem;
  background: #ffffff; }

.drilldown .is-drilldown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: -1;
  width: 100%;
  background: #ffffff;
  transition: transform 0.15s linear; }
  .drilldown .is-drilldown-submenu.is-active {
    z-index: 1;
    display: block;
    transform: translateX(-100%); }
  .drilldown .is-drilldown-submenu.is-closing {
    transform: translateX(100%); }
  .drilldown .is-drilldown-submenu a {
    padding: 0.7rem 1rem; }

.drilldown .nested.is-drilldown-submenu {
  margin-right: 0;
  margin-left: 0; }

.drilldown .drilldown-submenu-cover-previous {
  min-height: 100%; }

.drilldown .is-drilldown-submenu-parent > a {
  position: relative; }
  .drilldown .is-drilldown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px;
    content: '';
    border-right-width: 0;
    border-color: transparent transparent transparent #2c8a82;
    position: absolute;
    top: 50%;
    margin-top: -6px;
    right: 1rem; }

.drilldown.align-left .is-drilldown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px;
  content: '';
  border-right-width: 0;
  border-color: transparent transparent transparent #000000;
  right: 1rem;
  left: auto; }

.drilldown.align-right .is-drilldown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px;
  content: '';
  border-left-width: 0;
  border-color: transparent #000000 transparent transparent;
  right: auto;
  left: 1rem; }

.drilldown .js-drilldown-back > a::before {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px;
  content: '';
  border-left-width: 0;
  border-color: transparent #2c8a82 transparent transparent;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.75rem; }

.dropdown.menu > li.opens-left > .is-dropdown-submenu {
  top: 100%;
  right: 0;
  left: auto; }

.dropdown.menu > li.opens-right > .is-dropdown-submenu {
  top: 100%;
  right: auto;
  left: 0; }

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

.dropdown.menu > li.is-dropdown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px;
  content: '';
  border-bottom-width: 0;
  border-color: #000000 transparent transparent;
  right: 5px;
  left: auto;
  margin-top: -3px; }

[data-whatinput='mouse'] .dropdown.menu a {
  outline: 0; }

.dropdown.menu > li > a {
  padding: 0.7rem 1rem; }

.dropdown.menu > li.is-active > a {
  background: transparent;
  color: #2c8a82; }

.no-js .dropdown.menu ul {
  display: none; }

.dropdown.menu .nested.is-dropdown-submenu {
  margin-right: 0;
  margin-left: 0; }

.dropdown.menu.vertical > li .is-dropdown-submenu {
  top: 0; }

.dropdown.menu.vertical > li.opens-left > .is-dropdown-submenu {
  top: 0;
  right: 100%;
  left: auto; }

.dropdown.menu.vertical > li.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 100%; }

.dropdown.menu.vertical > li > a::after {
  right: 14px; }

.dropdown.menu.vertical > li.opens-left > a::after {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px;
  content: '';
  border-left-width: 0;
  border-color: transparent #000000 transparent transparent;
  right: auto;
  left: 5px; }

.dropdown.menu.vertical > li.opens-right > a::after {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px;
  content: '';
  border-right-width: 0;
  border-color: transparent transparent transparent #000000; }

@media print, screen and (min-width: 40em) {
  .dropdown.menu.medium-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.medium-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px;
    content: '';
    border-bottom-width: 0;
    border-color: #000000 transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.medium-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.medium-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.medium-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.medium-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.medium-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px;
    content: '';
    border-left-width: 0;
    border-color: transparent #000000 transparent transparent;
    right: auto;
    left: 5px; }
  .dropdown.menu.medium-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px;
    content: '';
    border-right-width: 0;
    border-color: transparent transparent transparent #000000; } }

@media print, screen and (min-width: 64em) {
  .dropdown.menu.large-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.large-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px;
    content: '';
    border-bottom-width: 0;
    border-color: #000000 transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.large-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.large-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.large-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.large-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.large-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px;
    content: '';
    border-left-width: 0;
    border-color: transparent #000000 transparent transparent;
    right: auto;
    left: 5px; }
  .dropdown.menu.large-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px;
    content: '';
    border-right-width: 0;
    border-color: transparent transparent transparent #000000; } }

@media screen and (min-width: 75em) {
  .dropdown.menu.xlarge-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto; }
  .dropdown.menu.xlarge-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0; }
  .dropdown.menu.xlarge-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem; }
  .dropdown.menu.xlarge-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px;
    content: '';
    border-bottom-width: 0;
    border-color: #000000 transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px; }
  .dropdown.menu.xlarge-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.xlarge-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto; }
  .dropdown.menu.xlarge-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.xlarge-vertical > li > a::after {
    right: 14px; }
  .dropdown.menu.xlarge-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px;
    content: '';
    border-left-width: 0;
    border-color: transparent #000000 transparent transparent;
    right: auto;
    left: 5px; }
  .dropdown.menu.xlarge-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px;
    content: '';
    border-right-width: 0;
    border-color: transparent transparent transparent #000000; } }

.dropdown.menu.align-right .is-dropdown-submenu.first-sub {
  top: 100%;
  right: 0;
  left: auto; }

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

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

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

html.is-reveal-open {
  position: fixed;
  width: 100%;
  overflow-y: hidden; }
  html.is-reveal-open.zf-has-scroll {
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch; }
  html.is-reveal-open body {
    overflow-y: hidden; }

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

.reveal {
  z-index: 1006;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  display: none;
  padding: 1rem;
  border: 1px solid #959292;
  border-radius: 0;
  background-color: #ffffff;
  position: relative;
  top: 100px;
  margin-right: auto;
  margin-left: auto;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch; }
  [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: 87.5rem; } }
  .reveal.collapse {
    padding: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal.tiny {
      width: 30%;
      max-width: 87.5rem; } }
  @media print, screen and (min-width: 40em) {
    .reveal.small {
      width: 50%;
      max-width: 87.5rem; } }
  @media print, screen and (min-width: 40em) {
    .reveal.large {
      width: 90%;
      max-width: 87.5rem; } }
  .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: ' ';
  flex-basis: 0;
  order: 1; }

.clearfix::after {
  clear: both; }

.align-left {
  justify-content: flex-start; }

.align-right {
  justify-content: flex-end; }

.align-center {
  justify-content: center; }

.align-justify {
  justify-content: space-between; }

.align-spaced {
  justify-content: space-around; }

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

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

.align-center.vertical.menu > li > a {
  justify-content: center; }

.align-top {
  align-items: flex-start; }

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

.align-bottom {
  align-items: flex-end; }

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

.align-middle {
  align-items: center; }

.align-self-middle {
  align-self: center; }

.align-stretch {
  align-items: stretch; }

.align-self-stretch {
  align-self: stretch; }

.align-center-middle {
  justify-content: center;
  align-items: center;
  align-content: center; }

.small-order-1 {
  order: 1; }

.small-order-2 {
  order: 2; }

.small-order-3 {
  order: 3; }

.small-order-4 {
  order: 4; }

.small-order-5 {
  order: 5; }

.small-order-6 {
  order: 6; }

@media print, screen and (min-width: 40em) {
  .medium-order-1 {
    order: 1; }
  .medium-order-2 {
    order: 2; }
  .medium-order-3 {
    order: 3; }
  .medium-order-4 {
    order: 4; }
  .medium-order-5 {
    order: 5; }
  .medium-order-6 {
    order: 6; } }

@media print, screen and (min-width: 64em) {
  .large-order-1 {
    order: 1; }
  .large-order-2 {
    order: 2; }
  .large-order-3 {
    order: 3; }
  .large-order-4 {
    order: 4; }
  .large-order-5 {
    order: 5; }
  .large-order-6 {
    order: 6; } }

@media screen and (min-width: 75em) {
  .xlarge-order-1 {
    order: 1; }
  .xlarge-order-2 {
    order: 2; }
  .xlarge-order-3 {
    order: 3; }
  .xlarge-order-4 {
    order: 4; }
  .xlarge-order-5 {
    order: 5; }
  .xlarge-order-6 {
    order: 6; } }

.flex-container {
  display: flex; }

.flex-child-auto {
  flex: 1 1 auto; }

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

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

.flex-dir-row {
  flex-direction: row; }

.flex-dir-row-reverse {
  flex-direction: row-reverse; }

.flex-dir-column {
  flex-direction: column; }

.flex-dir-column-reverse {
  flex-direction: column-reverse; }

@media print, screen and (min-width: 40em) {
  .medium-flex-container {
    display: flex; }
  .medium-flex-child-auto {
    flex: 1 1 auto; }
  .medium-flex-child-grow {
    flex: 1 0 auto; }
  .medium-flex-child-shrink {
    flex: 0 1 auto; }
  .medium-flex-dir-row {
    flex-direction: row; }
  .medium-flex-dir-row-reverse {
    flex-direction: row-reverse; }
  .medium-flex-dir-column {
    flex-direction: column; }
  .medium-flex-dir-column-reverse {
    flex-direction: column-reverse; } }

@media print, screen and (min-width: 64em) {
  .large-flex-container {
    display: flex; }
  .large-flex-child-auto {
    flex: 1 1 auto; }
  .large-flex-child-grow {
    flex: 1 0 auto; }
  .large-flex-child-shrink {
    flex: 0 1 auto; }
  .large-flex-dir-row {
    flex-direction: row; }
  .large-flex-dir-row-reverse {
    flex-direction: row-reverse; }
  .large-flex-dir-column {
    flex-direction: column; }
  .large-flex-dir-column-reverse {
    flex-direction: column-reverse; } }

@media screen and (min-width: 75em) {
  .xlarge-flex-container {
    display: flex; }
  .xlarge-flex-child-auto {
    flex: 1 1 auto; }
  .xlarge-flex-child-grow {
    flex: 1 0 auto; }
  .xlarge-flex-child-shrink {
    flex: 0 1 auto; }
  .xlarge-flex-dir-row {
    flex-direction: row; }
  .xlarge-flex-dir-row-reverse {
    flex-direction: row-reverse; }
  .xlarge-flex-dir-column {
    flex-direction: column; }
  .xlarge-flex-dir-column-reverse {
    flex-direction: column-reverse; } }

.hide {
  display: none !important; }

.invisible {
  visibility: hidden; }

.visible {
  visibility: visible; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.show-for-ie {
  display: none; }

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

.show-for-sticky {
  display: none; }

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

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

.font-wide {
  letter-spacing: 0.25rem; }

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

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

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

.margin-0 {
  margin: 0rem !important; }

.margin-top-0 {
  margin-top: 0rem !important; }

.margin-right-0 {
  margin-right: 0rem !important; }

.margin-bottom-0 {
  margin-bottom: 0rem !important; }

.margin-left-0 {
  margin-left: 0rem !important; }

.margin-horizontal-0 {
  margin-right: 0rem !important;
  margin-left: 0rem !important; }

.margin-vertical-0 {
  margin-top: 0rem !important;
  margin-bottom: 0rem !important; }

.padding-0 {
  padding: 0rem !important; }

.padding-top-0 {
  padding-top: 0rem !important; }

.padding-right-0 {
  padding-right: 0rem !important; }

.padding-bottom-0 {
  padding-bottom: 0rem !important; }

.padding-left-0 {
  padding-left: 0rem !important; }

.padding-horizontal-0 {
  padding-right: 0rem !important;
  padding-left: 0rem !important; }

.padding-vertical-0 {
  padding-top: 0rem !important;
  padding-bottom: 0rem !important; }

.margin-1 {
  margin: 1rem !important; }

.margin-top-1 {
  margin-top: 1rem !important; }

.margin-right-1 {
  margin-right: 1rem !important; }

.margin-bottom-1 {
  margin-bottom: 1rem !important; }

.margin-left-1 {
  margin-left: 1rem !important; }

.margin-horizontal-1 {
  margin-right: 1rem !important;
  margin-left: 1rem !important; }

.margin-vertical-1 {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important; }

.padding-1 {
  padding: 1rem !important; }

.padding-top-1 {
  padding-top: 1rem !important; }

.padding-right-1 {
  padding-right: 1rem !important; }

.padding-bottom-1 {
  padding-bottom: 1rem !important; }

.padding-left-1 {
  padding-left: 1rem !important; }

.padding-horizontal-1 {
  padding-right: 1rem !important;
  padding-left: 1rem !important; }

.padding-vertical-1 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important; }

.margin-2 {
  margin: 2rem !important; }

.margin-top-2 {
  margin-top: 2rem !important; }

.margin-right-2 {
  margin-right: 2rem !important; }

.margin-bottom-2 {
  margin-bottom: 2rem !important; }

.margin-left-2 {
  margin-left: 2rem !important; }

.margin-horizontal-2 {
  margin-right: 2rem !important;
  margin-left: 2rem !important; }

.margin-vertical-2 {
  margin-top: 2rem !important;
  margin-bottom: 2rem !important; }

.padding-2 {
  padding: 2rem !important; }

.padding-top-2 {
  padding-top: 2rem !important; }

.padding-right-2 {
  padding-right: 2rem !important; }

.padding-bottom-2 {
  padding-bottom: 2rem !important; }

.padding-left-2 {
  padding-left: 2rem !important; }

.padding-horizontal-2 {
  padding-right: 2rem !important;
  padding-left: 2rem !important; }

.padding-vertical-2 {
  padding-top: 2rem !important;
  padding-bottom: 2rem !important; }

.margin-3 {
  margin: 3rem !important; }

.margin-top-3 {
  margin-top: 3rem !important; }

.margin-right-3 {
  margin-right: 3rem !important; }

.margin-bottom-3 {
  margin-bottom: 3rem !important; }

.margin-left-3 {
  margin-left: 3rem !important; }

.margin-horizontal-3 {
  margin-right: 3rem !important;
  margin-left: 3rem !important; }

.margin-vertical-3 {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important; }

.padding-3 {
  padding: 3rem !important; }

.padding-top-3 {
  padding-top: 3rem !important; }

.padding-right-3 {
  padding-right: 3rem !important; }

.padding-bottom-3 {
  padding-bottom: 3rem !important; }

.padding-left-3 {
  padding-left: 3rem !important; }

.padding-horizontal-3 {
  padding-right: 3rem !important;
  padding-left: 3rem !important; }

.padding-vertical-3 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important; }

.separator-center {
  text-align: center !important; }
  .separator-center::before, .separator-center::after {
    display: table;
    content: ' ';
    flex-basis: 0;
    order: 1; }
  .separator-center::after {
    clear: both; }
  .separator-center::after {
    position: relative !important;
    width: 3rem;
    border-bottom: 0.125rem solid #2c8a82;
    margin: 1rem auto 0; }

.separator-left {
  text-align: left !important; }
  .separator-left::before, .separator-left::after {
    display: table;
    content: ' ';
    flex-basis: 0;
    order: 1; }
  .separator-left::after {
    clear: both; }
  .separator-left::after {
    position: relative !important;
    width: 3rem;
    border-bottom: 0.125rem solid #2c8a82;
    margin: 1rem auto 0;
    margin-left: 0 !important; }

.separator-right {
  text-align: right !important; }
  .separator-right::before, .separator-right::after {
    display: table;
    content: ' ';
    flex-basis: 0;
    order: 1; }
  .separator-right::after {
    clear: both; }
  .separator-right::after {
    position: relative !important;
    width: 3rem;
    border-bottom: 0.125rem solid #2c8a82;
    margin: 1rem auto 0;
    margin-right: 0 !important; }

.width-25 {
  width: 25% !important; }

.width-50 {
  width: 50% !important; }

.width-75 {
  width: 75% !important; }

.width-100 {
  width: 100% !important; }

.height-25 {
  height: 25% !important; }

.height-50 {
  height: 50% !important; }

.height-75 {
  height: 75% !important; }

.height-100 {
  height: 100% !important; }

.max-width-100 {
  max-width: 100% !important; }

.max-height-100 {
  max-height: 100% !important; }

.position-static {
  position: static !important; }

.position-relative {
  position: relative !important; }

.position-absolute {
  position: absolute !important; }

.position-fixed {
  position: fixed !important; }

.position-fixed-top {
  position: fixed !important;
  top: 0rem !important;
  right: 0rem !important;
  left: 0rem !important;
  z-index: 975; }

.position-fixed-bottom {
  position: fixed !important;
  right: 0rem !important;
  bottom: 0rem !important;
  left: 0rem !important;
  z-index: 975; }

/*!
 * Slidebars - A jQuery Framework for Off-Canvas Menus and Sidebars
 * Version: 2.0.2
 * Url: http://www.adchsm.com/slidebars/
 * Author: Adam Charles Smith
 * Author url: http://www.adchsm.com/
 * License: MIT
 * License url: http://www.adchsm.com/slidebars/license/
 */
/**
 * Box Model, Html & Body
 */
html, body, [canvas=container], [off-canvas] {
  margin: 0;
  padding: 0;
  box-sizing: border-box; }

html, body {
  width: 100%;
  /*height: 100%;
  overflow-x: hidden;*/ }

/**
 * Canvas
 */
[canvas] {
  z-index: 1; }

[canvas=container] {
  width: 100%;
  height: 100%;
  overflow-y: auto;
  position: relative;
  background-color: transparent;
  /* Basic background color, overwrite this in your own css. */
  -webkit-overflow-scrolling: touch;
  /* Enables momentum scrolling on iOS devices, may be removed by setting to 'auto' in your own CSS. */ }

[canvas=container]:before, [canvas=container]:after {
  clear: both;
  content: '';
  display: table; }

/**
 * Off-Canavs
 */
[off-canvas] {
  display: none;
  position: fixed;
  overflow: hidden;
  overflow-y: auto;
  background-color: #253c3a;
  /* Basic background color, overwrite this in your own css. */
  color: #ffffff;
  /* Basic colors, overwrite this in your own css. */
  -webkit-overflow-scrolling: touch;
  /* Enables momentum scrolling on iOS devices, may be removed by setting to 'auto' in your own CSS. */ }

[off-canvas*=top] {
  width: 100%;
  height: 255px;
  top: 0; }

[off-canvas*=right] {
  width: 255px;
  height: 100%;
  top: 0;
  right: 0; }

[off-canvas*=bottom] {
  width: 100%;
  height: 255px;
  bottom: 0; }

[off-canvas*=left] {
  width: 255px;
  height: 100%;
  top: 0;
  left: 0; }

[off-canvas*=reveal] {
  z-index: 0; }

[off-canvas*=push] {
  z-index: 1; }

[off-canvas*=overlay] {
  z-index: 9999; }

[off-canvas*=shift] {
  z-index: 0; }

/**
 * Animation
 */
[off-canvas] {
  transform: translate(0px, 0px); }

[canvas], [off-canvas] {
  /*@include breakpoint(medium down) {
    -webkit-transition: -webkit-transform 300ms;
    transition: transform 300ms;
  }*/
  transition: transform 300ms;
  -webkit-backface-visibility: hidden;
  /* Prevents flickering, may be removed if experiencing problems with fixed background images in Chrome. */ }

[off-canvas*=shift][off-canvas*=top] {
  transform: translate(0px, 50%); }

[off-canvas*=shift][off-canvas*=right] {
  transform: translate(-50%, 0px); }

[off-canvas*=shift][off-canvas*=bottom] {
  transform: translate(0px, -50%); }

[off-canvas*=shift][off-canvas*=left] {
  transform: translate(50%, 0px); }

#sb-blocker {
  cursor: pointer;
  background: black;
  display: none;
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 99;
  opacity: 0;
  transition: opacity .3s ease 0s; }
  @media print, screen and (min-width: 64em) {
    #sb-blocker {
      display: none !important; } }

.sb-opening #sb-blocker {
  display: block;
  opacity: 0; }

.sb-opened #sb-blocker {
  opacity: 0.6; }

.custom-fluid-width {
  width: 100%; }

.custom-duration-400 {
  transition-duration: .4s; }

/**
 * Print
 */
@media print {
  [canvas] {
    transform: translate(0px, 0px) !important; }
  [off-canvas] {
    display: none !important; } }

/* Slider */
/* Icons */
/* Arrows */
.slick-prev,
.slick-next {
  margin: 0;
  position: absolute;
  display: block;
  height: 68px;
  width: 48px;
  line-height: 0;
  font-size: 0;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  transform: translate(0, -50%);
  border: 0;
  padding: 0;
  outline: none;
  z-index: 2; }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: none;
    color: transparent; }
    .slick-prev:hover:before, .slick-prev:focus:before,
    .slick-next:hover:before,
    .slick-next:focus:before {
      opacity: 1;
      color: #2c8a82; }
  .slick-prev.slick-disabled:before,
  .slick-next.slick-disabled:before {
    opacity: 0.5; }
  .slick-prev:before,
  .slick-next:before {
    text-shadow: 0px 2px rgba(0, 51, 102, 0.4);
    display: block;
    font-family: "icomoon";
    font-size: 3.5rem;
    line-height: 1;
    color: #ffffff;
    opacity: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.slick-prev {
  left: 0;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px; }
  [dir="rtl"] .slick-prev {
    left: auto;
    right: 0; }
  .slick-prev:before {
    background: transparent;
    content: ""; }
    [dir="rtl"] .slick-prev:before {
      background: transparent;
      content: ""; }

.slick-next {
  right: 0;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px; }
  [dir="rtl"] .slick-next {
    left: 0;
    right: auto; }
  .slick-next:before {
    background: transparent;
    content: ""; }
    [dir="rtl"] .slick-next:before {
      background: transparent;
      content: ""; }

/* Dots */
.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%; }
  .slick-dots li {
    position: relative;
    display: inline-block;
    height: 10px;
    width: 10px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      border: 0;
      background: transparent;
      display: block;
      height: 10px;
      width: 10px;
      outline: none;
      line-height: 0px;
      font-size: 0px;
      color: transparent;
      padding: 5px;
      cursor: pointer; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
        .slick-dots li button:hover:before, .slick-dots li button:focus:before {
          opacity: 1; }
      .slick-dots li button:before {
        position: absolute;
        top: 0;
        left: 0;
        content: "";
        width: 10px;
        height: 10px;
        font-family: "icomoon";
        font-size: 13px;
        line-height: 10px;
        text-align: center;
        color: #E8E8E8;
        opacity: 0.5;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .slick-dots li.slick-active button:before {
      color: #253C3A;
      opacity: 1; }

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

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

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

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

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

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

/*
== malihu jquery custom scrollbar plugin ==
Plugin URI: http://manos.malihu.gr/jquery-custom-content-scroller
*/
/*
CONTENTS: 
	1. BASIC STYLE - Plugin's basic/essential CSS properties (normally, should not be edited). 
	2. VERTICAL SCROLLBAR - Positioning and dimensions of vertical scrollbar. 
	3. HORIZONTAL SCROLLBAR - Positioning and dimensions of horizontal scrollbar.
	4. VERTICAL AND HORIZONTAL SCROLLBARS - Positioning and dimensions of 2-axis scrollbars. 
	5. TRANSITIONS - CSS3 transitions for hover events, auto-expanded and auto-hidden scrollbars. 
	6. SCROLLBAR COLORS, OPACITY AND BACKGROUNDS 
		6.1 THEMES - Scrollbar colors, opacity, dimensions, backgrounds etc. via ready-to-use themes.
*/
/* 
------------------------------------------------------------------------------------------------------------------------
1. BASIC STYLE  
------------------------------------------------------------------------------------------------------------------------
*/
.mCustomScrollbar {
  touch-action: pinch-zoom;
  /* direct pointer events to js */ }

.mCustomScrollbar.mCS_no_scrollbar, .mCustomScrollbar.mCS_touch_action {
  touch-action: auto; }

.mCustomScrollBox {
  /* contains plugin's markup */
  position: relative;
  overflow: hidden;
  height: 100%;
  max-width: 100%;
  outline: none;
  direction: ltr; }

.mCSB_container {
  /* contains the original content */
  overflow: hidden;
  width: auto;
  height: auto; }

/* 
------------------------------------------------------------------------------------------------------------------------
2. VERTICAL SCROLLBAR 
y-axis
------------------------------------------------------------------------------------------------------------------------
*/
.mCSB_inside > .mCSB_container {
  margin-right: 30px; }

.mCSB_container.mCS_no_scrollbar_y.mCS_y_hidden {
  margin-right: 0; }

/* non-visible scrollbar */
.mCS-dir-rtl > .mCSB_inside > .mCSB_container {
  /* RTL direction/left-side scrollbar */
  margin-right: 0;
  margin-left: 30px; }

.mCS-dir-rtl > .mCSB_inside > .mCSB_container.mCS_no_scrollbar_y.mCS_y_hidden {
  margin-left: 0; }

/* RTL direction/left-side scrollbar */
.mCSB_scrollTools {
  /* contains scrollbar markup (draggable element, dragger rail, buttons etc.) */
  position: absolute;
  width: 16px;
  height: auto;
  left: auto;
  top: 0;
  right: 0;
  bottom: 0; }

.mCSB_outside + .mCSB_scrollTools {
  right: -26px; }

/* scrollbar position: outside */
.mCS-dir-rtl > .mCSB_inside > .mCSB_scrollTools,
.mCS-dir-rtl > .mCSB_outside + .mCSB_scrollTools {
  /* RTL direction/left-side scrollbar */
  right: auto;
  left: 0; }

.mCS-dir-rtl > .mCSB_outside + .mCSB_scrollTools {
  left: -26px; }

/* RTL direction/left-side scrollbar (scrollbar position: outside) */
.mCSB_scrollTools .mCSB_draggerContainer {
  /* contains the draggable element and dragger rail markup */
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  height: auto; }

.mCSB_scrollTools a + .mCSB_draggerContainer {
  margin: 20px 0; }

.mCSB_scrollTools .mCSB_draggerRail {
  width: 2px;
  height: 100%;
  margin: 0 auto;
  border-radius: 16px; }

.mCSB_scrollTools .mCSB_dragger {
  /* the draggable element */
  cursor: pointer;
  width: 100%;
  height: 30px;
  /* minimum dragger height */
  z-index: 1; }

.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  /* the dragger element */
  position: relative;
  width: 4px;
  height: 100%;
  margin: 0 auto;
  border-radius: 16px;
  text-align: center; }

.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar {
  width: 12px;
  /* auto-expanded scrollbar */ }

.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail {
  width: 8px;
  /* auto-expanded scrollbar */ }

.mCSB_scrollTools .mCSB_buttonUp,
.mCSB_scrollTools .mCSB_buttonDown {
  display: block;
  position: absolute;
  height: 20px;
  width: 100%;
  overflow: hidden;
  margin: 0 auto;
  cursor: pointer; }

.mCSB_scrollTools .mCSB_buttonDown {
  bottom: 0; }

/* 
------------------------------------------------------------------------------------------------------------------------
3. HORIZONTAL SCROLLBAR 
x-axis
------------------------------------------------------------------------------------------------------------------------
*/
.mCSB_horizontal.mCSB_inside > .mCSB_container {
  margin-right: 0;
  margin-bottom: 0; }

.mCSB_horizontal.mCSB_outside > .mCSB_container {
  min-height: 100%; }

.mCSB_horizontal > .mCSB_container.mCS_no_scrollbar_x.mCS_x_hidden {
  margin-bottom: 0; }

/* non-visible scrollbar */
.mCSB_scrollTools.mCSB_scrollTools_horizontal {
  width: auto;
  height: 16px;
  top: auto;
  right: 0;
  bottom: 0;
  left: 0; }

.mCustomScrollBox + .mCSB_scrollTools.mCSB_scrollTools_horizontal,
.mCustomScrollBox + .mCSB_scrollTools + .mCSB_scrollTools.mCSB_scrollTools_horizontal {
  bottom: -26px; }

/* scrollbar position: outside */
.mCSB_scrollTools.mCSB_scrollTools_horizontal a + .mCSB_draggerContainer {
  margin: 0 20px; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  width: 100%;
  height: 4px;
  margin: 6px 0; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_dragger {
  width: 30px;
  /* minimum dragger width */
  height: 100%;
  left: 0; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 4px;
  margin: 6px auto; }

.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar {
  height: 12px;
  /* auto-expanded scrollbar */
  margin: 2px auto; }

.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail {
  height: 8px;
  /* auto-expanded scrollbar */
  margin: 4px 0; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonLeft,
.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonRight {
  display: block;
  position: absolute;
  width: 20px;
  height: 100%;
  overflow: hidden;
  margin: 0 auto;
  cursor: pointer; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonLeft {
  left: 0; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonRight {
  right: 0; }

/* 
------------------------------------------------------------------------------------------------------------------------
4. VERTICAL AND HORIZONTAL SCROLLBARS 
yx-axis 
------------------------------------------------------------------------------------------------------------------------
*/
.mCSB_container_wrapper {
  position: absolute;
  height: auto;
  width: auto;
  overflow: hidden;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin-right: 30px;
  margin-bottom: 30px; }

.mCSB_container_wrapper > .mCSB_container {
  padding-right: 30px;
  padding-bottom: 30px;
  box-sizing: border-box; }

.mCSB_vertical_horizontal > .mCSB_scrollTools.mCSB_scrollTools_vertical {
  bottom: 20px; }

.mCSB_vertical_horizontal > .mCSB_scrollTools.mCSB_scrollTools_horizontal {
  right: 20px; }

/* non-visible horizontal scrollbar */
.mCSB_container_wrapper.mCS_no_scrollbar_x.mCS_x_hidden + .mCSB_scrollTools.mCSB_scrollTools_vertical {
  bottom: 0; }

/* non-visible vertical scrollbar/RTL direction/left-side scrollbar */
.mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden + .mCSB_scrollTools ~ .mCSB_scrollTools.mCSB_scrollTools_horizontal,
.mCS-dir-rtl > .mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside > .mCSB_scrollTools.mCSB_scrollTools_horizontal {
  right: 0; }

/* RTL direction/left-side scrollbar */
.mCS-dir-rtl > .mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside > .mCSB_scrollTools.mCSB_scrollTools_horizontal {
  left: 20px; }

/* non-visible scrollbar/RTL direction/left-side scrollbar */
.mCS-dir-rtl > .mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside > .mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden + .mCSB_scrollTools ~ .mCSB_scrollTools.mCSB_scrollTools_horizontal {
  left: 0; }

.mCS-dir-rtl > .mCSB_inside > .mCSB_container_wrapper {
  /* RTL direction/left-side scrollbar */
  margin-right: 0;
  margin-left: 30px; }

.mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden > .mCSB_container {
  padding-right: 0; }

.mCSB_container_wrapper.mCS_no_scrollbar_x.mCS_x_hidden > .mCSB_container {
  padding-bottom: 0; }

.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside > .mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden {
  margin-right: 0;
  /* non-visible scrollbar */
  margin-left: 0; }

/* non-visible horizontal scrollbar */
.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside > .mCSB_container_wrapper.mCS_no_scrollbar_x.mCS_x_hidden {
  margin-bottom: 0; }

/* 
------------------------------------------------------------------------------------------------------------------------
5. TRANSITIONS  
------------------------------------------------------------------------------------------------------------------------
*/
.mCSB_scrollTools,
.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCSB_scrollTools .mCSB_buttonUp,
.mCSB_scrollTools .mCSB_buttonDown,
.mCSB_scrollTools .mCSB_buttonLeft,
.mCSB_scrollTools .mCSB_buttonRight {
  transition: opacity .2s ease-in-out, background-color .2s ease-in-out; }

.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger_bar,
.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerRail,
.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger_bar,
.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerRail {
  transition: width .2s ease-out .2s, height .2s ease-out .2s,  margin-left .2s ease-out .2s, margin-right .2s ease-out .2s,  margin-top .2s ease-out .2s, margin-bottom .2s ease-out .2s, opacity .2s ease-in-out, background-color .2s ease-in-out; }

/* 
------------------------------------------------------------------------------------------------------------------------
6. SCROLLBAR COLORS, OPACITY AND BACKGROUNDS  
------------------------------------------------------------------------------------------------------------------------
*/
/* 
----------------------------------------
6.1 THEMES 
----------------------------------------
*/
/* default theme ("light") */
.mCSB_scrollTools {
  opacity: 0.75;
  filter: "alpha(opacity=75)";
  -ms-filter: "alpha(opacity=75)"; }

.mCS-autoHide > .mCustomScrollBox > .mCSB_scrollTools,
.mCS-autoHide > .mCustomScrollBox ~ .mCSB_scrollTools {
  opacity: 0;
  filter: "alpha(opacity=0)";
  -ms-filter: "alpha(opacity=0)"; }

.mCustomScrollbar > .mCustomScrollBox > .mCSB_scrollTools.mCSB_scrollTools_onDrag,
.mCustomScrollbar > .mCustomScrollBox ~ .mCSB_scrollTools.mCSB_scrollTools_onDrag,
.mCustomScrollBox:hover > .mCSB_scrollTools,
.mCustomScrollBox:hover ~ .mCSB_scrollTools,
.mCS-autoHide:hover > .mCustomScrollBox > .mCSB_scrollTools,
.mCS-autoHide:hover > .mCustomScrollBox ~ .mCSB_scrollTools {
  opacity: 1;
  filter: "alpha(opacity=100)";
  -ms-filter: "alpha(opacity=100)"; }

.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.4);
  filter: "alpha(opacity=40)";
  -ms-filter: "alpha(opacity=40)"; }

.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.75);
  filter: "alpha(opacity=75)";
  -ms-filter: "alpha(opacity=75)"; }

.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.85);
  filter: "alpha(opacity=85)";
  -ms-filter: "alpha(opacity=85)"; }

.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.9);
  filter: "alpha(opacity=90)";
  -ms-filter: "alpha(opacity=90)"; }

.mCSB_scrollTools .mCSB_buttonUp,
.mCSB_scrollTools .mCSB_buttonDown,
.mCSB_scrollTools .mCSB_buttonLeft,
.mCSB_scrollTools .mCSB_buttonRight {
  background-image: url(mCSB_buttons.png);
  /* css sprites */
  background-repeat: no-repeat;
  opacity: 0.4;
  filter: "alpha(opacity=40)";
  -ms-filter: "alpha(opacity=40)"; }

.mCSB_scrollTools .mCSB_buttonUp {
  background-position: 0 0;
  /* 
    sprites locations 
    light: 0 0, -16px 0, -32px 0, -48px 0, 0 -72px, -16px -72px, -32px -72px
    dark: -80px 0, -96px 0, -112px 0, -128px 0, -80px -72px, -96px -72px, -112px -72px
    */ }

.mCSB_scrollTools .mCSB_buttonDown {
  background-position: 0 -20px;
  /* 
    sprites locations
    light: 0 -20px, -16px -20px, -32px -20px, -48px -20px, 0 -92px, -16px -92px, -32px -92px
    dark: -80px -20px, -96px -20px, -112px -20px, -128px -20px, -80px -92px, -96px -92px, -112 -92px
    */ }

.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: 0 -40px;
  /* 
    sprites locations 
    light: 0 -40px, -20px -40px, -40px -40px, -60px -40px, 0 -112px, -20px -112px, -40px -112px
    dark: -80px -40px, -100px -40px, -120px -40px, -140px -40px, -80px -112px, -100px -112px, -120px -112px
    */ }

.mCSB_scrollTools .mCSB_buttonRight {
  background-position: 0 -56px;
  /* 
    sprites locations 
    light: 0 -56px, -20px -56px, -40px -56px, -60px -56px, 0 -128px, -20px -128px, -40px -128px
    dark: -80px -56px, -100px -56px, -120px -56px, -140px -56px, -80px -128px, -100px -128px, -120px -128px
    */ }

.mCSB_scrollTools .mCSB_buttonUp:hover,
.mCSB_scrollTools .mCSB_buttonDown:hover,
.mCSB_scrollTools .mCSB_buttonLeft:hover,
.mCSB_scrollTools .mCSB_buttonRight:hover {
  opacity: 0.75;
  filter: "alpha(opacity=75)";
  -ms-filter: "alpha(opacity=75)"; }

.mCSB_scrollTools .mCSB_buttonUp:active,
.mCSB_scrollTools .mCSB_buttonDown:active,
.mCSB_scrollTools .mCSB_buttonLeft:active,
.mCSB_scrollTools .mCSB_buttonRight:active {
  opacity: 0.9;
  filter: "alpha(opacity=90)";
  -ms-filter: "alpha(opacity=90)"; }

/* theme: "dark" */
.mCS-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.15); }

.mCS-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75); }

.mCS-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-dark.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -80px 0; }

.mCS-dark.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -80px -20px; }

.mCS-dark.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -80px -40px; }

.mCS-dark.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -80px -56px; }

/* ---------------------------------------- */
/* theme: "light-2", "dark-2" */
.mCS-light-2.mCSB_scrollTools .mCSB_draggerRail,
.mCS-dark-2.mCSB_scrollTools .mCSB_draggerRail {
  width: 4px;
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 1px; }

.mCS-light-2.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-2.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 4px;
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.75);
  border-radius: 1px; }

.mCS-light-2.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-dark-2.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-light-2.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-2.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 4px;
  margin: 6px auto; }

.mCS-light-2.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.85); }

.mCS-light-2.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-light-2.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.9); }

.mCS-light-2.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -32px 0; }

.mCS-light-2.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -32px -20px; }

.mCS-light-2.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -40px -40px; }

.mCS-light-2.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -40px -56px; }

/* theme: "dark-2" */
.mCS-dark-2.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 1px; }

.mCS-dark-2.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75);
  border-radius: 1px; }

.mCS-dark-2.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-dark-2.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-dark-2.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-dark-2.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -112px 0; }

.mCS-dark-2.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -112px -20px; }

.mCS-dark-2.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -120px -40px; }

.mCS-dark-2.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -120px -56px; }

/* ---------------------------------------- */
/* theme: "light-thick", "dark-thick" */
.mCS-light-thick.mCSB_scrollTools .mCSB_draggerRail,
.mCS-dark-thick.mCSB_scrollTools .mCSB_draggerRail {
  width: 4px;
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 2px; }

.mCS-light-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 6px;
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.75);
  border-radius: 2px; }

.mCS-light-thick.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-dark-thick.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  width: 100%;
  height: 4px;
  margin: 6px 0; }

.mCS-light-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 6px;
  margin: 5px auto; }

.mCS-light-thick.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.85); }

.mCS-light-thick.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-light-thick.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.9); }

.mCS-light-thick.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -16px 0; }

.mCS-light-thick.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -16px -20px; }

.mCS-light-thick.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -20px -40px; }

.mCS-light-thick.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -20px -56px; }

/* theme: "dark-thick" */
.mCS-dark-thick.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 2px; }

.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75);
  border-radius: 2px; }

.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-dark-thick.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -96px 0; }

.mCS-dark-thick.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -96px -20px; }

.mCS-dark-thick.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -100px -40px; }

.mCS-dark-thick.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -100px -56px; }

/* ---------------------------------------- */
/* theme: "light-thin", "dark-thin" */
.mCS-light-thin.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.1); }

.mCS-light-thin.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 4px; }

.mCS-light-thin.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-dark-thin.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  width: 100%; }

.mCS-light-thin.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-thin.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 4px;
  margin: 6px auto; }

/* theme "dark-thin" */
.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #C3C3C3; }

.mCS-dark-thin.mCSB_scrollTools .mCSB_draggerRail {
  /* background-color: #000; */
  background-color: #F7FAFA; }

.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-dark-thin.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -80px 0; }

.mCS-dark-thin.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -80px -20px; }

.mCS-dark-thin.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -80px -40px; }

.mCS-dark-thin.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -80px -56px; }

/* ---------------------------------------- */
/* theme "rounded", "rounded-dark", "rounded-dots", "rounded-dots-dark" */
.mCS-rounded.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.15); }

.mCS-rounded.mCSB_scrollTools .mCSB_dragger,
.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger,
.mCS-rounded-dots.mCSB_scrollTools .mCSB_dragger,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger {
  height: 14px; }

.mCS-rounded.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dots.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 14px;
  margin: 0 1px; }

.mCS-rounded.mCSB_scrollTools_horizontal .mCSB_dragger,
.mCS-rounded-dark.mCSB_scrollTools_horizontal .mCSB_dragger,
.mCS-rounded-dots.mCSB_scrollTools_horizontal .mCSB_dragger,
.mCS-rounded-dots-dark.mCSB_scrollTools_horizontal .mCSB_dragger {
  width: 14px; }

.mCS-rounded.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dots.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dots-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  height: 14px;
  margin: 1px 0; }

.mCS-rounded.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCS-rounded.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dark.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCS-rounded-dark.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar {
  width: 16px;
  /* auto-expanded scrollbar */
  height: 16px;
  margin: -1px 0; }

.mCS-rounded.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-rounded.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail,
.mCS-rounded-dark.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-rounded-dark.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail {
  width: 4px;
  /* auto-expanded scrollbar */ }

.mCS-rounded.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCS-rounded.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dark.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCS-rounded-dark.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar {
  height: 16px;
  /* auto-expanded scrollbar */
  width: 16px;
  margin: 0 -1px; }

.mCS-rounded.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-rounded.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail,
.mCS-rounded-dark.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-rounded-dark.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail {
  height: 4px;
  /* auto-expanded scrollbar */
  margin: 6px 0; }

.mCS-rounded.mCSB_scrollTools .mCSB_buttonUp {
  background-position: 0 -72px; }

.mCS-rounded.mCSB_scrollTools .mCSB_buttonDown {
  background-position: 0 -92px; }

.mCS-rounded.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: 0 -112px; }

.mCS-rounded.mCSB_scrollTools .mCSB_buttonRight {
  background-position: 0 -128px; }

/* theme "rounded-dark", "rounded-dots-dark" */
.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75); }

.mCS-rounded-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.15); }

.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-rounded-dark.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -80px -72px; }

.mCS-rounded-dark.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -80px -92px; }

.mCS-rounded-dark.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -80px -112px; }

.mCS-rounded-dark.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -80px -128px; }

/* theme "rounded-dots", "rounded-dots-dark" */
.mCS-rounded-dots.mCSB_scrollTools_vertical .mCSB_draggerRail,
.mCS-rounded-dots-dark.mCSB_scrollTools_vertical .mCSB_draggerRail {
  width: 4px; }

.mCS-rounded-dots.mCSB_scrollTools .mCSB_draggerRail,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_draggerRail,
.mCS-rounded-dots.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-rounded-dots-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  background-color: transparent;
  background-position: center; }

.mCS-rounded-dots.mCSB_scrollTools .mCSB_draggerRail,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAANElEQVQYV2NkIAAYiVbw//9/Y6DiM1ANJoyMjGdBbLgJQAX/kU0DKgDLkaQAvxW4HEvQFwCRcxIJK1XznAAAAABJRU5ErkJggg==");
  background-repeat: repeat-y;
  opacity: 0.3;
  filter: "alpha(opacity=30)";
  -ms-filter: "alpha(opacity=30)"; }

.mCS-rounded-dots.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-rounded-dots-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  height: 4px;
  margin: 6px 0;
  background-repeat: repeat-x; }

.mCS-rounded-dots.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -16px -72px; }

.mCS-rounded-dots.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -16px -92px; }

.mCS-rounded-dots.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -20px -112px; }

.mCS-rounded-dots.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -20px -128px; }

/* theme "rounded-dots-dark" */
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAALElEQVQYV2NkIAAYSVFgDFR8BqrBBEifBbGRTfiPZhpYjiQFBK3A6l6CvgAAE9kGCd1mvgEAAAAASUVORK5CYII="); }

.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -96px -72px; }

.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -96px -92px; }

.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -100px -112px; }

.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -100px -128px; }

/* ---------------------------------------- */
/* theme "3d", "3d-dark", "3d-thick", "3d-thick-dark" */
.mCS-3d.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-repeat: repeat-y;
  background-image: linear-gradient(to right, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 100%); }

.mCS-3d.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  background-repeat: repeat-x;
  background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 100%); }

/* theme "3d", "3d-dark" */
.mCS-3d.mCSB_scrollTools_vertical .mCSB_dragger,
.mCS-3d-dark.mCSB_scrollTools_vertical .mCSB_dragger {
  height: 70px; }

.mCS-3d.mCSB_scrollTools_horizontal .mCSB_dragger,
.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_dragger {
  width: 70px; }

.mCS-3d.mCSB_scrollTools,
.mCS-3d-dark.mCSB_scrollTools {
  opacity: 1;
  filter: "alpha(opacity=30)";
  -ms-filter: "alpha(opacity=30)"; }

.mCS-3d.mCSB_scrollTools .mCSB_draggerRail,
.mCS-3d.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools .mCSB_draggerRail,
.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  border-radius: 16px; }

.mCS-3d.mCSB_scrollTools .mCSB_draggerRail,
.mCS-3d-dark.mCSB_scrollTools .mCSB_draggerRail {
  width: 8px;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.2);
  box-shadow: inset 1px 0 1px rgba(0, 0, 0, 0.5), inset -1px 0 1px rgba(255, 255, 255, 0.2); }

.mCS-3d.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
.mCS-3d.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-3d.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #555; }

.mCS-3d.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 8px; }

.mCS-3d.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  width: 100%;
  height: 8px;
  margin: 4px 0;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.5), inset 0 -1px 1px rgba(255, 255, 255, 0.2); }

.mCS-3d.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 8px;
  margin: 4px auto; }

.mCS-3d.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -32px -72px; }

.mCS-3d.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -32px -92px; }

.mCS-3d.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -40px -112px; }

.mCS-3d.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -40px -128px; }

/* theme "3d-dark" */
.mCS-3d-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.1);
  box-shadow: inset 1px 0 1px rgba(0, 0, 0, 0.1); }

.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1); }

.mCS-3d-dark.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -112px -72px; }

.mCS-3d-dark.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -112px -92px; }

.mCS-3d-dark.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -120px -112px; }

.mCS-3d-dark.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -120px -128px; }

/* ---------------------------------------- */
/* theme: "3d-thick", "3d-thick-dark" */
.mCS-3d-thick.mCSB_scrollTools,
.mCS-3d-thick-dark.mCSB_scrollTools {
  opacity: 1;
  filter: "alpha(opacity=30)";
  -ms-filter: "alpha(opacity=30)"; }

.mCS-3d-thick.mCSB_scrollTools,
.mCS-3d-thick-dark.mCSB_scrollTools,
.mCS-3d-thick.mCSB_scrollTools .mCSB_draggerContainer,
.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_draggerContainer {
  border-radius: 7px; }

.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  border-radius: 5px; }

.mCSB_inside + .mCS-3d-thick.mCSB_scrollTools_vertical,
.mCSB_inside + .mCS-3d-thick-dark.mCSB_scrollTools_vertical {
  right: 1px; }

.mCS-3d-thick.mCSB_scrollTools_vertical,
.mCS-3d-thick-dark.mCSB_scrollTools_vertical {
  box-shadow: inset 1px 0 1px rgba(0, 0, 0, 0.1), inset 0 0 14px rgba(0, 0, 0, 0.5); }

.mCS-3d-thick.mCSB_scrollTools_horizontal,
.mCS-3d-thick-dark.mCSB_scrollTools_horizontal {
  bottom: 1px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1), inset 0 0 14px rgba(0, 0, 0, 0.5); }

.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.4);
  width: 12px;
  margin: 2px;
  position: absolute;
  height: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0; }

.mCS-3d-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.4); }

.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #555; }

.mCS-3d-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  height: 12px;
  width: auto; }

.mCS-3d-thick.mCSB_scrollTools .mCSB_draggerContainer {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.05);
  box-shadow: inset 1px 1px 16px rgba(0, 0, 0, 0.1); }

.mCS-3d-thick.mCSB_scrollTools .mCSB_draggerRail {
  background-color: transparent; }

.mCS-3d-thick.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -32px -72px; }

.mCS-3d-thick.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -32px -92px; }

.mCS-3d-thick.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -40px -112px; }

.mCS-3d-thick.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -40px -128px; }

/* theme: "3d-thick-dark" */
.mCS-3d-thick-dark.mCSB_scrollTools {
  box-shadow: inset 0 0 14px rgba(0, 0, 0, 0.2); }

.mCS-3d-thick-dark.mCSB_scrollTools_horizontal {
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1), inset 0 0 14px rgba(0, 0, 0, 0.2); }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.4), inset -1px 0 0 rgba(0, 0, 0, 0.2); }

.mCS-3d-thick-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.4), inset 0 -1px 0 rgba(0, 0, 0, 0.2); }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #777; }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_draggerContainer {
  background-color: #fff;
  background-color: rgba(0, 0, 0, 0.05);
  box-shadow: inset 1px 1px 16px rgba(0, 0, 0, 0.1); }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: transparent; }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -112px -72px; }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -112px -92px; }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -120px -112px; }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -120px -128px; }

/* ---------------------------------------- */
/* theme: "minimal", "minimal-dark" */
.mCSB_outside + .mCS-minimal.mCSB_scrollTools_vertical,
.mCSB_outside + .mCS-minimal-dark.mCSB_scrollTools_vertical {
  right: 0;
  margin: 12px 0; }

.mCustomScrollBox.mCS-minimal + .mCSB_scrollTools.mCSB_scrollTools_horizontal,
.mCustomScrollBox.mCS-minimal + .mCSB_scrollTools + .mCSB_scrollTools.mCSB_scrollTools_horizontal,
.mCustomScrollBox.mCS-minimal-dark + .mCSB_scrollTools.mCSB_scrollTools_horizontal,
.mCustomScrollBox.mCS-minimal-dark + .mCSB_scrollTools + .mCSB_scrollTools.mCSB_scrollTools_horizontal {
  bottom: 0;
  margin: 0 12px; }

/* RTL direction/left-side scrollbar */
.mCS-dir-rtl > .mCSB_outside + .mCS-minimal.mCSB_scrollTools_vertical,
.mCS-dir-rtl > .mCSB_outside + .mCS-minimal-dark.mCSB_scrollTools_vertical {
  left: 0;
  right: auto; }

.mCS-minimal.mCSB_scrollTools .mCSB_draggerRail,
.mCS-minimal-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: transparent; }

.mCS-minimal.mCSB_scrollTools_vertical .mCSB_dragger,
.mCS-minimal-dark.mCSB_scrollTools_vertical .mCSB_dragger {
  height: 50px; }

.mCS-minimal.mCSB_scrollTools_horizontal .mCSB_dragger,
.mCS-minimal-dark.mCSB_scrollTools_horizontal .mCSB_dragger {
  width: 50px; }

.mCS-minimal.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.2);
  filter: "alpha(opacity=20)";
  -ms-filter: "alpha(opacity=20)"; }

.mCS-minimal.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-minimal.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.5);
  filter: "alpha(opacity=50)";
  -ms-filter: "alpha(opacity=50)"; }

/* theme: "minimal-dark" */
.mCS-minimal-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.2);
  filter: "alpha(opacity=20)";
  -ms-filter: "alpha(opacity=20)"; }

.mCS-minimal-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-minimal-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.5);
  filter: "alpha(opacity=50)";
  -ms-filter: "alpha(opacity=50)"; }

/* ---------------------------------------- */
/* theme "light-3", "dark-3" */
.mCS-light-3.mCSB_scrollTools .mCSB_draggerRail,
.mCS-dark-3.mCSB_scrollTools .mCSB_draggerRail {
  width: 6px;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.2); }

.mCS-light-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 6px; }

.mCS-light-3.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-3.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-light-3.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-dark-3.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  width: 100%;
  height: 6px;
  margin: 5px 0; }

.mCS-light-3.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-light-3.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail,
.mCS-dark-3.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-dark-3.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail {
  width: 12px; }

.mCS-light-3.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-light-3.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail,
.mCS-dark-3.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-dark-3.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail {
  height: 12px;
  margin: 2px 0; }

.mCS-light-3.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -32px -72px; }

.mCS-light-3.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -32px -92px; }

.mCS-light-3.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -40px -112px; }

.mCS-light-3.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -40px -128px; }

/* theme "dark-3" */
.mCS-dark-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75); }

.mCS-dark-3.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-dark-3.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-dark-3.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-dark-3.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.1); }

.mCS-dark-3.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -112px -72px; }

.mCS-dark-3.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -112px -92px; }

.mCS-dark-3.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -120px -112px; }

.mCS-dark-3.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -120px -128px; }

/* ---------------------------------------- */
/* theme "inset", "inset-dark", "inset-2", "inset-2-dark", "inset-3", "inset-3-dark" */
.mCS-inset.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-dark.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-2.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-3.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_draggerRail {
  width: 12px;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.2); }

.mCS-inset.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-2.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 6px;
  margin: 3px 5px;
  position: absolute;
  height: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0; }

.mCS-inset.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-2.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-2-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-3.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-3-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  height: 6px;
  margin: 5px 3px;
  position: absolute;
  width: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0; }

.mCS-inset.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-inset-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-inset-2.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-inset-2-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-inset-3.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-inset-3-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  width: 100%;
  height: 12px;
  margin: 2px 0; }

.mCS-inset.mCSB_scrollTools .mCSB_buttonUp,
.mCS-inset-2.mCSB_scrollTools .mCSB_buttonUp,
.mCS-inset-3.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -32px -72px; }

.mCS-inset.mCSB_scrollTools .mCSB_buttonDown,
.mCS-inset-2.mCSB_scrollTools .mCSB_buttonDown,
.mCS-inset-3.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -32px -92px; }

.mCS-inset.mCSB_scrollTools .mCSB_buttonLeft,
.mCS-inset-2.mCSB_scrollTools .mCSB_buttonLeft,
.mCS-inset-3.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -40px -112px; }

.mCS-inset.mCSB_scrollTools .mCSB_buttonRight,
.mCS-inset-2.mCSB_scrollTools .mCSB_buttonRight,
.mCS-inset-3.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -40px -128px; }

/* theme "inset-dark", "inset-2-dark", "inset-3-dark" */
.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75); }

.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-inset-dark.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.1); }

.mCS-inset-dark.mCSB_scrollTools .mCSB_buttonUp,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_buttonUp,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -112px -72px; }

.mCS-inset-dark.mCSB_scrollTools .mCSB_buttonDown,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_buttonDown,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -112px -92px; }

.mCS-inset-dark.mCSB_scrollTools .mCSB_buttonLeft,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_buttonLeft,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -120px -112px; }

.mCS-inset-dark.mCSB_scrollTools .mCSB_buttonRight,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_buttonRight,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -120px -128px; }

/* theme "inset-2", "inset-2-dark" */
.mCS-inset-2.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: transparent;
  border-width: 1px;
  border-style: solid;
  border-color: #fff;
  border-color: rgba(255, 255, 255, 0.2);
  box-sizing: border-box; }

.mCS-inset-2-dark.mCSB_scrollTools .mCSB_draggerRail {
  border-color: #000;
  border-color: rgba(0, 0, 0, 0.2); }

/* theme "inset-3", "inset-3-dark" */
.mCS-inset-3.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.6); }

.mCS-inset-3-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.6); }

.mCS-inset-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75); }

.mCS-inset-3.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-inset-3.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-inset-3.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.75); }

.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.85); }

.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.9); }

/* ---------------------------------------- */
/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
.owl-carousel, .owl-carousel .owl-item {
  -webkit-tap-highlight-color: transparent;
  position: relative; }

.owl-carousel {
  display: none;
  width: 100%;
  z-index: 1; }

.owl-carousel .owl-stage {
  position: relative;
  touch-action: manipulation;
  -moz-backface-visibility: hidden; }

.owl-carousel .owl-stage:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0; }

.owl-carousel .owl-stage-outer {
  position: relative;
  overflow: hidden;
  -webkit-transform: translate3d(0, 0, 0); }

.owl-carousel .owl-item, .owl-carousel .owl-wrapper {
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0); }

.owl-carousel .owl-item {
  min-height: 1px;
  float: left;
  -webkit-backface-visibility: hidden;
  -webkit-touch-callout: none; }

.owl-carousel .owl-item img {
  display: block;
  width: 100%; }

.owl-carousel .owl-dots.disabled, .owl-carousel .owl-nav.disabled {
  display: none; }

.no-js .owl-carousel, .owl-carousel.owl-loaded {
  display: block; }

.owl-carousel .owl-dot, .owl-carousel .owl-nav .owl-next, .owl-carousel .owl-nav .owl-prev {
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.owl-carousel .owl-nav button.owl-next, .owl-carousel .owl-nav button.owl-prev, .owl-carousel button.owl-dot {
  background: 0 0;
  color: inherit;
  border: none;
  padding: 0 !important;
  font: inherit; }

.owl-carousel.owl-loading {
  opacity: 0;
  display: block; }

.owl-carousel.owl-hidden {
  opacity: 0; }

.owl-carousel.owl-refresh .owl-item {
  visibility: hidden; }

.owl-carousel.owl-drag .owl-item {
  touch-action: pan-y;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.owl-carousel.owl-grab {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab; }

.owl-carousel.owl-rtl {
  direction: rtl; }

.owl-carousel.owl-rtl .owl-item {
  float: right; }

.owl-carousel .animated {
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both; }

.owl-carousel .owl-animated-in {
  z-index: 0; }

.owl-carousel .owl-animated-out {
  z-index: 1; }

.owl-carousel .fadeOut {
  -webkit-animation-name: fadeOut;
          animation-name: fadeOut; }

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

.owl-height {
  transition: height .5s ease-in-out; }

.owl-carousel .owl-item .owl-lazy {
  opacity: 0;
  transition: opacity .4s ease; }

.owl-carousel .owl-item .owl-lazy:not([src]), .owl-carousel .owl-item .owl-lazy[src^=""] {
  max-height: 0; }

.owl-carousel .owl-item img.owl-lazy {
  transform-style: preserve-3d; }

.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000; }

.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url(owl.video.play.png) no-repeat;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  transition: transform .1s ease; }

.owl-carousel .owl-video-play-icon:hover {
  transform: scale(1.3, 1.3); }

.owl-carousel .owl-video-playing .owl-video-play-icon, .owl-carousel .owl-video-playing .owl-video-tn {
  display: none; }

.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: opacity .4s ease; }

.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%; }

/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
.owl-theme .owl-dots, .owl-theme .owl-nav {
  text-align: center;
  -webkit-tap-highlight-color: transparent; }

.owl-theme .owl-nav {
  margin-top: 10px; }

.owl-theme .owl-nav [class*=owl-] {
  color: #FFF;
  font-size: 14px;
  margin: 5px;
  padding: 4px 7px;
  background: #D6D6D6;
  display: inline-block;
  cursor: pointer;
  border-radius: 3px; }

.owl-theme .owl-nav [class*=owl-]:hover {
  background: #869791;
  color: #FFF;
  text-decoration: none; }

.owl-theme .owl-nav .disabled {
  opacity: .5;
  cursor: default; }

.owl-theme .owl-nav.disabled + .owl-dots {
  margin-top: 10px; }

.owl-theme .owl-dots .owl-dot {
  display: inline-block;
  zoom: 1; }

.owl-theme .owl-dots .owl-dot span {
  width: 10px;
  height: 10px;
  margin: 5px 7px;
  background: #D6D6D6;
  display: block;
  -webkit-backface-visibility: visible;
  transition: opacity .2s ease;
  border-radius: 30px; }

.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
  background: #869791; }

/*
 * SmarTicker Version 1.5
 * http://powerup.ir/projects/smarticker
 * Copyright (c) 2014 Meghdad Hadidi
 */
.smarticker {
  width: 100%;
  background: transparent;
  margin: 0 auto;
  direction: ltr;
  position: relative; }

.box {
  min-height: 30px;
  background: #fff;
  overflow: auto; }

.border {
  border: 1px solid #ccc; }

.rounded {
  border-radius: 20px; }

.shadow {
  box-shadow: 0px 0px 5px #999; }

.size1 {
  height: 30px;
  overflow: hidden; }

.smarticker .sec1, .smarticker .sec1-2, .smarticker .sec2, .smarticker .sec3, .smarticker .sec4, .smarticker .sec5, .smarticker .sec6, .smarticker .sec7 {
  float: left; }

.smarticker .sec1 {
  min-width: 10%; }

.smarticker .sec2 {
  min-width: 20%; }

.smarticker .sec3 {
  min-width: 33.333%; }

.smarticker .sec4 {
  min-width: 25%; }

.smarticker .sec5 {
  min-width: 50%; }

.smarticker .sec6 {
  min-width: 60%; }

.smarticker .sec7 {
  max-width: 100%; }

.smarticker .newsholder, .s-rtl.smarticker .newsholder {
  float: none;
  width: auto; }

.smarticker ul {
  padding: 0;
  margin: 0;
  list-style: none; }

.smarticker .smarticker-cats, .smarticker-cats .catlist, .smarticker .smarticker-category, .smarticker .smarticker-news {
  height: 100%;
  overflow: hidden; }

.smarticker .smarticker-cats, .smarticker .smarticker-category {
  text-align: left; }

.smarticker li {
  height: 30px;
  line-height: 28px; }

.smarticker a {
  text-decoration: none; }

.smarticker .smarticker-news {
  text-align: left;
  position: relative; }

.smarticker .smarticker-news ul {
  margin-left: 0;
  display: none; }

.smarticker .smarticker-news ul li {
  position: absolute;
  display: none;
  height: 100%;
  top: 0px;
  left: auto;
  right: auto;
  white-space: nowrap; }

.smarticker .smarticker-news ul li a {
  white-space: nowrap; }

.smarticker-category a {
  font-family: "STIX Two Text";
  font-weight: bold;
  font-size: 12px;
  text-transform: uppercase;
  padding: 0; }

.cover {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 2;
  float: right; }

.ltr .flasher {
  width: 10px;
  height: 100%;
  line-height: 28px;
  margin-left: 15px;
  float: left; }

.rtl .flasher {
  width: 10px;
  height: 100%;
  line-height: 28px;
  margin-right: 5px;
  margin-left: 0;
  float: right; }

.smart-controller {
  position: absolute;
  right: 0px;
  top: 0px;
  height: 100%;
  z-index: 3;
  display: none; }

.s-rtl .smart-controller {
  left: 0px;
  right: auto; }

.smarticker-news a {
  color: #666;
  font-size: 13px; }

.smarticker-cats {
  position: relative;
  background: #999; }

.smarticker-cats a {
  color: #2c8a82;
  text-decoration: none;
  text-transform: capitalize;
  font-size: 12px;
  padding: 0 10px;
  font-family: "STIX Two Text";
  font-weight: bold; }

.smarticker-category a {
  color: #999;
  text-decoration: none;
  font-weight: bold; }

/* ---------- Theme 1 ----------- */
.theme1 {
  background: #fff; }

.theme1 .smarticker-cats .left {
  position: absolute;
  left: 0px;
  width: 20%;
  height: 100%; }

.theme1 .smarticker-cats .right {
  position: absolute;
  right: 0px;
  top: 0px;
  z-index: 1;
  width: 20%;
  height: 100%; }

.no-category .smarticker-cats .left {
  display: none; }

.theme1 .flasher {
  color: #666; }

.smarticker-cats li {
  background-color: transparent; }

.theme1 .smarticker-cats ul a img {
  margin: 0 5px 0 20px; }

/* ------------- Theme 2 ------------ */
.theme2 {
  background: transparent; }

.theme2 .smarticker-news a {
  color: #1a1a1a;
  font-size: 12px; }

.theme2 .smarticker-cats {
  background: transparent;
  padding-left: 16px; }
  .theme2 .smarticker-cats:before {
    display: block;
    content: '|';
    font-size: 1rem;
    color: #2c8a82;
    position: absolute;
    left: 8px;
    top: 0;
    bottom: 0;
    height: 20px;
    line-height: 20px;
    margin: auto auto;
    font-family: "STIX Two Text";
    font-weight: bold; }

.theme2 .smarticker-cats .left {
  position: absolute;
  left: 0px;
  width: 20%;
  height: 100%; }

.theme2 .smarticker-cats .right {
  position: absolute;
  right: 0px;
  top: 0px;
  z-index: 1;
  width: 20%;
  height: 100%;
  display: none; }

.no-category .smarticker-cats .left {
  display: none; }

.theme2 .smarticker-cats ul a {
  color: #2c8a82;
  text-decoration: none; }
  .theme2 .smarticker-cats ul a:first-child {
    display: none; }

.theme2 .smarticker-category a {
  color: #666666;
  text-decoration: none; }

.theme2 .flasher {
  color: #6c6c6c; }

.theme2 .tickertitle {
  background-color: #4575d4; }

.theme2 .smarticker-cats ul a img {
  margin: 0 5px 0 20px; }

/* ------------- Theme 3 ------------ */
.theme3 {
  background: #333; }

.theme3 .smarticker-news a {
  color: #fff; }

.theme3 .smarticker-cats {
  background: #fff; }

.theme3 .smarticker-cats .left, .theme3 .smarticker-cats .right {
  display: none; }

.theme3 .smarticker-cats a {
  color: #fff;
  text-decoration: none; }

.theme3 .smarticker-category a {
  color: #ccc;
  text-decoration: none; }

.theme3 .flasher {
  color: #fff; }

.theme3 .tickertitle {
  background-color: #cd0074; }

/* ------------- Theme 4 ------------ */
.theme4 {
  background: #fff; }

.theme4 .smarticker-news a {
  color: #666; }

.theme4 .smarticker-cats {
  background: #999; }

.theme4 .smarticker-cats .left, .theme4 .smarticker-cats .right {
  display: none; }

.theme4 .smarticker-cats a {
  color: #fff;
  text-decoration: none; }

.theme4 .smarticker-category a {
  color: #999;
  text-decoration: none; }

.theme4 .flasher {
  color: #666; }

.theme4 .tickertitle {
  background-color: #00b64f; }

/* ----------- Text Controller ------------ */
.c1 .smart-controller span {
  text-align: center;
  background: #fff;
  color: #ccc;
  font-size: 11px;
  display: block;
  padding: 0px 9px;
  height: 100%;
  line-height: 30px;
  float: left;
  border-left: 1px solid #eee;
  cursor: pointer;
  transition: all 0.2s ease-in-out 0s; }

.c1 .smart-controller span:hover {
  color: #bbb;
  background: #efefef;
  transition: all 0.2s ease-in-out 0s; }

.c1 .smart-controller span:active {
  color: #999;
  background: #dfdfdf;
  transition: all 0.1s ease-in-out 0s; }

/* ----------- C2 Controller = Icons ------------ */
.c2 .smart-controller span {
  background-color: transparent;
  font-family: "icomoon";
  font-size: 10px;
  line-height: 1;
  color: #999999;
  text-indent: -100000px;
  display: block;
  padding: 10px;
  margin-left: 5px;
  float: left;
  border-left: 0;
  cursor: pointer;
  transition: all 0.2s ease-in-out 0s; }

.s-rtl.c2 .smart-controller span {
  border-left: 0;
  border-right: 1px solid #eee;
  direction: ltr; }

.theme3.c2 .smart-controller span, .theme2.c2 .smart-controller span {
  border-left: 0;
  height: 100%;
  background-color: transparent; }
  .theme3.c2 .smart-controller span:before, .theme2.c2 .smart-controller span:before {
    position: relative;
    right: 4px; }

.theme1.c2 .smart-controller span, .theme4.c2 .smart-controller span {
  height: 100%; }

.c2 .smart-controller span:hover {
  color: #bbb;
  background-color: transparent;
  transition: all 0.2s ease-in-out 0s; }

.c2 .smart-controller span:active {
  color: #999;
  background-color: transparent;
  transition: all 0.1s ease-in-out 0s; }

.c2 .next-news, .c2 .next-news:active, .c2 .next-news:hover {
  /*background-position: right center;
    background-image: url('../img/smarticker/controller.png');
    background-repeat: no-repeat;*/ }

.c2 .pause-news, .c2 .pause-news:active, .c2 .pause-news:hover {
  /*background-position: left center;
    background-image: url('../img/smarticker/controller1.png');
    background-repeat: no-repeat;*/ }

.c2 .play-news, .c2 .play-news:active, .c2 .play-news:hover {
  /*background-position: right center;
    background-image: url('../img/smarticker/controller1.png');
    background-repeat: no-repeat;*/ }

.c2 .pause-news:before {
  content: '||';
  text-indent: 0;
  float: left; }

.c2 .play-news:before {
  content: '\e91a';
  text-indent: 0;
  float: left; }

.c2 .prev-news:before {
  content: '\e917';
  text-indent: 0;
  float: left; }

.c2 .next-news:before {
  content: '\e916';
  text-indent: 0;
  float: left; }

.progress-bar {
  width: 100%;
  height: 2px;
  background-color: #eee;
  position: absolute;
  bottom: 0px;
  left: 0px;
  z-index: 3; }

.no-subcategory .smarticker-category {
  border-right: 1px solid #ccc;
  background: #eee; }

.tickertitle {
  height: 100%;
  line-height: 30px;
  text-align: center;
  font-weight: bold;
  background-color: #e20048;
  color: #fff;
  padding: 0 10px; }

.theme2.c2 .smart-controller span:hover, .theme3.c2 .smart-controller span:hover {
  background-color: #555; }

.theme2.c2 .smart-controller span:active, .theme3.c2 .smart-controller span:active {
  background-color: #777; }

.smarticker .item-date {
  font-size: 10px;
  margin: 0 5px;
  color: #999; }

/* ----------------------------------*/
/*-----------  RTL Support ----------*/
/*-----------------------------------*/
.s-rtl {
  direction: rtl; }

.s-rtl .sec1, .s-rtl .sec1-2, .s-rtl .sec2, .s-rtl .sec3, .s-rtl .sec4, .s-rtl .sec5, .s-rtl .sec6, .s-rtl .sec7 {
  float: left; }

.s-rtl .smarticker-news ul {
  margin-right: 0;
  margin-left: 15px; }

.s-rtl .smarticker-cats a {
  font-size: 14px;
  font-weight: normal; }

.s-rtl .smarticker-category a {
  font-weight: bolder;
  font-size: 16px;
  padding: 0 5px;
  color: #253C3A;
  font-family: "STIX Two Text"; }

.s-rtl .smarticker-news a {
  font-size: 15px;
  font-family: "Open-Sans"; }

/* ----------------------------------*/
/*--------  Responsive Support ------*/
/*-----------------------------------*/
@media screen and (max-width: 850px) {
  .right, .left {
    display: none; } }

/* ------ navigation, panel and sticky header ------ START ------ */
header .socials-area {
  display: inline-block;
  z-index: 1;
  margin: 0.5rem 0 0; }

header #sticky-header {
  display: inline-block;
  z-index: 1;
  margin: 0.5rem 0 1.5rem; }

.nav-container > ul > li {
  padding: 0 0.625rem;
  position: relative; }
  @media screen and (min-width: 66.25em) {
    .nav-container > ul > li {
      padding: 0 0.85rem; } }
  @media screen and (min-width: 71.875em) {
    .nav-container > ul > li {
      padding: 0 0.8rem; } }
  .nav-container > ul > li > a {
    padding: 0.8rem 0;
    display: block;
    color: inherit;
    font-size: 0.875rem; }
    .nav-container > ul > li > a:hover {
      color: #2c8a82;
      font-weight: bold; }
  .nav-container > ul > li:hover > a {
    color: #2c8a82;
    font-weight: bold; }
  .nav-container > ul > li:hover > .submenu {
    visibility: visible;
    opacity: 1; }
  .nav-container > ul > li.active > a {
    color: #4d998a;
    background-color: transparent;
    position: relative; }
    .nav-container > ul > li.active > a:after {
      display: block;
      content: "";
      position: absolute;
      bottom: 0;
      right: 0;
      left: 0;
      border-bottom: 6px solid #2c8a82; }

.nav-container .submenu {
  margin: 0 auto;
  background-color: #ffffff;
  box-shadow: 0px 0px 20px -1px rgba(0, 0, 0, 0.4);
  -webkit-box-shadow: 0px 0px 20px -1px rgba(0, 0, 0, 0.4);
  -moz-box-shadow: 0px 0px 20px -1px rgba(0, 0, 0, 0.4);
  width: auto;
  position: absolute;
  z-index: 4;
  visibility: hidden;
  opacity: 0;
  border: 0;
  top: 100%;
  left: 0;
  font-size: 0;
  transition: opacity 0.3s ease-in-out;
  padding: 35px 50px;
  display: flex; }
  .nav-container .submenu .submenu-list {
    list-style: none;
    margin: 1.5rem auto 0;
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(4, auto);
    grid-auto-columns: 1fr;
    grid-auto-flow: column;
    align-items: center; }
    .nav-container .submenu .submenu-list li {
      min-width: 140px;
      padding: 0.5rem;
      display: block; }
      .nav-container .submenu .submenu-list li a {
        background-color: #f0f7f6;
        color: #000000;
        padding: 0.75rem; }
        .nav-container .submenu .submenu-list li a:hover {
          background-color: #253c3a;
          color: #ffffff;
          font-weight: bold; }
  .nav-container .submenu li {
    width: auto;
    display: inline-block;
    vertical-align: middle; }
    .nav-container .submenu li.active > a {
      background: transparent;
      color: #2c8a82; }
    .nav-container .submenu li a {
      display: block;
      text-transform: uppercase;
      position: relative;
      color: rgba(26, 26, 26, 0.8);
      padding: 14px 20px;
      font-size: 14px; }
      .nav-container .submenu li a:hover {
        color: #2c8a82; }

.nav-container .menu {
  justify-content: center; }
  .sticky .nav-container .menu {
    justify-content: left; }

.submenu.style-1 {
  height: auto; }
  .submenu.style-1:before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    top: -5px;
    left: 2rem;
    border-right: 5px solid transparent;
    border-left: 5px solid transparent;
    border-bottom: 5px solid #ffffff; }
  .submenu.style-1 > div:first-child {
    position: relative; }
    .submenu.style-1 > div:first-child:after {
      position: absolute;
      content: "";
      background-color: #dcdfdf;
      height: calc(100% - 2rem);
      width: 1px;
      top: 2rem;
      right: -45px; }
  .submenu.style-1 .media-object-section:first-child {
    padding-right: 0.5rem; }

.menu-category {
  margin-right: 100px;
  display: flex;
  align-items: center; }

.menu-highlights .media-object-img {
  width: 36px;
  height: 36px; }
  .menu-highlights .media-object-img a {
    padding: 0;
    display: inline; }
  .menu-highlights .media-object-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover; }

.menu-highlights h6 {
  font-size: 0.9375rem; }
  [dir="ltr"] .menu-highlights h6 {
    font-family: "Open-Sans"; }
  .menu-highlights h6 a {
    padding-left: 0;
    padding-right: 0; }
    .menu-highlights h6 a:hover {
      font-weight: bold; }

.menu-highlights .objects-list {
  margin-bottom: 0;
  padding-bottom: 0;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: repeat(4, auto);
  grid-auto-columns: 1fr;
  grid-auto-flow: column;
  align-items: center; }

.menu-highlights .object-item {
  min-width: 110px;
  width: 100%; }

.menu-highlights .objects-list.has-separator .object-item:last-child {
  padding-bottom: 0; }

.highlights-title {
  color: #2c8a82;
  font-size: 0.75rem;
  font-weight: bold; }

.main-header-before {
  font-size: 0.8125rem;
  position: relative;
  border-bottom: 1px solid #dcdfdf; }
  @media print, screen and (max-width: 63.99875em) {
    .main-header-before {
      z-index: 99;
      background-color: #ffffff;
      color: #253c3a; } }
  @media print, screen and (min-width: 64em) {
    .main-header-before {
      padding-top: 1rem; } }
  [lang="en"] .main-header-before {
    font-family: "Open-Sans"; }
  .main-header-before .top-languages {
    color: #959292; }
    .main-header-before .top-languages a {
      color: inherit;
      margin: 0.5rem;
      display: inline-block; }
      @media (min-width: 1024px) and (max-width: 1368px) {
        .main-header-before .top-languages a {
          margin: 7px; } }
      .main-header-before .top-languages a:first-child {
        margin-left: 0; }
      .main-header-before .top-languages a.active, .main-header-before .top-languages a:hover {
        color: #2c8a82;
        font-weight: bold; }
  @media print, screen and (min-width: 64em) {
    .main-header-before--right {
      display: flex;
      flex-direction: column;
      height: 100%;
      justify-content: space-between; } }
  .main-header-before--left {
    text-align: right; }
    @media print, screen and (min-width: 64em) {
      .main-header-before--left {
        display: flex;
        flex-direction: column;
        height: 100%;
        justify-content: space-between; } }

@media print, screen and (min-width: 64em) {
  .weather-area {
    font-size: 0.75rem;
    color: #959292;
    margin-bottom: 12px; } }

.weather-area a {
  color: inherit; }
  .weather-area a:hover {
    color: #2c8a82; }

.weather-area span {
  padding: 0 3px; }
  @media print, screen and (min-width: 64em) {
    .weather-area span {
      padding: 0.5rem 3px; } }
  .weather-area span:first-child {
    padding-left: 0; }

.weather-area > span {
  position: relative;
  margin-top: 0;
  margin-left: 0;
  margin-right: 0.5rem;
  margin-bottom: 0; }

.weather-area .weather {
  display: inline-block; }
  @media print, screen and (max-width: 63.99875em) {
    .weather-area .weather {
      display: block;
      text-align: center;
      margin-bottom: 1rem; } }

@media print, screen and (max-width: 63.99875em) {
  .wtemp {
    color: #79bfb9; } }

.main-header-after,
.main-header-inner {
  border-bottom: 1px solid #dcdfdf;
  position: relative; }
  .dark-theme .main-header-after, .dark-theme
  .main-header-inner {
    margin-bottom: 0; }

.main-header-inner.header-sticky {
  z-index: 9;
  color: #000000;
  width: 100% !important;
  transition: all 0.25s ease-in-out;
  /* Mobile Portrate - Landscape */ }
  @media only screen and (min-device-width: 320px) and (max-device-width: 896px) and (-webkit-min-device-pixel-ratio: 2) {
    .main-header-inner.header-sticky {
      padding: 0.5rem;
      border: transparent;
      background-color: #ffffff; } }
  @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
    .main-header-inner.header-sticky {
      padding: 1rem 0; } }
  .main-header-inner.header-sticky .logo-white {
    display: none; }
  @media print, screen and (min-width: 64em) {
    .main-header-inner.header-sticky .logo {
      display: none; } }
  @media print, screen and (min-width: 64em) {
    .main-header-inner.header-sticky .for-sticky {
      display: none; }
      .main-header-inner.header-sticky .for-sticky > a {
        margin-left: 15px; }
      .main-header-inner.header-sticky .for-sticky > div > a {
        margin-left: 15px; } }
  .main-header-inner.header-sticky.sticky {
    background-color: #ffffff;
    color: #000000;
    border-top: transparent;
    border-bottom: transparent; }
    .main-header-inner.header-sticky.sticky .logo {
      display: block; }
      .auto-dark-theme .main-header-inner.header-sticky.sticky .logo:not(.logo--dark-mode) {
        display: none; }
      .main-header-inner.header-sticky.sticky .logo--dark-mode {
        display: none; }
        .auto-dark-theme .main-header-inner.header-sticky.sticky .logo--dark-mode {
          display: block; }
    @media print, screen and (min-width: 64em) {
      .main-header-inner.header-sticky.sticky .ico-search {
        display: block; } }
    .main-header-inner.header-sticky.sticky .logo-white {
      display: none; }
    .main-header-inner.header-sticky.sticky .for-sticky {
      display: flex; }
    .main-header-inner.header-sticky.sticky > a:hover {
      color: #253c3a; }

.search-btn {
  font-size: 1rem; }
  @media print, screen and (min-width: 64em) {
    .search-btn {
      height: 30px; } }

.holder-wrap {
  position: relative; }
  @media print, screen and (max-width: 39.99875em) {
    .holder-wrap .ico-user {
      font-size: 18px; } }

header#main-header {
  font-family: "Open-Sans";
  z-index: 99; }
  @media print, screen and (max-width: 39.99875em) {
    .front header#main-header,
    .dark-theme header#main-header {
      margin-bottom: 0; } }

.logo,
.logo-white {
  text-align: center;
  line-height: 1;
  position: relative; }
  @media print, screen and (max-width: 39.99875em) {
    .logo,
    .logo-white {
      padding: 0.5rem; } }
  .main-header-inner .logo, .main-header-inner
  .logo-white {
    padding-right: 0;
    padding-left: 0; }
  .sticky .logo, .sticky
  .logo-white {
    margin-bottom: 0;
    position: relative;
    z-index: 1; }
    .sticky .logo img, .sticky
    .logo-white img {
      width: 134px;
      transition: all 0.1s ease; }
      @media print, screen and (max-width: 63.99875em) {
        .sticky .logo img, .sticky
        .logo-white img {
          padding-top: 0;
          padding-bottom: 0;
          transition: all 0.1s ease; } }

.logo img {
  color-scheme: only light;
  width: 166px;
  padding-top: 12px;
  padding-bottom: 12px;
  transition: all 0.1s ease; }
  @media print, screen and (min-width: 64em) {
    .logo img {
      width: 290px; } }

.auto-dark-theme .logo:not(.logo--dark-mode) {
  display: none; }

.logo--dark-mode {
  display: none; }
  .auto-dark-theme .logo--dark-mode {
    display: block; }

@media print, screen and (max-width: 63.99875em) {
  .holder-area {
    line-height: 0; } }

header .holder-area > div,
#sticky-area .holder-area > div,
.holder-area .header-sticky > div {
  display: inline-block; }

.pdf-btn span {
  margin-left: 10px; }

.pdf-btn:hover img {
  filter: brightness(200%) contrast(140%); }

.login-btn {
  display: inline-block;
  margin-left: 1rem;
  line-height: 0; }
  @media (min-width: 1024px) and (max-width: 1368px) {
    .login-btn span {
      display: none; } }
  .login-btn a {
    background-color: #ffffff;
    color: #253c3a;
    padding: 0 1rem;
    font-size: 0.75rem;
    height: 40px;
    vertical-align: middle;
    display: flex;
    align-items: center; }
    @media (min-width: 1024px) and (max-width: 1368px) {
      .login-btn a {
        padding: 1rem 1rem; } }
    .login-btn a:hover {
      background-color: #253c3a;
      color: #ffffff; }
  .login-btn i {
    margin-right: 10px;
    font-size: 1rem; }
    @media (min-width: 1024px) and (max-width: 1368px) {
      .login-btn i {
        margin-right: 0; } }

.main-header-after .show-submenu {
  margin-bottom: 3rem; }
  .main-header-after .show-submenu li.active .submenu {
    opacity: 1;
    visibility: visible;
    border-bottom: 1px solid rgba(138, 56, 56, 0.2); }

.menu-panel ul {
  padding: 0.5rem 0.2rem 1rem; }
  .menu-panel ul li a {
    padding: 0.75rem 0;
    color: #ffffff; }

.menu-panel li {
  position: relative; }
  .menu-panel li.active > a,
  .menu-panel li.active span a {
    background-color: transparent;
    color: #2c8a82; }
  .menu-panel li.active.is-accordion-submenu-parent[aria-expanded="true"] > a {
    color: #2c8a82; }
  .menu-panel li:hover span a {
    color: #2c8a82; }
  .menu-panel li span {
    display: block;
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%; }
  .menu-panel li a {
    text-transform: uppercase;
    display: block;
    padding: 0.85rem 0 1rem 0;
    line-height: 1;
    color: #ffffff; }
    @media print, screen and (max-width: 39.99875em) {
      .menu-panel li a {
        font-size: 20px; } }
    .menu-panel li a:hover {
      color: #2c8a82; }
    .menu-panel li a img {
      margin-right: 0;
      margin-left: 0.625rem; }

.panel-languages {
  display: flex;
  flex-direction: row;
  justify-content: space-around; }
  .panel-languages a {
    color: #ffffff; }
  @media print, screen and (max-width: 39.99875em) {
    .panel-languages {
      font-size: 12px; } }

.menu-panel .is-accordion-submenu-parent > a:after {
  display: none; }

.menu-panel .is-accordion-submenu-parent > a:hover:before {
  color: #2c8a82; }

.menu-panel .is-accordion-submenu-parent > a:before {
  border-left: 0;
  content: "\e916";
  font-family: "icomoon";
  font-size: 0.75rem;
  font-weight: normal;
  color: #ffffff;
  height: 100%;
  left: 0;
  line-height: 38px;
  margin-top: 0;
  position: absolute;
  text-align: right;
  right: 0;
  top: 0;
  z-index: 1; }

.menu-panel .is-accordion-submenu-parent[aria-expanded="true"] > a:before {
  content: "\e917"; }

@keyframes fadeout {
  0% {
    opacity: 1; }
  40% {
    opacity: 0.5; }
  100% {
    opacity: 0; } }

@-webkit-keyframes fadeout {
  0% {
    opacity: 1; }
  40% {
    opacity: 0.5; }
  100% {
    opacity: 0; } }

.menu-panel .is-accordion-submenu-parent .submenu {
  z-index: 2;
  margin-left: 0; }
  .menu-panel .is-accordion-submenu-parent .submenu[aria-hidden="true"] {
    -webkit-animation: 0.5s ease-out normal forwards 1 fadeout;
            animation: 0.5s ease-out normal forwards 1 fadeout; }
  .menu-panel .is-accordion-submenu-parent .submenu li a {
    color: #b3c7c5;
    font-weight: normal; }
    .menu-panel .is-accordion-submenu-parent .submenu li a:hover {
      color: #2c8a82;
      font-weight: bold; }
  .menu-panel .is-accordion-submenu-parent .submenu .submenu {
    padding: 0 1rem; }

.menu-panel .is-accordion-submenu-parent .menu.submenu .is-accordion-submenu-parent a::before {
  left: 10px; }

.sticky-header-spacer {
  display: none;
  height: auto;
  visibility: hidden; }

.logo-white,
.ico-pdf,
.ico-search {
  display: none; }

#area-to-stick {
  position: relative;
  z-index: 9999999;
  padding: 1rem;
  background-color: #ffffff; }
  @media print, screen and (max-width: 39.99875em) {
    #area-to-stick .grid-x {
      justify-content: space-between; } }
  @media print, screen and (min-width: 64em) {
    #area-to-stick {
      display: none !important; } }

.opened {
  transition: all 0.2s ease-in-out; }
  .opened #area-to-stick,
  .opened .main-header-inner.header-sticky {
    background-color: transparent;
    z-index: 999;
    margin-bottom: 0;
    transition: all 0.2s ease-in-out;
    padding-right: 3rem;
    padding-top: 1rem;
    position: fixed !important; }
    @media print, screen and (min-width: 64em) {
      .opened #area-to-stick,
      .opened .main-header-inner.header-sticky {
        position: absolute !important; } }
    .opened #area-to-stick .logo,
    .opened .main-header-inner.header-sticky .logo {
      display: none; }
      .auto-dark-theme .opened #area-to-stick .logo:not(.logo--dark-mode), .auto-dark-theme
      .opened .main-header-inner.header-sticky .logo:not(.logo--dark-mode) {
        display: none; }
      .opened #area-to-stick .logo--dark-mode,
      .opened .main-header-inner.header-sticky .logo--dark-mode {
        display: none; }
        .auto-dark-theme .opened #area-to-stick .logo--dark-mode, .auto-dark-theme
        .opened .main-header-inner.header-sticky .logo--dark-mode {
          display: block; }
    .opened #area-to-stick .logo-white,
    .opened .main-header-inner.header-sticky .logo-white {
      transition: all 0.25s ease 0s;
      width: 140px;
      margin: 0 auto; }
    .opened #area-to-stick .logo-white,
    .opened #area-to-stick .ico-pdf,
    .opened .main-header-inner.header-sticky .logo-white,
    .opened .main-header-inner.header-sticky .ico-pdf {
      display: block; }
    .opened #area-to-stick .toggle-nav-panel,
    .opened .main-header-inner.header-sticky .toggle-nav-panel {
      color: #ffffff; }
    .opened #area-to-stick .ico-user,
    .opened #area-to-stick .account-menu,
    .opened #area-to-stick .ico-search,
    .opened .main-header-inner.header-sticky .ico-user,
    .opened .main-header-inner.header-sticky .account-menu,
    .opened .main-header-inner.header-sticky .ico-search {
      display: none; }
  .opened .main-header-inner.header-sticky {
    padding: 0.5rem 3rem 0.5rem;
    border-bottom: 1px solid #647e7c;
    background-color: #253c3a; }

html.opened {
  overflow: hidden; }

.toggle-nav-panel,
.toggle-search-panel {
  position: relative;
  z-index: 1;
  font-size: 1.3rem;
  cursor: pointer;
  color: #000000; }
  @media print, screen and (max-width: 39.99875em) {
    .toggle-nav-panel,
    .toggle-search-panel {
      font-size: 14px; } }
  .toggle-nav-panel:hover,
  .toggle-search-panel:hover {
    color: #2c8a82; }
  .toggle-nav-panel.is-active,
  .toggle-search-panel.is-active {
    font-size: 1.2rem; }
  @media print, screen and (max-width: 39.99875em) {
    .stuck-header .toggle-nav-panel, .stuck-header
    .toggle-search-panel {
      font-size: 1rem; } }

[dir="ltr"] .toggle-nav-panel {
  transform: scaleX(-1); }

.canvas-panel {
  padding: 50px 60px;
  top: 50px;
  bottom: 0;
  height: auto; }
  @media print, screen and (min-width: 64em) {
    .canvas-panel {
      visibility: hidden;
      opacity: 0; } }
  .canvas-panel.search-canvas {
    background-color: #ffffff;
    display: none; }
  .canvas-panel .socials-area {
    display: block;
    padding: 1.25rem 0 2rem; }

.close-panel {
  height: 4rem; }
  .close-panel span {
    padding: 0 1rem;
    cursor: pointer;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    font-size: 2.25rem; }
    .close-panel span:hover {
      color: #2c8a82; }

.print-edition-area {
  font-family: "Open-Sans";
  font-size: 0.75rem;
  padding: 2rem 0;
  border-bottom: 3px double #d6d6d6; }
  .print-edition-area h6 {
    text-transform: uppercase;
    font-family: "Open-Sans";
    font-size: 0.875rem;
    margin-bottom: 1.25rem; }
  .print-edition-area span {
    display: block; }
    .print-edition-area span a {
      color: #464646; }
      .print-edition-area span a:hover {
        color: #2c8a82; }
  .print-edition-area a {
    display: block;
    text-transform: capitalize;
    color: #ababab;
    margin-top: 0.5rem; }
    .print-edition-area a:hover {
      color: #2c8a82; }

#scroll-cat {
  overflow: scroll;
  -ms-overflow-style: none;
  /* Internet Explorer 10+ */
  scrollbar-width: none;
  /* Firefox */
  margin-bottom: 1rem; }
  @media print, screen and (max-width: 39.99875em) {
    #scroll-cat {
      width: 100vw;
      padding-left: 20px; } }
  #scroll-cat::-webkit-scrollbar {
    display: none;
    /* Safari and Chrome */ }
  #scroll-cat .mCustomScrollBox {
    overflow: visible; }
  @media print, screen and (max-width: 39.99875em) {
    #scroll-cat.header-tag-wrap {
      margin-bottom: 0; } }

.header-tag-wrap {
  background-color: #ffffff;
  margin-bottom: 0.8rem; }

.header-tag {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding-left: 0.5rem;
  /* Mobile Portrate - Landscape */ }
  .header-tag a {
    color: #717171;
    font-size: 15px;
    font-family: "Open-Sans";
    white-space: nowrap;
    padding: 0.5rem 0.8rem; }
    .header-tag a.active {
      color: #2c8a82; }
      .dark-theme .header-tag a.active {
        color: #2c8a82; }
    .dark-theme .header-tag a {
      color: #717171; }
  @media only screen and (min-device-width: 320px) and (max-device-width: 896px) and (-webkit-min-device-pixel-ratio: 2) {
    .header-tag {
      display: flex !important; } }

.navpanel {
  position: relative;
  overflow: hidden;
  overflow-y: auto;
  background-color: #253c3a;
  color: #ffffff;
  left: 0;
  right: 0;
  z-index: 99;
  -webkit-overflow-scrolling: touch;
  display: none; }
  @media print, screen and (max-width: 39.99875em) {
    .navpanel {
      position: fixed; } }
  .navpanel__footer {
    margin-top: auto; }

.toggle-mega-menu {
  cursor: pointer;
  color: #000000; }
  .toggle-mega-menu:hover {
    color: #2c8a82; }

.mega-menu {
  display: none;
  background-color: #172f2f;
  padding: 15px 15px 68px;
  color: #ffffff;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9; }
  @media (max-height: 800px) {
    .sticky .mega-menu {
      position: fixed;
      height: 100%;
      overflow-y: auto; } }
  .mega-menu__close {
    color: #ffffff;
    cursor: pointer;
    font-size: 23px;
    margin-bottom: 42px; }
  .mega-menu .menu li {
    list-style: none; }
    .mega-menu .menu li a {
      color: #ffffff;
      padding-left: 0;
      line-height: 1.2; }
      .mega-menu .menu li a:hover {
        color: #d9edeb; }
    .mega-menu .menu li.menu__main-category {
      margin-bottom: 16px;
      font-weight: bold; }
      .mega-menu .menu li.menu__main-category > a {
        padding: 0;
        line-height: 1.6;
        border-bottom: 1px solid #d9edeb; }
    .mega-menu .menu li.menu__sub-category {
      font-family: "Open-Sans"; }
    .mega-menu .menu li.menu__child-category {
      margin-bottom: 26px; }
      .mega-menu .menu li.menu__child-category li {
        list-style: none; }
        .mega-menu .menu li.menu__child-category li a {
          color: #aed7c6; }

.group-menu {
  display: flex;
  flex-direction: column;
  row-gap: 30px;
  white-space: nowrap; }
  @media print, screen and (min-width: 64em) {
    .group-menu {
      padding: 0 1.5rem; } }
  .group-menu__item {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    justify-content: flex-start; }
  @media (min-width: 1023px) and (max-width: 1030px) {
    .group-menu .menu.vertical {
      width: calc(390px / 5) !important; } }
  @media print, screen and (min-width: 64em) {
    .group-menu .menu.vertical {
      width: calc(490px / 5); } }

/* ------ navigation, panel and sticky header ------ END ------ */
/* Footer Area Styles ------- START ----- */
#main-footer {
  padding: 1.25rem 0 0;
  margin-bottom: 0; }
  @media print, screen and (min-width: 64em) {
    #main-footer {
      padding: 2.5rem 0 0; } }
  .about-page #main-footer {
    padding-top: 0; }
  .not-found #main-footer,
  .path-journey #main-footer {
    padding-top: 0; }
  .multimedia-gallery #main-footer {
    padding: 0; }
  #main-footer .social-lbl {
    color: #ffffff;
    font-family: "STIX Two Text";
    font-weight: 600;
    font-size: 16px; }
    [dir="ltr"] #main-footer .social-lbl {
      font-family: "STIX Two Text"; }
  .dark-theme #main-footer {
    padding-top: 0; }

@media print, screen and (max-width: 39.99875em) {
  .main-footer-container {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    flex-direction: column;
    align-content: center; } }

.main-footer-content {
  background-color: #101f1d;
  padding: 40px 0 20px; }
  @media print, screen and (max-width: 39.99875em) {
    .main-footer-content {
      padding-bottom: 0; } }
  .main-footer-content hr {
    border-bottom-color: #253c3a; }

.main-footer-before {
  margin-bottom: 1.5rem; }
  @media print, screen and (max-width: 39.99875em) {
    .main-footer-before {
      order: 2; } }
  @media print, screen and (min-width: 64em) {
    .main-footer-before {
      border-bottom: 1px solid #253c3a;
      padding-bottom: 1rem; } }

@media print, screen and (max-width: 39.99875em) {
  .main-footer-after-inner {
    order: 1;
    border-bottom: 1px solid #253c3a;
    padding-bottom: 1rem; } }

@media print, screen and (min-width: 40em) {
  .main-footer-after-inner {
    border-top: 1px solid #253c3a;
    padding-top: 1rem;
    margin-top: 1.5rem; } }

@media print, screen and (max-width: 39.99875em) {
  .main-footer-after-inner .menu {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    width: 380px;
    text-align: center;
    align-items: center;
    justify-content: center; } }

.main-footer-after-inner ul li a {
  color: #ffffff;
  font-size: 13px;
  font-family: "STIX Two Text"; }
  @media print, screen and (max-width: 39.99875em) {
    .main-footer-after-inner ul li a {
      color: #7c9a94; } }
  .main-footer-after-inner ul li a:hover {
    color: #2c8a82; }

.main-footer-inner {
  padding: 0 2.5rem 0;
  font-family: "Open-Sans"; }
  @media print, screen and (max-width: 39.99875em) {
    .main-footer-inner {
      order: 3; } }
  @media print, screen and (min-width: 40em) {
    .main-footer-inner {
      padding: 0; } }
  .main-footer-inner .social-lbl {
    display: inline-block;
    margin-right: 1rem; }

.main-footer-after {
  padding: 1rem;
  background-color: #101f1d;
  font-family: "Open-Sans"; }
  @media print, screen and (max-width: 39.99875em) {
    .main-footer-after {
      text-align: center;
      padding-bottom: 2rem;
      padding-top: 0;
      margin-top: -5px; } }
  @media print, screen and (min-width: 40em) {
    .main-footer-after {
      background-color: #253c3a; } }
  .main-footer-after.style-v2 {
    background-color: transparent;
    padding: 0; }
    .main-footer-after.style-v2 .grid-container {
      border-top: 1px solid #d1d5d5;
      padding-top: 0.5rem;
      padding-bottom: 0.5rem; }
      @media print, screen and (max-width: 39.99875em) {
        .main-footer-after.style-v2 .grid-container .grid-x .cell:first-child {
          order: 2; } }
    .main-footer-after.style-v2 .copyright {
      color: #253c3a;
      font-size: 10px; }
    .main-footer-after.style-v2 .menu a {
      font-size: 12px;
      padding: 15px; }

@media print, screen and (min-width: 40em) {
  .logo-footer {
    margin-bottom: 1rem; } }

@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .logo-footer {
    margin-top: 30px; } }

.logo-footer img {
  vertical-align: top;
  max-width: 190px;
  color-scheme: only light; }

.copyright {
  font-size: 14px;
  color: #ffffff; }
  @media print, screen and (max-width: 39.99875em) {
    .copyright {
      padding: 1rem; } }
  .canvas-panel .copyright {
    padding: 0 1.5rem 2rem; }
  @media print, screen and (max-width: 39.99875em) {
    .main-footer-after .copyright {
      color: #80908e; } }
  .copyright p {
    margin-bottom: 0; }

@media print, screen and (max-width: 63.99875em) {
  .footer-menu .menu {
    margin-bottom: 1.5rem; } }

.footer-menu .menu li {
  list-style: none; }

.footer-menu .menu > li {
  font-size: 1rem; }
  .footer-menu .menu > li:first-child {
    margin-bottom: 1rem; }
  [dir="ltr"] .footer-menu .menu > li {
    font-size: 0.875rem; }
  [lang="tr"] .footer-menu .menu > li {
    font-size: 0.875rem; }
  .footer-menu .menu > li a {
    color: #ffffff;
    padding: 0.5rem 0;
    font-size: 0.875rem; }
    .footer-menu .menu > li a:hover {
      color: #2c8a82; }
    .footer-menu .menu > li a strong {
      font-family: "STIX Two Text"; }

.footer-menu > .grid-x {
  /* netbook only */ }
  @media screen and (max-width: 1024px) {
    .footer-menu > .grid-x {
      gap: 20px; } }
  @media print, screen and (min-width: 64em) {
    .footer-menu > .grid-x {
      gap: 20px; }
      .footer-menu > .grid-x > .cell {
        width: 100px; } }

@media print, screen and (max-width: 39.99875em) {
  .download-app {
    margin: 1.5rem -0.5rem;
    text-align: center;
    background-color: #253c3a;
    padding: 1rem; } }

.download-app a {
  margin-left: 1rem; }
  @media print, screen and (max-width: 39.99875em) {
    .download-app a {
      margin: 0 0.2rem; } }

.download-app img {
  width: 130px;
  color-scheme: only light; }

.footer-socials {
  height: 100%; }
  .footer-socials .socials-btns {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end; }

/* Footer Area Styles ------- END ----- */
/***
*https://www.jqueryscript.net/animation/news-ticker-controls-acme.html
*https://www.jqueryscript.net/demo/news-ticker-controls-acme/
**/
/*EDITED TO FIT AAWSAT LAYOUT*/
* {
  margin: 0;
  padding: 0; }

*,
::after,
::before {
  box-sizing: border-box; }

a {
  text-decoration: none;
  transition: all 0.5s ease-in-out 0s; }

a:hover {
  text-decoration: none; }

/*-----------------------------
	News Ticker
------------------------------*/
.acme-news-ticker {
  background: #fff;
  position: relative;
  height: 45px;
  border: 1px solid #1974d2;
  margin-top: 45px; }

@media (min-width: 768px) {
  .acme-news-ticker {
    margin-top: 0; } }

.acme-news-ticker-label {
  background: #1974d2;
  padding: 10px;
  width: auto;
  float: left;
  margin-right: 15px;
  line-height: normal;
  height: 100%;
  color: #fff; }

@media (max-width: 575px) {
  .acme-news-ticker-label {
    position: absolute;
    top: -45px; } }

.acme-news-ticker-box {
  height: 100%;
  padding-top: 10px;
  overflow: hidden; }

@media (max-width: 575px) {
  .acme-news-ticker-box {
    padding-left: 10px;
    padding-right: 120px; } }

.acme-news-ticker-box ul {
  width: 100%;
  list-style-type: none !important;
  padding: 0;
  margin: 0; }

.acme-news-ticker-box ul li a {
  text-decoration: none; }

.acme-news-ticker-controls {
  display: flex;
  position: absolute;
  height: 100%;
  right: 0;
  top: 0; }

.acme-news-ticker-controls button {
  height: 100%;
  background: #f6f6f6;
  padding: 0;
  width: 40px;
  border-color: #eeeeee;
  border-style: solid;
  border-width: 0 0 0 1px;
  cursor: pointer;
  display: inline-block; }

.acme-news-ticker-controls button:hover {
  background: #eeeeee; }

.acme-news-ticker-controls button.acme-news-ticker-arrow {
  margin: 0;
  display: inline-block;
  position: relative; }

.acme-news-ticker-controls button.acme-news-ticker-arrow:after {
  border-color: #999;
  border-bottom-style: solid;
  border-bottom-width: 2px;
  border-right-style: solid;
  border-right-width: 2px;
  content: '';
  display: inline-block;
  height: 8px;
  left: 50%;
  position: absolute;
  top: 50%;
  width: 8px; }

.acme-news-ticker-controls button.acme-news-ticker-pause {
  position: relative;
  display: inline-block; }

.acme-news-ticker-controls button.acme-news-ticker-pause:before {
  position: absolute;
  content: "";
  width: 10px;
  height: 10px;
  border-color: #999;
  border-style: solid;
  border-width: 0 2px 0;
  transform: translate(-50%, -50%);
  left: 50%;
  top: 50%; }

.acme-news-ticker-controls.acme-news-ticker-horizontal-controls button.acme-news-ticker-prev:after {
  transform: translate(-50%, -50%) rotate(135deg); }

.acme-news-ticker-controls.acme-news-ticker-horizontal-controls button.acme-news-ticker-next:after {
  transform: translate(-50%, -50%) rotate(315deg); }

.acme-news-ticker-controls.acme-news-ticker-vertical-controls button.acme-news-ticker-prev:after {
  transform: translate(-50%, -50%) rotate(225deg); }

.acme-news-ticker-controls.acme-news-ticker-vertical-controls button.acme-news-ticker-next:after {
  transform: translate(-50%, -50%) rotate(405deg); }

/*# sourceMappingURL=style.css.map */
/* ------- AUDIO PLAYER WIDGET ------- START -------- */
.audio-player:hover {
  cursor: pointer; }
  .opinion-authors-list .audio-player:hover .podcast-label {
    margin-left: 5px;
    font-weight: bold; }

.audio-player .jw-rightclick {
  display: none !important; }

.opinion-authors-list .audio-player,
.opinion-wrap .audio-player {
  display: flex;
  align-items: center; }

.block-wrapper .audio-player .podcast-label {
  display: none; }

.audio-player .jw-wrapper.jw-reset,
.audio-player .jw-controls.jw-reset {
  background-color: transparent; }
  .opinion-authors-list .audio-player .jw-wrapper.jw-reset,
  .opinion-wrap .audio-player .jw-wrapper.jw-reset, .opinion-authors-list
  .audio-player .jw-controls.jw-reset,
  .opinion-wrap
  .audio-player .jw-controls.jw-reset {
    background-color: transparent; }

.audio-player .jwplayer.jw-state-complete .jw-controls.jw-reset {
  background: transparent; }

.audio-player .jw-controls-backdrop.jw-reset {
  background: transparent; }

.audio-player .jwplayer.jw-reset {
  height: 35px !important;
  background-color: transparent; }
  .opinion-authors-list .audio-player .jwplayer.jw-reset,
  .opinion-wrap .audio-player .jwplayer.jw-reset {
    background-color: transparent;
    width: 35px;
    display: none; }
  @media print, screen and (max-width: 39.99875em) {
    .podcast-floater .audio-player .jwplayer.jw-reset {
      overflow: visible; } }

@media print, screen and (max-width: 39.99875em) {
  .podcast-floater .audio-player .jw-controls.jw-buffer.jw-reset, .podcast-floater
  .audio-player .jw-controls.jw-reset {
    overflow: visible; } }

.audio-player .jw-slider-time.jw-reset {
  padding-left: 0; }

.audio-player .jw-controlbar.jw-reset .jw-reset.jw-icon-volume {
  display: none; }

.audio-player .jw-flag-audio-player .jw-controlbar .jw-icon-inline.jw-text-countdown.jw-reset {
  color: #929898;
  display: block;
  height: 1em;
  order: 1;
  padding-left: 0;
  padding-right: 10px; }
  @media print, screen and (max-width: 39.99875em) {
    .audio-player .jw-flag-audio-player .jw-controlbar .jw-icon-inline.jw-text-countdown.jw-reset {
      font-size: 10px; } }
  @media print, screen and (max-width: 39.99875em) {
    .podcast-floater .audio-player .jw-flag-audio-player .jw-controlbar .jw-icon-inline.jw-text-countdown.jw-reset {
      left: -4rem;
      top: 10px; } }
  .audio-podcast--no-bar .audio-player .jw-flag-audio-player .jw-controlbar .jw-icon-inline.jw-text-countdown.jw-reset {
    padding-right: 0; }

.audio-player .jw-icon.jw-icon-inline.jw-button-color.jw-reset.jw-icon-rewind {
  display: none; }

.audio-player .jw-icon.jw-icon-tooltip.jw-icon-volume.jw-button-color.jw-reset.jw-flag-horizontal-slider.jw-full {
  display: none; }

.audio-player .jw-icon.jw-icon-tooltip.jw-icon-volume.jw-button-color.jw-reset.jw-flag-horizontal-slider.jw-off {
  display: none; }

.audio-player .jw-icon.jw-icon-inline.jw-text.jw-reset.jw-text-elapsed {
  display: none; }

@media print, screen and (min-width: 64em) {
  .audio-player .jw-icon.jw-icon-inline.jw-text.jw-reset.jw-text-duration {
    display: none; } }

@media print, screen and (max-width: 63.99875em) {
  .audio-player .jwplayer:not(.jw-breakpoint--1) .jw-text-duration:before,
  .audio-player .jwplayer:not(.jw-breakpoint-0) .jw-text-duration:before {
    content: ""; } }

.audio-player .jw-svg-icon.jw-svg-icon-play {
  color: #2c8a82; }

.audio-player .jw-buffer.jw-reset {
  background-color: #2c8a82; }

.audio-player .jw-icon.jw-icon-inline.jw-button-color.jw-reset.jw-icon-playback {
  color: #2c8a82;
  height: 35px;
  width: 35px;
  background: #ecf4f3;
  border-radius: 50%; }
  .opinion-authors-list .audio-player .jw-icon.jw-icon-inline.jw-button-color.jw-reset.jw-icon-playback,
  .opinion-wrap .audio-player .jw-icon.jw-icon-inline.jw-button-color.jw-reset.jw-icon-playback {
    background: #ecf4f3; }
  .audio-podcast--no-bar .audio-player .jw-icon.jw-icon-inline.jw-button-color.jw-reset.jw-icon-playback {
    background: transparent;
    height: 20px;
    width: 20px; }

.audio-player .jw-progress.jw-reset {
  background-color: black; }

.audio-player .jw-slider-container.jw-reset {
  border-radius: 20px;
  height: 3.5px; }

.audio-player .jw-slider-horizontal.jw-chapter-slider-time .jw-slider-container .jw-timesegment.jw-reset {
  flex-grow: 1; }

.audio-player .jw-timesegment-bar.jw-rail.jw-timesegment-background.jw-reset {
  background-color: #eaefee !important; }

.audio-player .jw-timesegment-bar.jw-progress.jw-timesegment-progress.jw-reset {
  background-color: #2c8981; }

.audio-player .jw-reset.jw-button-container {
  background-color: transparent; }
  .opinion-authors-list .audio-player .jw-reset.jw-button-container,
  .opinion-wrap .audio-player .jw-reset.jw-button-container {
    background-color: transparent; }

.audio-player .jw-knob.jw-reset {
  background-color: #2c8a82;
  transform: translate(-50%, -50%) scale(0.8);
  box-shadow: inherit;
  height: 10px;
  width: 10px; }
  @media print, screen and (max-width: 39.99875em) {
    .podcast-floater .audio-player .jw-knob.jw-reset {
      display: none; } }

.audio-player .jw-horizontal-volume-container {
  display: none !important; }

@media print, screen and (min-width: 64em) {
  .block-wrapper .audio-player {
    margin-top: 0.5rem; } }

.podcast-floater {
  background-color: #ffffff;
  z-index: 9;
  padding: 0 0 2.15rem;
  position: relative;
  /* Mobile Landscape */ }
  @media only screen and (min-device-width: 320px) and (max-device-width: 896px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: landscape) {
    .podcast-floater {
      padding: 1rem 0 2rem; } }
  @media print, screen and (min-width: 64em) {
    .podcast-floater {
      padding: 1rem 4rem; } }
  .podcast-floater .btn-share-wrap .btn-share {
    margin: 0 10px; }
  @media print, screen and (max-width: 39.99875em) {
    .podcast-floater .jwplayer.jw-reset {
      height: 70px !important; } }
  .podcast-floater .close-btn {
    cursor: pointer; }
    @media print, screen and (max-width: 39.99875em) {
      .podcast-floater .close-btn {
        padding-right: 15px;
        padding-left: 5px;
        color: #90a3a2; } }
  @media print, screen and (max-width: 39.99875em) {
    .podcast-floater .jw-slider-time.jw-reset {
      width: 100vw;
      z-index: 99999;
      position: absolute;
      left: -4.85rem;
      top: 0;
      height: 5px; } }
  @media print, screen and (max-width: 39.99875em) {
    .podcast-floater .jwplayer:not(.jw-flag-ads):not(.jw-flag-live).jw-breakpoint-0 .jw-text-countdown.jw-reset {
      position: absolute;
      top: 10px;
      left: -4rem;
      font-size: 10px; } }
  @media print, screen and (max-width: 39.99875em) {
    .podcast-floater .jw-flag-audio-player.jw-flag-small-player .jw-reset.jw-text-duration {
      display: block !important;
      color: #929898;
      position: absolute;
      top: 10px;
      left: initial;
      right: -20rem;
      font-size: 10px; } }
  @media print, screen and (max-width: 39.99875em) {
    .podcast-floater .jw-icon.jw-icon-inline.jw-button-color.jw-reset.jw-icon-playback {
      position: absolute;
      top: 2.2rem;
      left: -1.3rem;
      background: transparent; } }

.podcast-floater-item img {
  width: 40px;
  height: 35px;
  -o-object-fit: cover;
     object-fit: cover; }

.podcast-floater-item h6 {
  margin-bottom: 0; }

@media print, screen and (max-width: 39.99875em) {
  .player #podcastToday {
    margin-top: 2.3rem; } }

.player .player-song .timestamps {
  display: flex;
  justify-content: space-between;
  font-size: 11px;
  color: #bfbfbf;
  align-items: center;
  direction: ltr; }
  @media print, screen and (max-width: 39.99875em) {
    .podcast-floater .player .player-song .timestamps input[type="range"] {
      width: 100vw;
      z-index: 99999;
      position: absolute;
      left: 0;
      top: 0; } }
  @media print, screen and (max-width: 39.99875em) {
    .podcast-floater .player .player-song .timestamps {
      position: absolute;
      top: 0;
      width: 100%;
      right: 0;
      left: 0;
      padding: 7px 1rem 0;
      font-size: 10px; } }

.player .player-song .time-now {
  margin-left: 1rem; }
  @media print, screen and (min-width: 64em) {
    .player .player-song .time-now {
      width: 55px; } }

.player .player-song .time-finish {
  margin-right: 1rem; }

.player .player-song .actions {
  width: 100%;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center; }
  .player .player-song .actions i {
    color: #2c8a82;
    font-size: 0.875rem; }
    .player .player-song .actions i.icon-pause {
      font-size: 1rem; }
  .player .player-song .actions .next,
  .player .player-song .actions .prev {
    cursor: pointer; }
  .player .player-song .actions .play {
    margin: 0 1rem; }
    @media print, screen and (max-width: 39.99875em) {
      .podcast-floater .player .player-song .actions .play {
        margin-right: -0.5rem;
        margin-top: 0; } }

.audio-player-floater.audio-player {
  /* Mobile Landscape */ }
  @media only screen and (min-device-width: 320px) and (max-device-width: 896px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: landscape) {
    .audio-player-floater.audio-player {
      width: 340px; } }
  .audio-player-floater.audio-player input[type="range"] {
    -webkit-appearance: none;
    background: linear-gradient(to right, #2c8a82 0%, #dcebe9 0%);
    width: 100%;
    height: 3px;
    bottom: unset;
    transform-origin: right top 0;
    border-radius: 20px; }
  .audio-player-floater.audio-player input[type="range"]::-webkit-slider-thumb {
    width: 10px;
    -webkit-appearance: none;
    height: 10px;
    border-radius: 100%;
    cursor: ew-resize;
    background: #2c8a82; }
    @media print, screen and (max-width: 39.99875em) {
      .podcast-floater .audio-player-floater.audio-player input[type="range"]::-webkit-slider-thumb {
        width: 1px;
        height: 1px; } }

.not-playing {
  display: none; }

.audio-player-play {
  cursor: pointer; }

.audio-player-time {
  margin-left: 15px; }
  .audio-player-time .icon-play-green {
    color: #2c8a82;
    font-size: 15px;
    margin-left: 10px;
    width: 16px;
    display: inline-block; }
    .playing .audio-player-time .icon-play-green {
      font-weight: bold;
      font-size: 16px; }
      .playing .audio-player-time .icon-play-green:before {
        content: "\e923"; }
  .audio-player-time time {
    color: #929898;
    font-size: 14px; }
    .audio-player-time time .audio-podcast--no-bar {
      font-size: 11px; }

.audio-podcast--no-bar .audio-player {
  display: flex;
  align-items: center;
  margin-top: 10px; }
  @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
    .audio-podcast--no-bar .audio-player {
      height: 28px; } }
  .audio-podcast--no-bar .audio-player .jwplayer.jw-reset {
    width: 65px;
    height: 20px !important;
    display: none; }
  .audio-podcast--no-bar .audio-player .jw-wrapper.jw-reset {
    width: 85px; }

.audio-podcast--no-bar .audio-player .jw-slider-time.jw-reset {
  display: none; }

.block-wrapper .audio-podcast--no-bar .podcast-label {
  display: block;
  margin-left: 0;
  font-size: 12px;
  font-weight: normal;
  color: #2c8a82; }

.audio-podcast--no-bar .author-name {
  margin-left: auto;
  margin-bottom: 0;
  line-height: 1; }
  .audio-podcast--no-bar .author-name a {
    color: #969696; }

[lang="ar"] .audio-podcast--no-bar h4,
[dir="ltr"] .audio-podcast--no-bar h4 {
  font-size: 0.9375rem; }

.audio-podcast--no-bar .slick-dots {
  bottom: -35px; }

.audio-podcast--no-bar.objects-list.has-separator .object-item {
  padding-top: 25px;
  padding-bottom: 10px; }

.block-wrapper .audio-podcast--no-bar.objects-list {
  margin-bottom: 0.8rem; }

.audio-podcast .round img {
  width: 79px;
  height: 79px;
  -o-object-fit: cover;
     object-fit: cover;
  color-scheme: only light; }

.audio-podcast--no-bar .round img {
  width: 58.33px;
  height: 58.33px; }

.audio-podcast--bottom {
  display: flex;
  align-items: center;
  margin-top: 10px; }
  @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
    .audio-podcast--bottom {
      height: 28px; } }
  .audio-podcast--no-bar .audio-podcast--bottom .audio-player {
    margin-top: 0; }
    @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
      .audio-podcast--no-bar .audio-podcast--bottom .audio-player {
        height: auto; } }

/* ------- AUDIO PLAYER WIDGET ------- END -------- */
.total-items {
  margin-bottom: 30px; }

@media print, screen and (max-width: 39.99875em) {
  .total-item {
    display: flex;
    align-items: center;
    gap: 20px; } }

.total-item p {
  color: #2c8a82;
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 0; }

.total-count {
  font-size: 39.06px;
  line-height: 45px; }
  @media print, screen and (min-width: 40em) {
    .total-count {
      font-size: 61.04px;
      line-height: 66px; } }

.figures-content ul {
  margin-left: 0; }
  .figures-content ul li {
    list-style: none; }

.facts li {
  display: flex;
  margin-bottom: 1rem; }
  .facts li .fact-lbl {
    color: #2c8a82;
    min-width: 120px; }

.fields {
  font-family: "Open-Sans";
  margin-top: 3rem;
  -moz-column-count: 2;
  column-count: 2; }
  @media print, screen and (min-width: 64em) {
    .fields {
      -moz-column-count: 3;
      column-count: 3; } }
  .fields li {
    margin-bottom: 1.5rem;
    margin-right: 1.5rem; }
    @media print, screen and (min-width: 64em) {
      .fields li {
        min-width: 20rem;
        margin-bottom: 0.5rem; } }

.hero-about {
  background-color: #f0ede3;
  padding: 39px;
  text-align: center; }

.about-entry {
  margin-top: 53px; }
  .about-entry__section {
    padding-bottom: 40px;
    margin-top: 40px; }
    @media print, screen and (min-width: 40em) {
      .about-entry__section {
        display: flex;
        gap: 23px; } }
    .about-entry__section:not(:last-child) {
      border-bottom: 1px solid #d2e4e3; }
    @media print, screen and (max-width: 39.99875em) {
      .about-entry__section-partners {
        text-align: center; } }
    @media print, screen and (max-width: 39.99875em) {
      .about-entry__section--main .about-entry__title {
        text-align: center; } }
  @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
    .about-entry__title {
      width: 230px; } }
  @media print, screen and (min-width: 64em) {
    .about-entry__title {
      width: 330px; } }
  .about-entry__title h2 {
    color: #2c8a82;
    font-weight: 700;
    font-size: 25px;
    line-height: 35px; }
    @media print, screen and (min-width: 40em) {
      .about-entry__title h2 {
        font-size: 31.25px;
        line-height: 43px; } }
  .about-entry__content {
    flex: 1; }
    @media print, screen and (max-width: 39.99875em) {
      .about-entry__content {
        margin-top: 20px; } }
    .about-entry__content-inner p {
      font-size: 20px; }
      .about-entry__content-inner p:not(:last-child) {
        margin-bottom: 30px; }
      .about-entry__content-inner p:last-child {
        margin-bottom: 0; }
    .about-entry__content-inner h3 {
      font-size: 25px;
      font-weight: 700;
      line-height: 35px; }

.about-section {
  padding: 60px 0; }
  .about-section.about-editors {
    text-align: center;
    background-color: #efece2; }
  .about-section.about-sites {
    text-align: center; }
  .about-section.about-products, .about-section.about-ads {
    background-color: #efece2; }
  .about-section__title {
    text-align: center; }
    .about-section__title h2 {
      font-weight: 700;
      font-size: 31.25px;
      line-height: 37px; }
      @media print, screen and (min-width: 40em) {
        .about-section__title h2 {
          font-size: 48.83px;
          line-height: 53px; } }
    .about-section__title p {
      margin-top: 40px;
      font-weight: 700;
      font-size: 25px;
      line-height: 35px; }
      @media print, screen and (min-width: 64em) {
        .about-section__title p {
          width: 890px;
          margin: 0 auto; } }
  .about-section__content {
    margin-top: 30px; }
    .about-section__content ul {
      margin-top: 30px; }
      @media print, screen and (min-width: 64em) {
        .about-section__content ul {
          margin-left: 0; } }
      .about-section__content ul li {
        list-style: none;
        font-weight: 700;
        font-size: 25px;
        line-height: 35px; }
        .about-section__content ul li:not(:last-child) {
          margin-bottom: 30px; }
  @media print, screen and (min-width: 64em) {
    .about-section__desc {
      width: 890px;
      margin: 0 auto; } }
  .about-section__desc p {
    font-size: 20px;
    font-weight: 35px;
    font-family: "Open-Sans"; }

.chief-items {
  display: flex;
  gap: 20px; }
  @media print, screen and (min-width: 40em) {
    .chief-items {
      gap: 45px;
      justify-content: center; } }
  .chief-items:not(:last-child) {
    margin-bottom: 30px; }
  @media print, screen and (max-width: 39.99875em) {
    .chief-items {
      flex-flow: nowrap;
      overflow-x: scroll;
      -ms-scroll-snap-type: x mandatory;
          scroll-snap-type: x mandatory;
      margin-left: -1rem !important;
      display: flex;
      padding-left: 10px;
      padding-right: 20px;
      -ms-overflow-style: none;
      scrollbar-width: none; }
      .chief-items::-webkit-scrollbar {
        display: none; }
      .chief-items > .chief-item {
        width: 128px;
        scroll-snap-align: center;
        flex: 0 0 auto; } }

.chief-item__img {
  width: 190px;
  height: 190px; }
  @media print, screen and (max-width: 39.99875em) {
    .chief-item__img {
      width: 128px;
      height: 128px; } }
  @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
    .chief-item__img {
      width: 100px;
      height: 100px; } }

@media print, screen and (max-width: 39.99875em) {
  .about-products {
    padding-bottom: 0; } }

@media print, screen and (max-width: 39.99875em) {
  .about-products__content {
    text-align: center; } }

@media print, screen and (min-width: 40em) {
  .about-products__content {
    display: flex;
    gap: 26px; } }

@media print, screen and (min-width: 64em) {
  .about-products__content {
    width: 1118px;
    margin: 0 auto; } }

@media print, screen and (max-width: 39.99875em) {
  .about-products__desc ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    row-gap: 20px;
    -moz-column-gap: 40px;
         column-gap: 40px;
    margin-bottom: 30px; }
    .about-products__desc ul li {
      margin-bottom: 0 !important;
      font-weight: 700;
      font-size: 20px;
      line-height: 33px; } }

.about-partners {
  margin-top: 40px;
  display: flex;
  gap: 52px; }
  @media print, screen and (max-width: 39.99875em) {
    .about-partners {
      text-align: center;
      flex-direction: column;
      align-items: center; } }

@media print, screen and (min-width: 40em) {
  .about-ads__content {
    display: flex;
    gap: 82px;
    align-items: center; } }

@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .about-ads__img {
    flex: 1 0 50%; } }

@media print, screen and (min-width: 64em) {
  .about-ads__img {
    flex: 1 0 auto; } }

@media print, screen and (max-width: 39.99875em) {
  .about-ads__desc {
    text-align: center; } }

.about-ads__desc ul li .icomoon-icon {
  background: #d2e4e3;
  border-radius: 100px;
  color: #172f2f;
  font-size: 18px;
  width: 36px;
  height: 36px;
  display: flex;
  justify-content: center;
  align-items: center; }

.about-ads__desc ul li a {
  display: flex;
  gap: 30px; }

.writers-list.slider-v1 .media-object-img img {
  width: 58.33px;
  height: 58.33px; }

.writers-lists .writers-list__item {
  background-color: #ffffff;
  padding: 20px; }
  .writers-lists .writers-list__item .media-object {
    margin-bottom: 0; }
    .writers-lists .writers-list__item .media-object-img img {
      width: 75px;
      height: 75px; }
      @media (min-width: 1024px) and (max-width: 1181px) {
        .writers-lists .writers-list__item .media-object-img img {
          width: 55px !important;
          height: 55px !important; } }

.cookie-overlay {
  position: fixed;
  bottom: 0;
  background-color: #d2e4e3; }
  .cookie-overlay--small {
    width: 396px;
    border-radius: 20px 20px 0px 0px;
    padding: 24px;
    z-index: 999; }
    @media print, screen and (max-width: 39.99875em) {
      .cookie-overlay--small {
        width: 100%; } }
    @media print, screen and (min-width: 64em) {
      .cookie-overlay--small {
        left: 29px; } }
  .cookie-overlay--large {
    z-index: 99;
    width: 100%;
    left: 0;
    right: 0;
    padding: 24px; }
    @media print, screen and (max-width: 39.99875em) {
      .cookie-overlay--large {
        border-radius: 20px 20px 0px 0px;
        display: none; } }
    @media print, screen and (min-width: 40em) {
      .cookie-overlay--large {
        padding: 40px; } }
  .cookie-overlay .cookie-close {
    cursor: pointer;
    position: absolute;
    top: 20px;
    left: 20px; }
    .cookie-overlay .cookie-close i {
      font-size: 17px; }
  .cookie-overlay__content {
    text-align: center; }
    .cookie-overlay__content h3 {
      font-weight: 700;
      font-size: 25px;
      padding: 0 10px; }
    .cookie-overlay__content p {
      margin-top: 8px;
      font-size: 16px; }
  .cookie-overlay__actions {
    text-align: center;
    display: flex;
    justify-content: center; }
    .cookie-overlay--small .cookie-overlay__actions {
      gap: 16px; }
    .cookie-overlay--large .cookie-overlay__actions {
      gap: 16px; }
      @media print, screen and (min-width: 40em) {
        .cookie-overlay--large .cookie-overlay__actions {
          gap: 20px;
          margin-top: 40px; } }
    .cookie-overlay__actions .button {
      width: 162px;
      padding: 8px;
      font-size: 20px; }
      .cookie-overlay__actions .button.btn-disagree {
        background: #000000; }
        .cookie-overlay__actions .button.btn-disagree:hover {
          background-color: rgba(0, 0, 0, 0.8); }

/* ----- Live blog list styles ------ START ------ */
.live-ticker {
  background-color: #bd3c2f;
  color: #ffffff;
  display: flex;
  align-items: center;
  padding: 5px 10px;
  margin-bottom: 30px; }
  @media print, screen and (max-width: 39.99875em) {
    .live-ticker {
      justify-content: center;
      margin-bottom: 23px; } }
  .live-ticker .live-ticker-title {
    font-size: 22px;
    font-weight: 900;
    padding-right: 15px;
    margin-right: 15px;
    display: flex;
    align-items: center;
    position: relative; }
    .live-ticker .live-ticker-title:after {
      content: "";
      position: absolute;
      width: 1px;
      height: 20px;
      background-color: #ffffff;
      top: 8px;
      left: 0; }
    .live-ticker .live-ticker-title i {
      font-size: 15px;
      margin-left: 10px; }
  .live-ticker .live-ticker-time {
    font-family: "Open-Sans"; }
    .live-ticker .live-ticker-time span {
      margin-right: 5px; }

.live-blog .Caption a,
.live-blog .content a {
  color: #2c8a82; }

.live-blog .Caption .Vote,
.live-blog .content .Vote {
  margin-right: 10px; }

.live-blog .scrbbl-sitePreview {
  background-color: #ffffff;
  padding: 1rem; }

.live-blog .label.breaking-news {
  font-size: 30px;
  display: flex;
  align-items: center; }

.live-blog .article-item-img {
  margin-bottom: 0; }
  .live-blog .article-item-img img {
    aspect-ratio: 4/3;
    -o-object-fit: cover;
    object-fit: cover; }

.live-blog .article-item-title {
  margin-bottom: 1rem; }
  .live-blog .article-item-title h1,
  .live-blog .article-item-title h2 {
    font-size: 1.875rem; }
    @media print, screen and (min-width: 64em) {
      .live-blog .article-item-title h1,
      .live-blog .article-item-title h2 {
        font-size: 2.375rem;
        font-weight: 900;
        margin-bottom: 0; } }

.live-blog .article-item-content p {
  color: #000000;
  margin-bottom: 30px;
  font-size: 26px;
  font-family: "skolar-sans-arabic"; }
  @media print, screen and (max-width: 39.99875em) {
    .live-blog .article-item-content p {
      font-size: 22px; } }

.live-blog .entry-highlight {
  border-top: 1px solid #dcdfdf;
  padding-top: 30px;
  margin-bottom: 30px;
  font-weight: bold; }
  .live-blog .entry-highlight ul {
    margin-left: 0;
    margin-top: 0;
    margin-bottom: 0; }
  .live-blog .entry-highlight li {
    list-style: none;
    position: relative;
    padding-left: 15px; }
    .live-blog .entry-highlight li:before {
      content: "";
      position: absolute;
      left: 0;
      top: 9px;
      width: 8px;
      height: 8px;
      border-radius: 100%;
      background-color: #000000; }
    .live-blog .entry-highlight li:not(:last-child) {
      margin-bottom: 20px; }

.live-blog .hero-top {
  background-color: #ffffff;
  padding: 15px; }
  @media print, screen and (min-width: 64em) {
    .live-blog .hero-top {
      padding: 30px; } }
  @media print, screen and (min-width: 64em) {
    .live-blog .hero-top .article-item {
      margin-bottom: 0; } }
  .live-blog .hero-top .article-item-info {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    height: 100%; }
  .live-blog .hero-top .article-item-title h1 {
    font-size: 2rem; }
    @media print, screen and (min-width: 64em) {
      .live-blog .hero-top .article-item-title h1 {
        font-size: 3rem; } }

.live-article-meta {
  margin-top: auto;
  display: flex;
  align-items: center;
  justify-content: space-between; }
  .live-article-meta .article-item-meta {
    margin-top: 0;
    margin-bottom: 0; }

@media print, screen and (min-width: 64em) {
  .liveblog-capsule {
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 87.5rem;
    margin-left: auto;
    margin-right: auto;
    padding: 0; } }
  @media print, screen and (min-width: 64em) and (min-width: 40em) {
    .liveblog-capsule {
      padding-right: 1.28125rem;
      padding-left: 1.28125rem; } }

.liveblog-capsule .inner {
  font-family: "Open-Sans";
  display: flex;
  align-items: center;
  padding: 20px 16px;
  background: #f7f7f7; }

.liveblog-capsule.active .inner {
  background: #fffd38; }

.liveblog-capsule span {
  display: flex;
  align-items: center;
  margin-right: 8px; }
  .liveblog-capsule span:first-child {
    text-transform: uppercase;
    margin-right: 16px; }
    .liveblog-capsule span:first-child:before {
      content: " ";
      background: url(../img/icon-live-blog.png) no-repeat 50%;
      width: 20px;
      height: 15px;
      background-size: contain;
      margin-right: 8px; }

body.article-liveblog .entry-article-liveblog {
  background: #f7f7f7;
  border-top: 1px solid #dadfe1;
  padding-top: 18px; }
  @media (min-width: 768px) {
    body.article-liveblog .entry-article-liveblog {
      padding-top: 12px; } }

.liveblog .content {
  padding: 20px 1.8rem 20px 20px;
  border-left: 1px solid #dcdfdf;
  line-height: 1.5; }
  @media print, screen and (min-width: 64em) {
    .liveblog .content {
      padding: 20px 4rem 20px 20px; } }
  .liveblog .content div {
    font-size: 24px;
    color: #172F2F;
    font-family: "skolar-sans-arabic"; }
    @media print, screen and (max-width: 39.99875em) {
      .liveblog .content div {
        font-size: 20px; } }
    .liveblog .content div:not(:last-child):not(:only-child):not(:empty):not(.LinkImage) {
      margin-bottom: 15px; }
  .liveblog .content p > img {
    margin-bottom: 0; }
  .liveblog .content img {
    width: 100%;
    margin-bottom: 15px; }
  .liveblog .content .twitter-widget {
    margin: 0 auto; }
  @media print, screen and (min-width: 64em) {
    .liveblog .content h1,
    .liveblog .content h2,
    .liveblog .content h3 {
      font-size: 1.875rem;
      margin-bottom: 15px;
      font-weight: bold; } }
  .liveblog .content .LinkDescription {
    font-family: "Open-Sans";
    margin-bottom: 1rem;
    font-size: 20px; }
  .liveblog .content blockquote {
    font-style: normal;
    margin-bottom: 0;
    padding: 2.25rem 3.5rem;
    position: relative;
    border-right: 0; }
    .liveblog .content blockquote:before {
      display: block;
      content: "“";
      position: absolute;
      bottom: 10px;
      left: 5px;
      color: #2c8a82;
      font-size: 4.125rem; }
    .liveblog .content blockquote:after {
      display: block;
      content: "“";
      position: absolute;
      top: 10px;
      right: 0;
      color: #2c8a82;
      font-size: 4.125rem;
      transform: scale(-1, 1); }
    .liveblog .content blockquote p {
      color: #000000; }
      .liveblog .content blockquote p:last-child {
        font-family: "Open-Sans";
        margin-bottom: 0;
        color: inherit;
        font-style: normal; }
  .liveblog .content .row {
    background-color: #ffffff;
    padding: 1rem;
    display: flex;
    align-items: center; }
    .liveblog .content .row h2 {
      margin: 0; }
    .liveblog .content .row img {
      margin-bottom: -1rem; }
    .liveblog .content .row .col-md-3 {
      width: 20%;
      display: inline-block;
      margin-left: 1rem; }
    .liveblog .content .row .col-md-9 {
      width: 70%;
      display: inline-block; }
  .liveblog .content .youtube-post iframe {
    width: 100%;
    height: 380px; }
  .liveblog .content iframe,
  .liveblog .content object,
  .liveblog .content embed {
    max-width: 100%; }
  .liveblog .content .jwplayer {
    height: 173px; }
    @media print, screen and (min-width: 40em) {
      .liveblog .content .jwplayer {
        height: 380px; } }

.liveblog .liveblog-content .content,
.lb-items {
  position: relative; }

.lb-items ul {
  list-style: none;
  margin: 0;
  padding: 0; }

.lb-item {
  color: #000000; }

.RecentPostsWidget li:first-child .post-date {
  padding: 0 20px 0 0; }
  .RecentPostsWidget li:first-child .post-date:before {
    top: 0; }

.liveblog .liveblog-content:before {
  content: "";
  border-right: 1px solid #dcdfdf;
  position: absolute;
  height: 68px;
  margin: 0; }

.liveblog .post-date {
  position: relative;
  padding: 20px 20px 15px 0;
  color: #888; }

.liveblog .post-date:before {
  content: " ";
  border-radius: 50%;
  position: absolute;
  top: 25px;
  margin-left: -1.5rem;
  width: 10px;
  height: 10px;
  background: #2c8a82; }

.liveblog .post-date time {
  padding-left: 8px; }

.liveblog .post-footer {
  padding: 16px 20px;
  position: relative;
  border-right: 1px solid #dcdfdf;
  border-bottom: 1px solid #dcdfdf;
  border-width: 0 1px 1px; }

.liveblog .post-footer ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  align-items: center; }

.liveblog .post-footer ul li.author-name {
  font-weight: 700;
  margin-bottom: 0; }

.liveblog .post-footer ul li:first-child {
  padding-left: 0; }

.liveblog .post-footer ul li {
  padding: 0 8px;
  font-family: "Open-Sans";
  font-size: 0.875rem; }

.liveblog .post-footer ul li:last-child {
  color: #888;
  position: relative; }

.liveblog .post-footer ul li:last-child:before {
  content: "|";
  position: absolute;
  left: -1px; }

#live-list-update-button {
  width: 100%;
  margin: 20px auto;
  background: #ffcd50;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 3px;
  cursor: pointer;
  border-radius: 10px;
  color: #000000;
  font-family: "Open-Sans";
  font-size: 14px; }
  @media print, screen and (min-width: 64em) {
    #live-list-update-button {
      width: 518px;
      margin: 0 auto;
      position: absolute;
      top: 20px;
      left: 0;
      right: 0; } }
  #live-list-update-button:hover {
    background-color: #ffe195; }
  #live-list-update-button.active {
    display: flex; }
  #live-list-update-button #live-list-update-button .update-text {
    padding-right: 10px;
    line-height: 1; }
  #live-list-update-button .icon-refresh {
    display: flex;
    margin-right: 10px;
    width: 18px; }
    #live-list-update-button .icon-refresh svg {
      fill: #000000; }

.liveblog .pagination-wrapper {
  overflow: hidden;
  position: relative;
  margin-bottom: 3rem; }
  .liveblog .pagination-wrapper:before {
    width: 1px;
    background: #dcdfdf;
    content: " ";
    position: absolute;
    left: 0;
    height: 100%; }
  .liveblog .pagination-wrapper .pagination {
    font-family: "STIX Two Text";
    font-weight: bold;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 20px;
    margin: 30px 0 0;
    position: relative; }
    .liveblog .pagination-wrapper .pagination .prev {
      margin-right: auto; }
    .liveblog .pagination-wrapper .pagination .next {
      margin-left: auto; }
    .liveblog .pagination-wrapper .pagination .shortcut {
      display: flex;
      flex-wrap: wrap; }
      .liveblog .pagination-wrapper .pagination .shortcut > * {
        margin: 0 10px;
        display: flex; }
    .liveblog .pagination-wrapper .pagination a {
      padding: 0;
      color: #2c8a82; }
      .liveblog .pagination-wrapper .pagination a:hover {
        background: transparent;
        color: #4d998a; }

#start-live {
  overflow: clip;
  position: relative;
  margin-top: 3rem; }

#hero-side {
  background-color: #ffffff;
  padding: 30px;
  visibility: hidden; }
  @media print, screen and (max-width: 39.99875em) {
    #hero-side {
      display: none; } }
  @media print, screen and (min-width: 64em) {
    #hero-side {
      position: -webkit-sticky;
      position: sticky;
      top: 50px; } }
  #hero-side .article-item {
    margin-bottom: 20px; }
  #hero-side .article-item-title h2 {
    font-size: 24px; }
  #hero-side .article-item-content p {
    font-size: 15px;
    margin-bottom: 35px; }

/* ----- Live blog list styles ------ END ------ */
.advertorial {
  display: flex;
  position: relative;
  margin-bottom: 35px; }
  @media print, screen and (max-width: 39.99875em) {
    .advertorial {
      flex-direction: column;
      margin-bottom: 30px; } }
  @media print, screen and (min-width: 40em) {
    .advertorial__img {
      flex: 0 0 auto;
      width: 48%; } }
  .advertorial__img img {
    width: 100%; }
    @media print, screen and (min-width: 40em) {
      .advertorial__img img {
        height: 100%;
        -o-object-fit: cover;
           object-fit: cover; } }
  .advertorial__info {
    flex: auto;
    background: #aed7c6;
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 26px; }
    @media print, screen and (min-width: 40em) {
      .advertorial__info {
        padding: 72px 44px; } }
    .advertorial__info h3 {
      font-size: 31px;
      line-height: 37px;
      font-weight: 700;
      margin: 0; }
    .advertorial__info p {
      font-family: "skolar-sans-arabic";
      font-size: 26px;
      line-height: 30px; }
      .advertorial__info p:not(:last-child) {
        margin-bottom: 20px; }
  .advertorial__logo img {
    width: 100px; }
  .advertorial__tag {
    position: absolute;
    top: 0;
    left: 0; }
    .advertorial__tag a {
      display: inline-flex;
      padding: 5px 20px;
      justify-content: center;
      align-items: center;
      gap: 10px;
      background: #fbe55b;
      font-family: "skolar-sans-arabic";
      font-size: 26px;
      line-height: 30px; }

@media print, screen and (min-width: 40em) {
  .flex-equal {
    height: 100%; }
    .hero-main .flex-equal {
      height: auto; }
    .flex-equal.articles-grid {
      height: auto; }
    .flex-equal .article-item {
      height: 100%;
      display: flex;
      flex-direction: column;
      margin-bottom: 1rem; }
      .hero-main .flex-equal .article-item {
        margin-bottom: 0; }
    .flex-equal .article-item-content {
      margin-bottom: 0.5rem; }
    .flex-equal .article-item-info {
      display: flex;
      flex-direction: column;
      height: 100%; }
      .flex-equal .article-item-info .article-item-meta {
        margin-top: auto; }
    .flex-equal .article-item-title h3 {
      margin-bottom: 0; } }

@media print, screen and (max-width: 39.99875em) {
  .lg-w-grid-border > div .article-item {
    width: 100%; } }

@media print, screen and (max-width: 63.99875em) {
  .lg-w-grid-border > div .article-item {
    padding-bottom: 1rem;
    border-bottom: 1px solid #d1d5d5; } }

.lg-w-grid-border .grid-items > div .article-item {
  padding-bottom: 1rem;
  border-bottom: 1px solid #d1d5d5; }

@media print, screen and (max-width: 39.99875em) {
  .lg-w-grid-border .grid-items > div:last-child .article-item {
    border-bottom: 1px solid transparent;
    padding-bottom: 0;
    margin-bottom: 0; } }

@media print, screen and (min-width: 40em) {
  .lg-w-grid-border .grid-items > div:nth-last-child(2) .article-item,
  .lg-w-grid-border .grid-items > div:last-child .article-item {
    border-bottom: 1px solid transparent;
    padding: 0; } }

.lg-w-grid-border .grid-items > div:nth-child(odd) {
  position: relative; }
  .lg-w-grid-border .grid-items > div:nth-child(odd):after {
    content: "";
    position: absolute;
    background-color: #cacaca;
    height: 101%;
    width: 1.3px;
    right: -20.5px;
    top: 0; }
    @media print, screen and (max-width: 39.99875em) {
      .lg-w-grid-border .grid-items > div:nth-child(odd):after {
        background-color: transparent; } }

.articles-item-list > div {
  margin-bottom: 1rem; }
  .articles-item-list > div:not(:last-child) {
    border-bottom: 1px solid #d1d5d5;
    padding-bottom: 1rem; }

@media print, screen and (max-width: 39.99875em) {
  .articles-item-list .article-item {
    display: inline-block;
    width: 100%;
    max-width: 100%; }
    .articles-item-list .article-item .article-item-img {
      float: right;
      width: 50%;
      margin-bottom: 0;
      margin-right: 20px; }
      .articles-item-list .article-item .article-item-img > a > img {
        aspect-ratio: 4/3;
        width: 100%;
        -o-object-fit: cover;
           object-fit: cover; } }

@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .block-wrapper .articles-item-list .article-item {
    display: flex;
    flex-direction: row-reverse; }
    .block-wrapper .articles-item-list .article-item .article-item-img {
      width: 200px;
      margin-bottom: 0;
      margin-left: 1rem; } }

@media print, screen and (max-width: 63.99875em) {
  .articles-item-list .label {
    display: none; } }

.has-separator-grid.grid-items > div {
  padding-bottom: 0; }
  @media print, screen and (min-width: 40em) {
    .has-separator-grid.grid-items > div {
      padding-bottom: 1rem; } }

.has-separator-grid.grid-items > div .article-item {
  border-bottom: 1px solid #d1d5d5; }
  @media print, screen and (max-width: 39.99875em) {
    .has-separator-grid.grid-items > div .article-item {
      margin-bottom: 1rem;
      padding-bottom: 1rem; } }
  @media print, screen and (min-width: 64em) {
    .has-separator-grid.grid-items > div .article-item {
      padding-bottom: 1rem; } }

@media print, screen and (min-width: 40em) {
  .has-separator-grid.grid-items > div:nth-last-child(2) .article-item,
  .has-separator-grid.grid-items > div:last-child .article-item {
    border-bottom: 1px solid transparent;
    padding-bottom: 0; } }

.vertical-separator > div {
  position: relative; }
  .vertical-separator > div:not(:last-child):after {
    content: "";
    position: absolute;
    background-color: #cacaca;
    height: 100%;
    width: 1px;
    right: -20.5px;
    top: 0; }
    .main-container > .vertical-separator > div:not(:last-child):after {
      height: 100%; }
    @media print, screen and (max-width: 39.99875em) {
      .vertical-separator > div:not(:last-child):after {
        background-color: transparent; } }
    @media print, screen and (max-width: 63.99875em) {
      .small-grid-collapse > .vertical-separator > div:not(:last-child):after {
        background-color: transparent; } }

.vertical-separator.has-separator-grid > div:nth-child(even):after {
  background-color: transparent; }

@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .vertical-separator.grid-column-2 > div:nth-child(even):after {
    background-color: transparent; } }

.vertical-separator.grid-column-4 > div:nth-child(4n):after {
  background-color: transparent; }

@media print, screen and (max-width: 63.99875em) {
  .vertical-separator.hero-wrap > div:not(:last-child):after, .vertical-separator.grid-column > div:not(:last-child):after, .vertical-separator.video-section > div:not(:last-child):after, .vertical-separator.main > div:not(:last-child):after, .vertical-separator.lg-w-grid-border > div:not(:last-child):after {
    background-color: transparent; } }

@media print, screen and (max-width: 63.99875em) {
  .vertical-separator.articles-grid > div:after {
    background-color: transparent; } }

.grid-style-v2 > div:not(:last-child) {
  position: relative; }
  .grid-style-v2 > div:not(:last-child):after {
    content: "";
    position: absolute;
    background-color: #cacaca;
    height: 100%;
    width: 1.3px;
    right: -1rem;
    top: 0;
    background-color: transparent; }

.grid-style-v2 .grid-items > .cell:not(:last-child) {
  border-bottom: 1px solid #d1d5d5;
  margin-bottom: 1rem; }

@media print, screen and (max-width: 39.99875em) {
  .grid-items .article-item {
    display: inline-block; }
    .grid-items .article-item .article-item-img {
      width: 100px;
      margin-top: 0.25rem;
      margin-left: 1.5rem;
      margin-bottom: 0;
      float: right;
      position: relative; } }

@media print, screen and (max-width: 39.99875em) {
  .grid-column > .cell:not(:last-child) {
    border-bottom: 1px solid #d1d5d5;
    margin-bottom: 1rem; } }

@media print, screen and (min-width: 64em) {
  .grid-column .main-item .article-item-content {
    height: 55px;
    overflow: hidden; } }

@media print, screen and (max-width: 39.99875em) {
  .grid-column-2 {
    gap: 1.5rem; } }

@media print, screen and (max-width: 39.99875em) {
  .grid-column-2 > .cell:not(:last-child) .section-wrapper {
    border-bottom: 1px solid #d1d5d5; } }

.grid-column-2 .media-article-list > .article-list-item:nth-child(1) .media-object-section:first-child,
.grid-column-2 .media-article-list > .article-list-item:nth-child(2) .media-object-section:first-child {
  overflow: hidden; }

.grid-column-2 .media-article-list h3 {
  font-weight: normal; }

@media print, screen and (max-width: 39.99875em) {
  .sm-separator {
    border-bottom: 1px solid #d1d5d5; } }

.articles-grid .article-item {
  padding-bottom: 2rem; }
  @media print, screen and (max-width: 39.99875em) {
    .articles-grid .article-item {
      margin-bottom: 1rem;
      padding-bottom: 0; } }

.articles-grid.has-separator > div {
  padding-bottom: 1rem; }
  .articles-grid.has-separator > div .article-item {
    border-bottom: 1px solid #d1d5d5;
    padding-bottom: 1rem; }
    @media print, screen and (max-width: 39.99875em) {
      .articles-grid.has-separator > div .article-item {
        margin-bottom: 1rem; } }
  .articles-grid.has-separator > div:nth-child(1n + 1):nth-last-child(-n + 1):not(.hide-for-large) .article-item,
  .articles-grid.has-separator > div:nth-child(1n + 1):nth-last-child(-n + 1):not(.hide-for-large) ~ .cell .article-item {
    border-bottom-color: transparent; }
  @media print, screen and (min-width: 40em) {
    .articles-grid.has-separator > div:nth-child(2n + 1):nth-last-child(-n + 2):not(.hide-for-large) .article-item,
    .articles-grid.has-separator > div:nth-child(2n + 1):nth-last-child(-n + 2):not(.hide-for-large) ~ .cell .article-item {
      border-bottom-color: transparent; } }
  @media print, screen and (min-width: 64em) {
    .articles-grid.has-separator > div:nth-child(3n + 1):nth-last-child(-n + 3):not(.hide-for-large) .article-item,
    .articles-grid.has-separator > div:nth-child(3n + 1):nth-last-child(-n + 3):not(.hide-for-large) ~ .cell .article-item {
      border-bottom-color: transparent; } }

@media print, screen and (min-width: 64em) {
  .articles-grid.large-up-4.has-separator > div:nth-child(4n + 1):nth-last-child(-n + 4):not(.hide-for-large) .article-item,
  .articles-grid.large-up-4.has-separator > div:nth-child(4n + 1):nth-last-child(-n + 4):not(.hide-for-large) ~ .cell .article-item {
    border-bottom-color: transparent; } }

.has-top-separator > .cell {
  border-top: 1px solid #d1d5d5;
  padding-top: 1rem; }

.bottom-border.grid-items > div {
  border-bottom: 1px solid #d1d5d5; }
  @media print, screen and (max-width: 39.99875em) {
    .bottom-border.grid-items > div {
      margin-bottom: 1.5rem; } }

.bottom-border > .article-item {
  border-bottom: 1px solid #d1d5d5;
  padding-bottom: 1rem; }
  @media print, screen and (max-width: 39.99875em) {
    .bottom-border > .article-item {
      margin-bottom: 1.5rem; } }

.top-border {
  border-top: 1px solid #d1d5d5;
  padding-top: 1rem;
  margin-top: 1rem; }

/* Drupal admin styles ----- START -----*/
body.user-logged-in ul.tabs.primary {
  list-style: none;
  margin-right: 0; }
  body.user-logged-in ul.tabs.primary li {
    background-color: #f8f8f8;
    border-radius: 5px;
    display: inline-block;
    margin: 0 5px 8px;
    padding: 5px 15px; }
    body.user-logged-in ul.tabs.primary li:hover, body.user-logged-in ul.tabs.primary li.active {
      background: #2c8a82; }
      body.user-logged-in ul.tabs.primary li:hover a, body.user-logged-in ul.tabs.primary li.active a {
        color: white; }

@media print, screen and (max-width: 39.99875em) {
  body.user-open {
    transition: all 0.25s ease-in; }
    body.user-open:after {
      position: fixed;
      top: 0;
      right: 0;
      bottom: 0;
      right: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.8);
      transition: all 0.25s ease-in 0.2s;
      z-index: 1;
      content: ""; } }

.ajax-progress-fullscreen {
  background-image: url(../img/loading.svg);
  background-size: cover; }

/* Drupal admin styles ----- END -----*/
.ajax-progress {
  background-image: none;
  height: 50px;
  width: 50px;
  background-color: transparent;
  margin: 10px auto;
  display: block;
  float: none !important; }

* {
  -webkit-tap-highlight-color: transparent; }

:focus {
  outline: none; }

::-moz-focus-inner {
  border: 0; }

.show-for-printable-area {
  display: none; }

input.radius,
.input-group > input:first-child {
  border-radius: 4px; }

.search-form input.input-group-field {
  border-radius: 4px !important; }

textarea {
  height: 10rem; }

a {
  transition: color 0.25s ease 0s, background-color 0.25s ease 0s, opacity 0.25s ease 0s; }
  a.hovered {
    color: #5f7176; }
  a.classic:hover {
    text-decoration: underline;
    color: #2c8a82; }

.off-canvas {
  height: 100%; }

button.gray.hollow,
.button.gray.hollow {
  color: #717171;
  border: 1px solid #dcdfdf; }
  button.gray.hollow:hover,
  .button.gray.hollow:hover {
    color: #2c8a82;
    border-color: #2c8a82; }

button.light-green,
.button.light-green {
  background-color: #ecf4f3;
  color: #000000; }
  button.light-green:hover,
  .button.light-green:hover {
    background-color: #2c8a82; }

button.radius,
.button.radius {
  border-radius: 4px; }

button.primary,
.button.primary {
  color: #ffffff; }

.button.primary:hover, .button.primary:focus {
  color: #ffffff; }

.button.primary-light {
  background-color: #f7fafa;
  color: #4d8a88;
  font-family: "Open-Sans"; }
  .button.primary-light:hover {
    background-color: #2c8a82;
    color: #ffffff; }

/*ICONS*/
.icon-user-circle-o:before,
.icon-check-green:before,
.icon-news:before,
.icon-envelop1:before,
.icon-plus-green:before,
.icon-bookmark-outline:before,
.icon-telegram:before,
.icon-share:before,
.icon-envelop2:before,
.icon-play-green:before,
.icon-calendar:before,
.icon-live:before,
.icon-share2:before,
.icon-menu:before {
  color: inherit; }

.meta-ico {
  display: inline-block;
  margin-right: 10px; }
  .meta-ico i {
    font-size: 15px; }
  .meta-ico a {
    color: #2c8a82; }
    .meta-ico a:hover {
      color: #000000; }

.red-bullets li {
  list-style: none;
  padding-left: 1rem;
  position: relative; }
  .red-bullets li:before {
    content: "\e914";
    /* Add content: \2022 is the CSS Code/unicode for a bullet */
    color: #ce4242;
    font-weight: bold;
    font-size: 8px;
    position: absolute;
    margin-top: 0;
    left: 0;
    top: 10px;
    font-family: "icomoon"; }
    [dir="ltr"] .red-bullets li:before {
      top: 7px; }

.dark-theme main {
  background-color: #000000;
  color: #ffffff; }
  .dark-theme main a {
    color: #ffffff; }

.dark-theme hr {
  border-bottom-color: #383838; }

/* Search Area Styles ----- START ----- */
@media print, screen and (max-width: 39.99875em) {
  .search-frame {
    margin-top: 15px; } }

.search-frame iframe {
  border: none;
  width: 100%;
  min-height: 400px; }

.search-area {
  position: relative;
  padding-bottom: 0.5rem;
  font-size: 18px; }
  .search-area .search-input {
    padding-right: 1.5rem;
    background-color: transparent;
    border-top: transparent;
    border-left: transparent;
    border-right: transparent;
    border-bottom: 1px solid #959595;
    color: #2c8a82;
    margin-bottom: 0;
    box-shadow: none; }
    .search-area .search-input:focus {
      outline: 0;
      box-shadow: 0 0 5px transparent; }
  .search-area i {
    position: absolute;
    top: 0;
    padding: 0.7rem 0; }
  .search-area input[type="submit"] {
    font-family: "icomoon" !important;
    position: absolute;
    top: 0;
    padding: 5px 0;
    right: 0;
    background: transparent;
    border: transparent;
    color: #2c8a82;
    font-size: 22px;
    cursor: pointer; }
  .canvas-panel .search-area input[type="text"],
  .canvas-panel .search-area .search-area--input {
    background-color: transparent;
    border-color: #647e7c;
    padding: 1rem;
    font-size: 18px;
    border-radius: 20px; }
    .canvas-panel .search-area input[type="text"]::-moz-placeholder, .canvas-panel .search-area .search-area--input::-moz-placeholder {
      color: #647e7c; }
    .canvas-panel .search-area input[type="text"]:-ms-input-placeholder, .canvas-panel .search-area .search-area--input:-ms-input-placeholder {
      color: #647e7c; }
    .canvas-panel .search-area input[type="text"]::placeholder,
    .canvas-panel .search-area .search-area--input::placeholder {
      color: #647e7c; }
  .canvas-panel .search-area input[type="submit"],
  .canvas-panel .search-area .search-area--submit {
    margin-right: 1rem;
    color: #ffffff;
    padding: 7px 0; }

.search-area--input {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 2.7375rem;
  margin: 0 0 1rem;
  border: 1px solid #959292;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  line-height: 1.8;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  display: flex;
  align-items: center;
  color: #647e7c; }

.search-area--submit {
  position: absolute;
  top: 0;
  left: 22px;
  background: transparent;
  border: transparent;
  font-size: 22px;
  cursor: pointer; }

.search-heading {
  color: #2c8a82; }

.search-section {
  color: #555555;
  margin-top: 2rem; }
  .search-section ul {
    margin-left: 0; }
    .search-section ul li {
      padding: 1rem 0;
      list-style: none; }
      .search-section ul li.hot a {
        position: relative; }
        .search-section ul li.hot a:after {
          content: "\e920";
          position: absolute;
          font-family: "icomoon" !important;
          left: -1.5rem;
          color: #ce4242; }

.main-header-inner .search-btn a {
  color: #2c8a82;
  font-weight: bold; }
  .main-header-inner .search-btn a i {
    color: #253c3a;
    margin-right: 6px; }

@media print, screen and (max-width: 39.99875em) {
  .search-results .article-item-img img {
    width: 100%; } }

@media print, screen and (max-width: 39.99875em) {
  .search-results .article-item-info {
    margin-top: 1rem; } }

.result-count {
  font-weight: 400;
  font-family: "Open-Sans";
  display: inline-block;
  color: #929898;
  font-size: 0.9375rem;
  margin-top: 0.3rem; }

/* Search Area Styles ----- END ----- */
.container {
  position: relative;
  width: 100%;
  margin: 0 auto;
  overflow-x: hidden; }
  .live-news1 .container {
    overflow-x: clip; }

main,
header,
footer {
  position: relative; }

html {
  height: 100%;
  scroll-behavior: smooth; }

main {
  margin: 0 auto;
  width: 100%; }
  @media print, screen and (max-width: 39.99875em) {
    main .grid-container {
      padding-right: 1rem;
      padding-left: 1rem; } }
  @media print, screen and (min-width: 64em) {
    body:not(.about-us):not(.about-page):not(.dark-theme):not(.path-journey):not(
    .page-node-type-podcast) main > div:first-child:not(.news-ticker-area) {
      margin-top: 2rem; } }

@media print, screen and (max-width: 39.99875em) {
  .content-wrap {
    margin-top: 15px; } }

.dark-bg {
  background-color: #000000;
  color: #ffffff; }
  .dark-bg.full {
    overflow: hidden;
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw; }
  .dark-bg .entry-content {
    color: #ffffff; }
  .dark-bg .entry-date {
    color: #dfdfdf; }

@media (min-width: 1024px) and (max-width: 1030px) {
  .sidebar-wrap,
  .static-column-wrap {
    width: 250px !important; } }

@media print, screen and (min-width: 64em) {
  .sidebar-wrap,
  .static-column-wrap {
    width: 309px;
    height: 100%; } }

@media print, screen and (max-width: 39.99875em) {
  .sidebar-wrap .block-wrapper,
  .static-column-wrap .block-wrapper {
    margin-top: 2rem; }
    .hero-main .sidebar-wrap .block-wrapper, .hero-main
    .static-column-wrap .block-wrapper {
      margin-top: 0; } }

@media print, screen and (max-width: 39.99875em) {
  .static-column-wrap {
    border-bottom: 1px solid #d1d5d5;
    margin-bottom: 1rem; } }

.block-wrapper:not(:last-child) {
  margin-bottom: 22px; }
  @media print, screen and (min-width: 64em) {
    .block-wrapper:not(:last-child) {
      margin-bottom: 2rem; } }
  .hero-main .block-wrapper:not(:last-child) {
    margin-bottom: 0; }

@media print, screen and (max-width: 39.99875em) {
  .block-wrapper {
    margin-bottom: 1rem; } }

@media print, screen and (min-width: 64em) {
  .block-wrapper#sticky-block {
    margin-bottom: 0; } }

.block-wrapper--border-top {
  border-top: 1px solid #d1d5d5;
  padding-top: 1rem; }

.block-wrapper--advertorial {
  background-color: #ffffff;
  padding: 8px;
  color: #8a8a8a;
  font-family: "Open-Sans";
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 20px; }
  @media print, screen and (min-width: 64em) {
    .block-wrapper--advertorial {
      margin-bottom: 72px; } }

.hero-main {
  margin-bottom: 1rem; }
  @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
    .hero-main .medium-12.small-order-3 {
      margin-top: 20px; } }
  @media print, screen and (max-width: 39.99875em) {
    .hero-main .main-item .article-item-img {
      margin-left: -1rem;
      margin-right: -1rem;
      height: 292px; }
      .hero-main .main-item .article-item-img img {
        height: 100%;
        -o-object-fit: cover;
           object-fit: cover; } }
  .hero-main .article-item-title h2 {
    font-weight: 900;
    font-size: 1.625rem;
    line-height: 1.6; }
    @media print, screen and (min-width: 64em) {
      .hero-main .article-item-title h2 {
        font-size: 2.1875rem;
        line-height: 1.4; } }
    [dir="ltr"] .hero-main .article-item-title h2 {
      font-weight: 600;
      line-height: initial; }
      @media print, screen and (min-width: 64em) {
        [dir="ltr"] .hero-main .article-item-title h2 {
          font-size: 2.25rem; } }
  .hero-main .entry-hightlight {
    font-size: 1rem;
    margin-top: 2rem;
    color: #000000; }
    [dir="ltr"] .hero-main .entry-hightlight {
      font-size: 1.0625rem;
      font-weight: 600; }
    .hero-main .entry-hightlight ul {
      margin-bottom: 0; }
    .hero-main .entry-hightlight li {
      position: relative; }
      [dir="rtl"] .hero-main .entry-hightlight li {
        margin-bottom: 0.5rem; }
      .hero-main .entry-hightlight li a {
        color: #000000;
        font-weight: bold; }
        [dir="ltr"] .hero-main .entry-hightlight li a {
          font-weight: 600; }
        .hero-main .entry-hightlight li a:hover {
          color: #2c8a82; }
    .hero-main .entry-hightlight time {
      color: #929898;
      margin-left: 5px;
      padding-left: 5px;
      font-size: 12px;
      position: relative; }
      .hero-main .entry-hightlight time:before {
        content: "";
        height: 10px;
        width: 1px;
        background-color: #929898;
        position: absolute;
        left: -1px;
        top: 3px; }
      @media print, screen and (max-width: 39.99875em) {
        .hero-main .entry-hightlight time {
          display: none; } }

.hero-after {
  margin-top: 2.5rem;
  padding-top: 1rem;
  border-top: 1px solid #d1d5d5; }

.section-wrapper:not(:last-child) {
  margin-bottom: 1rem; }

.block-title,
.section-title,
.page-title,
.title {
  text-transform: capitalize; }
  .block-title.title-italic a,
  .section-title.title-italic a,
  .page-title.title-italic a,
  .title.title-italic a {
    font-style: italic; }
  .block-title h1,
  .block-title h2,
  .block-title h3,
  .block-title h4,
  .section-title h1,
  .section-title h2,
  .section-title h3,
  .section-title h4,
  .page-title h1,
  .page-title h2,
  .page-title h3,
  .page-title h4,
  .title h1,
  .title h2,
  .title h3,
  .title h4 {
    color: inherit;
    font-weight: bold; }
    @media print, screen and (max-width: 39.99875em) {
      .block-title h1,
      .block-title h2,
      .block-title h3,
      .block-title h4,
      .section-title h1,
      .section-title h2,
      .section-title h3,
      .section-title h4,
      .page-title h1,
      .page-title h2,
      .page-title h3,
      .page-title h4,
      .title h1,
      .title h2,
      .title h3,
      .title h4 {
        font-size: 1.375rem; } }
    .block-title h1 a,
    .block-title h2 a,
    .block-title h3 a,
    .block-title h4 a,
    .section-title h1 a,
    .section-title h2 a,
    .section-title h3 a,
    .section-title h4 a,
    .page-title h1 a,
    .page-title h2 a,
    .page-title h3 a,
    .page-title h4 a,
    .title h1 a,
    .title h2 a,
    .title h3 a,
    .title h4 a {
      color: inherit; }
      .block-title h1 a:hover,
      .block-title h2 a:hover,
      .block-title h3 a:hover,
      .block-title h4 a:hover,
      .section-title h1 a:hover,
      .section-title h2 a:hover,
      .section-title h3 a:hover,
      .section-title h4 a:hover,
      .page-title h1 a:hover,
      .page-title h2 a:hover,
      .page-title h3 a:hover,
      .page-title h4 a:hover,
      .title h1 a:hover,
      .title h2 a:hover,
      .title h3 a:hover,
      .title h4 a:hover {
        color: #2c8a82; }
  .block-title.separator-center-above:before,
  .section-title.separator-center-above:before,
  .page-title.separator-center-above:before,
  .title.separator-center-above:before {
    display: table;
    content: " ";
    flex-basis: 0;
    order: 1;
    position: relative !important;
    top: -10px;
    width: 5rem;
    border-bottom: 0.125rem solid #000000;
    margin: 1rem auto 0; }
  .block-title.separator-right-above:before,
  .section-title.separator-right-above:before,
  .page-title.separator-right-above:before,
  .title.separator-right-above:before {
    display: table;
    content: " ";
    flex-basis: 0;
    order: 1;
    position: relative !important;
    top: -10px;
    width: 8rem;
    border-bottom: 1px solid #000000;
    margin: 1rem 0 0; }
  .block-title.style-v2,
  .section-title.style-v2,
  .page-title.style-v2,
  .title.style-v2 {
    display: flex;
    justify-content: space-between;
    align-items: center; }
  .block-title.style-v3,
  .section-title.style-v3,
  .page-title.style-v3,
  .title.style-v3 {
    display: flex;
    justify-content: space-between; }
    .block-title.style-v3 .head-tabs .tabs,
    .section-title.style-v3 .head-tabs .tabs,
    .page-title.style-v3 .head-tabs .tabs,
    .title.style-v3 .head-tabs .tabs {
      border: none;
      background: transparent; }
      .block-title.style-v3 .head-tabs .tabs li,
      .section-title.style-v3 .head-tabs .tabs li,
      .page-title.style-v3 .head-tabs .tabs li,
      .title.style-v3 .head-tabs .tabs li {
        border-radius: 0; }
    .block-title.style-v3 .head-tabs .tabs-title,
    .section-title.style-v3 .head-tabs .tabs-title,
    .page-title.style-v3 .head-tabs .tabs-title,
    .title.style-v3 .head-tabs .tabs-title {
      padding: 0;
      margin: 0; }
      .block-title.style-v3 .head-tabs .tabs-title:first-child a,
      .section-title.style-v3 .head-tabs .tabs-title:first-child a,
      .page-title.style-v3 .head-tabs .tabs-title:first-child a,
      .title.style-v3 .head-tabs .tabs-title:first-child a {
        border-top: 1px solid #717171;
        border-left: 1px solid #717171;
        border-bottom: 1px solid #717171; }
      .block-title.style-v3 .head-tabs .tabs-title:last-child a,
      .section-title.style-v3 .head-tabs .tabs-title:last-child a,
      .page-title.style-v3 .head-tabs .tabs-title:last-child a,
      .title.style-v3 .head-tabs .tabs-title:last-child a {
        border-top: 1px solid #717171;
        border-right: 1px solid #717171;
        border-bottom: 1px solid #717171; }
      .block-title.style-v3 .head-tabs .tabs-title > a,
      .section-title.style-v3 .head-tabs .tabs-title > a,
      .page-title.style-v3 .head-tabs .tabs-title > a,
      .title.style-v3 .head-tabs .tabs-title > a {
        padding: 5px 10px;
        font-weight: bold;
        color: #717171;
        font-size: 0.6875rem; }
        .block-title.style-v3 .head-tabs .tabs-title > a:focus, .block-title.style-v3 .head-tabs .tabs-title > a[aria-selected="true"], .block-title.style-v3 .head-tabs .tabs-title > a:hover,
        .section-title.style-v3 .head-tabs .tabs-title > a:focus,
        .section-title.style-v3 .head-tabs .tabs-title > a[aria-selected="true"],
        .section-title.style-v3 .head-tabs .tabs-title > a:hover,
        .page-title.style-v3 .head-tabs .tabs-title > a:focus,
        .page-title.style-v3 .head-tabs .tabs-title > a[aria-selected="true"],
        .page-title.style-v3 .head-tabs .tabs-title > a:hover,
        .title.style-v3 .head-tabs .tabs-title > a:focus,
        .title.style-v3 .head-tabs .tabs-title > a[aria-selected="true"],
        .title.style-v3 .head-tabs .tabs-title > a:hover {
          background: #000000;
          color: #ffffff; }
  .block-title.style-v4,
  .section-title.style-v4,
  .page-title.style-v4,
  .title.style-v4 {
    background-color: #dfe3e3;
    margin-bottom: 0;
    padding: 1rem 1rem 0.5rem; }

.editor-entries .main-editors .section-title {
  text-align: inherit; }

.editor-entries .title,
.editor-entries .section-title {
  text-align: center;
  margin-bottom: 2rem; }

.section-title.style-v3:after,
.page-title.style-v3:after {
  margin-top: 2px; }

.section-title.style-v3 h1,
.section-title.style-v3 h2,
.section-title.style-v3 h3,
.section-title.style-v3 h4,
.section-title.style-v3 h5,
.section-title.style-v3 h6,
.page-title.style-v3 h1,
.page-title.style-v3 h2,
.page-title.style-v3 h3,
.page-title.style-v3 h4,
.page-title.style-v3 h5,
.page-title.style-v3 h6 {
  font-weight: 800; }

@media print, screen and (max-width: 39.99875em) {
  .section-title.style-v3,
  .page-title.style-v3 {
    /*span {
      padding: 0;
    }*/ }
    .section-title.style-v3:after,
    .page-title.style-v3:after {
      display: none; } }

.section-title,
.block-title {
  margin-bottom: 0.5rem; }
  .section-title h2,
  .section-title h3,
  .block-title h2,
  .block-title h3 {
    font-size: 1.375rem;
    line-height: 1.4;
    margin-bottom: 0; }
    [dir="ltr"] .section-title h2, [dir="ltr"]
    .section-title h3, [dir="ltr"]
    .block-title h2, [dir="ltr"]
    .block-title h3 {
      font-size: 1.25rem; }
  .in-focus .section-title, .in-focus
  .block-title {
    margin-bottom: 1.5rem; }
    @media print, screen and (max-width: 39.99875em) {
      .in-focus .section-title, .in-focus
      .block-title {
        margin-bottom: 1rem; } }
    .in-focus .section-title h3, .in-focus
    .block-title h3 {
      font-size: 1.625rem; }
      @media print, screen and (min-width: 64em) {
        .in-focus .section-title h3, .in-focus
        .block-title h3 {
          font-size: 1.875rem; } }
    .in-focus .section-title .button, .in-focus
    .block-title .button {
      font-size: 15px;
      padding-bottom: 0.5rem; }

.block-title i.icon-archive {
  margin-right: 10px; }

.page-title h1 {
  font-size: 2rem; }

.page-title h2 {
  font-size: 2rem; }
  @media print, screen and (max-width: 39.99875em) {
    .page-title h2 {
      font-size: 1.5rem;
      padding: 10px 5px;
      color: #ffffff;
      background: #cd2c24;
      display: inline; }
      .page-title h2 span {
        background-color: transparent !important; } }

.page-title .subheader {
  font-size: 0.9375rem;
  color: #4d998a; }

@media print, screen and (min-width: 64em) {
  .c-tab-content_js .section-content {
    overflow: hidden; } }

.objects-list {
  margin-bottom: 2rem; }
  .block-wrapper .objects-list {
    margin-bottom: 0;
    /*.object-item:last-child {
    .media-object {
      margin-bottom: 0;
    }
  }*/ }
  .objects-list.padding-horizontal-1 .media-object-section:first-child {
    padding-left: 0.625rem; }
  .objects-list.has-separator .media-object {
    margin-bottom: 0; }
  .objects-list.has-separator .object-item {
    padding: 1rem 0; }
    .objects-list.has-separator .object-item.increased-space {
      padding: 1.5rem 0; }
    .objects-list.has-separator .object-item:not(:last-child) {
      border-bottom: 1px solid #d1d5d5; }
    .objects-list.has-separator .object-item.increased-space h3 {
      margin-bottom: 0.75rem; }

.media-object-section:only-child:first-child {
  padding-right: 0; }

.media-object-section:last-child:not(:nth-child(2)) {
  padding-left: 0; }

.slick-dots {
  bottom: -20px; }
  .slick-dots li {
    width: 47px;
    height: 4px; }
    .slick-dots li button {
      width: 47px;
      height: 4px; }
      .slick-dots li button:before {
        content: "";
        width: 47px;
        height: 4px;
        background-color: #ecf4f3;
        font-family: inherit;
        border-radius: 20px; }
    .slick-dots li.slick-active button:before {
      background-color: #000000; }

.slider-v1 {
  margin-top: -1.5rem; }

.media-article-list h3 {
  font-weight: bold; }
  [lang="fa"] .media-article-list h3,
  [lang="ur"] .media-article-list h3 {
    font-weight: 600; }
  @media print, screen and (max-width: 39.99875em) {
    .media-article-list h3 {
      margin-bottom: 0; } }

[lang="fa"] .media-article-list h4,
[lang="ur"] .media-article-list h4 {
  font-weight: 600; }

.media-article-list .media-object-img {
  position: relative; }
  @media print, screen and (max-width: 39.99875em) {
    .media-article-list .media-object-img {
      position: relative;
      float: right; }
      .media-article-list .media-object-img > a > img {
        aspect-ratio: 4/3;
        width: 100%;
        -o-object-fit: cover;
           object-fit: cover; } }
  @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
    .media-article-list .media-object-img {
      width: 100px;
      margin: 0.25rem 1rem 0 0;
      float: right; }
      .media-article-list .media-object-img > a > img {
        aspect-ratio: 4/3;
        width: 100%;
        -o-object-fit: cover;
           object-fit: cover; } }
  @media print, screen and (min-width: 64em) {
    .media-article-list .media-object-img img {
      width: 125px; } }
  @media screen and (max-width: 1024px) {
    .media-article-list .media-object-img img {
      width: 90px; } }

@media print, screen and (max-width: 39.99875em) {
  .media-article-list .media-object {
    gap: 20px; } }

@media print, screen and (max-width: 39.99875em) {
  .media-article-list .media-object-section:not(:only-child) {
    width: 50%; } }

.media-article-list .media-object-section:only-child:first-child {
  padding-right: 0; }

@media print, screen and (max-width: 39.99875em) {
  .media-article-list .article-list-item.hide-img .media-object-section {
    width: 100%;
    flex: 1 0 auto; } }

.media-article-list .article-list-item.hide-img .media-object-section:first-child {
  padding-right: 0; }

.articles-list.has-separator .media-object {
  margin-bottom: 0; }

.articles-list.has-separator > div {
  padding: 1rem 0; }
  .articles-list.has-separator > div:first-child {
    padding-top: 0; }
  .articles-list.has-separator > div:not(:last-child) {
    border-bottom: 1px solid #d1d5d5; }
  .articles-list.has-separator > div .article-item,
  .articles-list.has-separator > div .article-list-item {
    margin-bottom: 0; }
  @media print, screen and (min-width: 64em) {
    .articles-list.has-separator > div .article-item .article-item-img {
      margin-bottom: 0.5rem; } }
  @media print, screen and (min-width: 40em) {
    .articles-list.has-separator > div .article-item-info {
      display: flex;
      height: 100%;
      flex-direction: column;
      flex-wrap: wrap; } }

@media print, screen and (max-width: 39.99875em) {
  .articles-list.sm-show-one.has-separator > div:first-child {
    padding-top: 1rem;
    border-top: 1px solid #d1d5d5;
    padding-bottom: 0; }
  .articles-list.sm-show-one.has-separator > div:not(:last-child) {
    border-bottom: 0; } }

@media print, screen and (max-width: 39.99875em) {
  .articles-list.sm-has-separator > div:not(:last-child) {
    padding-bottom: 1rem;
    border-bottom: 1px solid #d1d5d5;
    margin-bottom: 1rem; } }

.article-list-item h6 {
  font-weight: bold; }

.author-name,
.article-episode {
  margin-bottom: 0.25rem; }
  .object-item.increased-space .author-name, .object-item.increased-space
  .article-episode {
    margin-bottom: 0.75rem; }
  .author-name a,
  .article-episode a {
    font-family: "Open-Sans";
    font-size: 0.875rem;
    color: #2c8a82; }
    .block-wrapper-v2 .author-name a, .block-wrapper-v2
    .article-episode a {
      color: #5e9096; }
    .author-name a:hover,
    .article-episode a:hover {
      color: #4d998a; }

.category-field {
  margin-bottom: 0.5rem; }
  .category-field a {
    font-size: 0.75rem;
    color: #2c8a82;
    padding: 5px 0; }
    .category-field a:hover {
      color: #253c3a; }
  .category-field span {
    margin-left: 1rem; }

.meta-area {
  line-height: 1;
  font-size: 0.75rem; }

.link-holder {
  font-size: 0.9375rem;
  margin: 0 0 0.5rem;
  font-family: "Open-Sans"; }
  .link-holder a {
    color: #717171;
    display: flex;
    align-items: center;
    line-height: 1; }
  .link-holder i {
    font-size: 0.5rem;
    margin-left: 10px;
    font-weight: bold;
    margin-top: -3px; }
  .link-holder.primary-color a {
    color: #2c8a82; }
    .link-holder.primary-color a:hover {
      color: #000000; }

.article-item {
  position: relative; }
  .article-item:not(:last-child) {
    margin-bottom: 1.5rem; }
  @media print, screen and (max-width: 39.99875em) {
    .article-item.style-v2 .article-item-img {
      position: relative;
      float: right;
      width: 50%;
      margin-top: 0;
      margin-bottom: 0; }
      .article-item.style-v2 .article-item-img img {
        aspect-ratio: 4/3;
        width: 100%;
        -o-object-fit: cover;
        object-fit: cover; } }
  @media print, screen and (min-width: 40em) {
    .article-item.style-v2 .article-item-img {
      display: none; } }
  .article-item.hero-wrap {
    margin-bottom: 1rem; }
  @media print, screen and (max-width: 39.99875em) {
    .article-item.video-item {
      margin-bottom: 1.5rem; } }
  .grid-column-2 .article-item {
    margin-bottom: 0; }
  .editorial-list .article-item {
    margin-bottom: 2.5rem; }
  @media print, screen and (min-width: 64em) {
    .grid-items .article-item {
      margin-right: auto;
      margin-left: auto; } }
  .articles-list .article-item {
    margin-bottom: 1.5rem; }
    @media print, screen and (max-width: 39.99875em) {
      .articles-list .article-item {
        margin-right: auto;
        margin-left: auto; } }

@media print, screen and (min-width: 64em) {
  .article-item-audio .article-item-title {
    max-width: 70%; } }

.article-item-content p {
  color: #4d4d4d;
  margin-bottom: 0; }

.article-item-desc p {
  font-size: 0.9375rem; }

.article-item-img {
  position: relative;
  margin-bottom: 1rem; }
  @media print, screen and (max-width: 63.99875em) {
    .article-item-img img {
      width: 100%; } }
  @media print, screen and (max-width: 39.99875em) {
    .article-item-img > a > img {
      aspect-ratio: 4/3;
      -o-object-fit: cover;
      object-fit: cover; } }
  .article-item-img > a:after {
    content: "";
    display: block;
    position: absolute;
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
    background-color: transparent;
    transition: color 0.25s ease 0s, background-color 0.25s ease 0s, opacity 0.25s ease 0s; }
  .article-item-img > a:hover:after, .article-item-img > a.hovered-img:after {
    background-color: rgba(0, 0, 0, 0.1); }
  .article-item-img .sign-icon {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100px;
    margin-left: -0px;
    margin-bottom: -20px; }
  .equalize-columns .article-item-img {
    margin-bottom: 0.75rem; }
  @media print, screen and (max-width: 63.99875em) {
    .block-wrapper .article-item-img img {
      width: 100%; } }
  @media print, screen and (max-width: 63.99875em) {
    .games-item .article-item-img img {
      width: auto; } }
  .has-overlay .article-item-img a:after {
    background-color: #007d70;
    opacity: 0.3;
    z-index: 1; }
  .has-overlay .article-item-img img {
    filter: gray;
    /* IE6-9 */
    /* Google Chrome, Safari 6+ & Opera 15+ */
    filter: grayscale(1);
    /* Microsoft Edge and Firefox 35+ */ }

.article-item-author {
  display: flex;
  align-items: center; }
  .article-item-author img {
    border-radius: 50%;
    max-width: 22px;
    margin-right: 10px; }
    @media print, screen and (max-width: 63.99875em) {
      .article-item-author img {
        max-width: 34px; } }

.article-item-title h2,
.article-item-title h3,
.article-item-title h4,
.article-item-title h5,
.article-item-title h6 {
  font-weight: bold; }
  [dir="ltr"] .article-item-title h2, [dir="ltr"]
  .article-item-title h3, [dir="ltr"]
  .article-item-title h4, [dir="ltr"]
  .article-item-title h5, [dir="ltr"]
  .article-item-title h6 {
    font-weight: 600; }

.title-normal .article-item-title h2,
.title-normal .article-item-title h3,
.title-normal .article-item-title h4,
.title-normal .article-item-title h5,
.title-normal .article-item-title h6 {
  font-weight: normal; }

.hero-slider .article-item-title h2 {
  font-size: 2.75rem;
  line-height: 1; }
  @media print, screen and (min-width: 64em) {
    .hero-slider .article-item-title h2 {
      font-size: 3.125rem; } }

.article-item-title h5 {
  line-height: 1.6; }
  @media print, screen and (min-width: 64em) {
    .article-item-title h5 {
      line-height: 1.7; } }

.article-item-title a {
  color: #000000; }
  .article-item-title a:hover, .article-item-title a.hovered {
    color: #2c8a82; }

.article-item-title.style-v2 {
  text-transform: uppercase;
  margin-bottom: 0.25rem; }
  .article-item-title.style-v2 h6 {
    margin-bottom: 0;
    font-family: "Open-Sans";
    font-size: 0.8125rem; }
  .article-item-title.style-v2 span {
    color: #2c8a82; }

@media print, screen and (min-width: 64em) {
  .game-item-info .article-item-title h2 {
    font-size: 2.0625rem;
    margin-bottom: 0;
    line-height: 1; } }

@media print, screen and (min-width: 64em) {
  .path-frontpage .game-item-info .article-item-title h3 {
    font-size: 1.5rem; } }

.article-item-title label {
  display: inline-block;
  background: #dcebd8;
  padding: 0.5rem;
  font-size: 13px;
  font-family: "Open-Sans";
  margin-right: 0.5rem;
  color: #0a1a0f; }

@media print, screen and (min-width: 64em) {
  .grid-column-2 .article-item-title {
    min-height: 55px;
    overflow: hidden;
    height: 30px; }
    [dir="ltr"] .grid-column-2 .article-item-title {
      min-height: 60px; } }

.anchor {
  font-family: "Open-Sans";
  font-weight: bold;
  font-size: 0.9375rem; }
  .anchor i {
    font-size: 9px;
    font-weight: bold; }

.article-item-category {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0; }
  .article-item-title .article-item-category {
    display: inline-block;
    position: relative;
    margin-right: 0.4rem;
    padding-right: 0.4rem; }
    .article-item-title .article-item-category:after {
      content: "";
      background-color: #2c8a82;
      width: 1.5px;
      height: 13px;
      position: absolute;
      top: 6px;
      right: 0; }
    .article-item-title .article-item-category a {
      color: #2c8a82; }
      .article-item-title .article-item-category a:hover {
        color: #000000; }
  @media print, screen and (min-width: 64em) {
    .articles-list .article-item-category {
      display: none; } }

.article-item-highlight ul {
  margin-right: 0;
  margin-bottom: 1rem; }
  .article-item-highlight ul li {
    margin-bottom: 0.5rem;
    font-family: "Open-Sans";
    font-size: 0.875rem;
    color: #555555; }

.article-item-footer .article-item-highlight ul li {
  color: #ffffff; }

.articles-list .article-item-highlight ul {
  margin-bottom: 1rem; }

.article-item-meta {
  font-size: 0.75rem;
  color: #3b3b3b;
  line-height: 1.2;
  margin-bottom: 0;
  margin-top: 0.5rem;
  font-family: "Open-Sans"; }
  @media print, screen and (min-width: 64em) {
    .article-item-meta {
      margin-top: 1rem;
      margin-bottom: 0.25rem; } }
  .article-item-meta i {
    margin-right: 0.5rem;
    display: inline-block; }
  .article-item-meta a {
    color: #2c8a82; }
    .article-item-meta a:hover {
      color: #000000; }
  .article-item-meta > span:not(:last-child) {
    border-right: 1px solid #929898;
    margin-right: 0.5rem;
    padding-right: 0.5rem; }
  .article-item-meta .meta-author {
    display: inline-block;
    color: #2c8a82; }
  .article-item-meta .meta-views span {
    color: #2c8a82; }
  @media print, screen and (min-width: 64em) {
    .search-results .article-item-meta {
      margin-top: auto;
      margin-bottom: 0; } }
  .dark-theme .article-item-meta {
    color: #afafaf; }
  .article-item-meta.breaking time {
    color: #ce4242; }

.views-count-placeholder {
  display: none; }
  .views-count-placeholder.showviews {
    display: inline-block; }

.views-count,
.video-stamp {
  font-family: "Open-Sans";
  font-size: 0.625rem;
  color: #898f93;
  display: inline-block; }
  @media print, screen and (min-width: 64em) {
    .views-count,
    .video-stamp {
      line-height: 2; } }
  .views-count.views-count-placeholder,
  .video-stamp.views-count-placeholder {
    display: none; }
    .views-count.views-count-placeholder.showviews,
    .video-stamp.views-count-placeholder.showviews {
      display: inline-block; }
  .views-count i,
  .video-stamp i {
    font-size: 1rem;
    vertical-align: middle; }

.views-count.abs-el {
  position: absolute;
  bottom: 5px;
  left: 10px;
  color: #ffffff;
  z-index: 1; }

.video-stamp.abs-el {
  position: absolute;
  bottom: 0;
  right: 0;
  color: #ffffff;
  background-color: rgba(37, 60, 58, 0.59);
  padding: 2px 5px;
  font-weight: bold;
  z-index: 1;
  font-family: "STIX Two Text"; }

.media-label {
  padding: 0.5rem;
  font-size: 0.8125rem;
  font-weight: bold;
  text-transform: uppercase;
  color: #ffffff;
  background-color: #2c8a82;
  line-height: 1;
  display: inline-block; }
  .media-label i {
    font-size: 1.5rem;
    vertical-align: middle;
    margin-left: 0.35rem; }
  .media-label:hover {
    background-color: #2c8a82; }
  .article-item-meta .media-label {
    margin-left: 1rem; }

.media-label.abs-el {
  position: absolute;
  bottom: 0.75rem;
  right: 0.75rem;
  color: #ffffff; }
  .grid-items .media-label.abs-el,
  .object-item .media-label.abs-el {
    bottom: 0.6rem;
    right: 0.6rem; }
  .object-item .media-label.abs-el {
    padding: 0.25rem; }
    .object-item .media-label.abs-el i {
      font-size: 1rem; }
  .article-item-overbox-inner .media-label.abs-el {
    bottom: 1.25rem;
    right: 2rem; }

.play-icon, .album-icon,
.abs-over-icon {
  position: absolute;
  font-size: 2rem;
  top: 0.5rem;
  right: 0.5rem;
  margin: 0 auto;
  z-index: 1;
  line-height: 1;
  text-align: center;
  display: flex;
  justify-content: center;
  flex-direction: column; }
  @media print, screen and (min-width: 64em) {
    .play-icon, .album-icon,
    .abs-over-icon {
      top: 1rem;
      right: 1rem;
      font-size: 35px; } }
  .play-icon img, .album-icon img,
  .abs-over-icon img {
    width: 30px; }
  .entry-related .play-icon, .entry-related .album-icon, .entry-related
  .abs-over-icon {
    font-size: 2.8125rem; }
    .entry-related .play-icon img, .entry-related .album-icon img, .entry-related
    .abs-over-icon img {
      width: 55px; }
  .play-icon i.icon-play-arrow, .album-icon i.icon-play-arrow,
  .abs-over-icon i.icon-play-arrow {
    font-size: 8rem;
    color: rgba(255, 255, 255, 0.8); }
    .articles-list.has-separator .play-icon i.icon-play-arrow, .articles-list.has-separator .album-icon i.icon-play-arrow, .articles-list.has-separator
    .abs-over-icon i.icon-play-arrow {
      font-size: 3.5rem; }
    .grid-items .play-icon i.icon-play-arrow, .grid-items .album-icon i.icon-play-arrow, .grid-items
    .abs-over-icon i.icon-play-arrow {
      font-size: 3.5rem; }
  .sidebar-wrap .play-icon, .sidebar-wrap .album-icon, .sidebar-wrap
  .abs-over-icon {
    top: 0.5rem;
    right: 0.5rem; }
    .sidebar-wrap .play-icon img, .sidebar-wrap .album-icon img, .sidebar-wrap
    .abs-over-icon img {
      width: 30px; }
  .grid-items .play-icon, .grid-items .album-icon, .grid-items
  .abs-over-icon {
    font-size: 2.5rem;
    top: auto;
    right: 0.75rem;
    bottom: 0.75rem;
    transform: none; }
  .video-list .play-icon, .video-list .album-icon, .video-list
  .abs-over-icon {
    font-size: 1rem;
    top: 0.5rem;
    right: 0.5rem; }

.media-article-list .album-icon,
.static-column-wrap .album-icon {
  top: 7px;
  left: 7px; }
  .media-article-list .album-icon img,
  .static-column-wrap .album-icon img {
    width: 18px; }

.label-live {
  display: flex;
  align-items: center;
  padding: 0.33333rem 0.5rem;
  border-radius: 0;
  font-size: 0.8rem;
  line-height: 1;
  white-space: nowrap;
  cursor: default;
  background: #2c8a82;
  background-color: #2c8a82;
  background-color: #2c8a82;
  color: #ffffff; }

.label,
.label-live {
  font-size: 15px;
  font-weight: normal;
  display: inline-flex;
  align-items: center; }
  .label a,
  .label-live a {
    color: #ffffff; }
  .label i,
  .label-live i {
    margin-right: 3px; }
  .label.abs-el,
  .label-live.abs-el {
    background-color: #2c8a82;
    text-align: center;
    font-family: "Open-Sans";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    padding: 7px 7px 5px; }
  .label.label-center,
  .label-live.label-center {
    left: initial;
    right: 50%;
    transform: translateX(-50%);
    margin: 0 auto; }
    [dir="ltr"] .label.label-center, [dir="ltr"]
    .label-live.label-center {
      left: 50%;
      right: initial; }
  .label.label-bottom,
  .label-live.label-bottom {
    bottom: 0;
    left: auto;
    right: 0;
    top: auto; }
  .label.live,
  .label-live.live {
    background-color: #bd3c2f;
    color: #ffffff; }
    .label.live i:before,
    .label-live.live i:before {
      color: #ffffff; }
  .label.breaking-news,
  .label-live.breaking-news {
    background-color: #bd3c2f; }
  .label.analysis,
  .label-live.analysis {
    background-color: #2c8a82; }
  .label.special,
  .label-live.special {
    background-color: #0e4540; }
  .label.livecoverage,
  .label-live.livecoverage {
    background-color: #bd3c2f; }
  .label.breaking,
  .label-live.breaking {
    background-color: #bd3c2f; }
  .article-item-title .label,
  .media-object-section h3 .label,
  .entry-highlight li .label, .article-item-title
  .label-live,
  .media-object-section h3
  .label-live,
  .entry-highlight li
  .label-live {
    margin-right: 0.4rem;
    position: relative;
    font-size: 14px;
    padding: 6px 5px 5px; }
    .article-item-title .label i,
    .media-object-section h3 .label i,
    .entry-highlight li .label i, .article-item-title
    .label-live i,
    .media-object-section h3
    .label-live i,
    .entry-highlight li
    .label-live i {
      font-size: 11px; }
    .article-item-title .label .lottie-ico,
    .media-object-section h3 .label .lottie-ico,
    .entry-highlight li .label .lottie-ico, .article-item-title
    .label-live .lottie-ico,
    .media-object-section h3
    .label-live .lottie-ico,
    .entry-highlight li
    .label-live .lottie-ico {
      width: 16px; }
  .media-object-img .label, .media-object-img
  .label-live {
    font-size: 14px;
    padding: 6px 5px 5px; }
    .media-object-img .label i, .media-object-img
    .label-live i {
      font-size: 11px; }
    .media-object-img .label .lottie-ico, .media-object-img
    .label-live .lottie-ico {
      width: 16px; }

.lottie-ico {
  height: auto;
  line-height: 0;
  margin-left: 5px; }
  .label-live .lottie-ico,
  .label .lottie-ico {
    width: 20px;
    margin-right: 5px;
    display: inline-block; }
  .live-ticker-title .lottie-ico {
    width: 25px;
    margin-right: 10px;
    display: inline-block; }

.callout.alert {
  background-color: #cc0000; }

.breaking-news-area {
  width: 100%;
  margin-bottom: 0;
  padding: 0;
  border: none; }
  .breaking-news-area h6,
  .breaking-news-area .label {
    font-size: 18px; }
  .breaking-news-area .label.live {
    background: linear-gradient(120deg, #cc0000 25%, white 25%);
    color: #cc0000;
    font-weight: bold;
    padding-top: 1rem;
    padding-left: 0.5rem;
    padding-bottom: 0.5rem;
    padding-right: 2rem; }
    [dir="ltr"] .breaking-news-area .label.live {
      background: linear-gradient(238deg, #cc0000 25%, white 25%); }
  .breaking-news-area a {
    color: #ffffff; }
  .breaking-news-area span:not(.label) {
    padding: 0 1.3rem; }
  .breaking-news-area span:not(.label):not(:last-child) {
    position: relative; }
    .breaking-news-area span:not(.label):not(:last-child):after {
      content: "/";
      position: absolute;
      right: 0;
      top: 0; }
  .breaking-news-area .close-button {
    color: #ffffff;
    right: 0;
    left: inherit; }

@media print, screen and (min-width: 64em) {
  .breaking-hero h1 {
    font-size: 50px;
    margin-bottom: 25px; } }

.breaking-hero .hero-item .article-item-title {
  margin-bottom: 30px; }
  @media print, screen and (min-width: 64em) {
    .breaking-hero .hero-item .article-item-title h2 {
      font-size: 33px; } }

.breaking-hero .label.abs-el {
  font-size: 13px; }

@media print, screen and (min-width: 64em) {
  .entry-article-inner {
    margin-right: -1.875rem;
    margin-left: -1.875rem; }
    .entry-article-inner > .cell {
      padding-right: 1.875rem;
      padding-left: 1.875rem; } }

.entry-media {
  margin-bottom: 1.5rem; }
  @media print, screen and (max-width: 39.99875em) {
    .entry-media {
      margin-bottom: 1rem; } }
  .entry-media .slick-arrow {
    background-color: rgba(255, 255, 255, 0.82);
    border-radius: 100%;
    height: 42px;
    width: 42px; }
    @media print, screen and (min-width: 64em) {
      .entry-media .slick-arrow {
        height: 59px;
        width: 59px; } }
    .entry-media .slick-arrow:before {
      text-shadow: none;
      font-size: 1.2rem;
      color: #000000; }
    .entry-media .slick-arrow.slick-next {
      right: 0.5rem; }
      @media print, screen and (min-width: 64em) {
        .entry-media .slick-arrow.slick-next {
          right: 1.5rem; } }
    .entry-media .slick-arrow.slick-prev {
      left: 0.5rem; }
      @media print, screen and (min-width: 64em) {
        .entry-media .slick-arrow.slick-prev {
          left: 1.5rem; } }
    .entry-media .slick-arrow:hover.slick-prev:before {
      margin-right: 1rem;
      color: #2c8a82;
      transition: all 0.25s ease 0s; }
    .entry-media .slick-arrow:hover.slick-next:before {
      margin-left: 1rem;
      color: #2c8a82;
      transition: all 0.25s ease 0s; }

.entry-title {
  margin-bottom: 1rem; }
  .entry-title h1 {
    font-size: 2.375rem;
    font-weight: 900;
    margin-bottom: 0; }
  .entry-title h2 {
    font-size: 18px;
    font-weight: 900;
    margin: 0.8rem 0; }
    @media print, screen and (min-width: 64em) {
      .entry-title h2 {
        font-size: 1.5rem;
        margin: 0.8rem 0 1rem; } }
  @media print, screen and (max-width: 39.99875em) {
    .entry-title {
      margin-bottom: 1rem; }
      .entry-title h1 {
        font-size: 1.375rem;
        line-height: 1.3; } }
  .entry-title + .entry-full-meta {
    margin-top: 1rem; }

.entry-category {
  font-size: 1rem;
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  margin-bottom: 1rem; }
  @media print, screen and (max-width: 39.99875em) {
    .entry-category {
      width: 100%;
      display: flex; } }
  @media print, screen and (min-width: 64em) {
    .entry-category {
      margin-bottom: 25px; } }
  .entry-category a {
    color: #4d4d4d;
    position: relative;
    margin-right: 40px;
    float: left;
    white-space: nowrap; }
    @media print, screen and (max-width: 39.99875em) {
      .entry-category a {
        margin-right: 1rem; } }
    .entry-category a:hover, .entry-category a.active {
      color: #2c8a82; }
    @media print, screen and (min-width: 64em) {
      .entry-category a:not(.sub-category) {
        line-height: 2; } }
    .entry-category a.sub-category {
      margin-right: 20px;
      font-weight: bold;
      color: #253c3a;
      font-family: "STIX Two Text";
      font-size: 1.125rem; }
      @media print, screen and (max-width: 39.99875em) {
        .entry-category a.sub-category {
          margin-right: 2rem; } }
      .entry-category a.sub-category:first-child:after {
        content: "\e902";
        right: 0;
        font-family: "icomoon";
        font-size: 9px;
        color: #2c8a82;
        display: inline-flex;
        align-items: center;
        margin-right: 20px; }
    .entry-category a:first-child {
      font-size: 18px; }

.page-indicator {
  display: flex;
  align-items: center;
  margin-bottom: 15px; }
  @media print, screen and (max-width: 39.99875em) {
    .page-indicator {
      margin-bottom: 15px;
      margin-top: 15px; } }

.page-category {
  margin-right: 20px;
  display: flex;
  align-items: center; }
  @media print, screen and (max-width: 39.99875em) {
    .page-category {
      margin-right: 2rem; } }
  .page-category a,
  .page-category h2 {
    position: relative;
    color: #2c8a82;
    font-size: 1.75rem;
    font-weight: 900;
    margin-bottom: 0; }

.entry-highlight {
  color: #555555; }
  .entry-highlight ul {
    margin-right: 0;
    margin-left: 1rem;
    margin-bottom: 1rem;
    margin-top: 1rem; }
    .entry-highlight ul.red-bullets {
      margin-left: 0; }
    .entry-highlight ul li {
      margin-bottom: 0.75rem; }
      .main-item .entry-highlight ul li time {
        font-size: 0.75rem;
        color: #3b3b3b;
        line-height: 1.2;
        margin-bottom: 0;
        margin-top: 0.5rem;
        font-family: "Open-Sans"; }
    @media print, screen and (min-width: 64em) {
      .entry-highlight ul {
        margin-right: 1rem;
        margin-bottom: 2rem; } }
  .entry-highlight.breaking li a {
    color: #000000; }
  .entry-highlight.breaking time {
    color: #ce4242;
    border-left: 1px solid transparent;
    position: relative; }
    .entry-highlight.breaking time:before {
      content: "\e914";
      color: #000000;
      font-size: 4px;
      position: absolute;
      margin-top: 0;
      left: 0;
      top: 3px;
      margin-left: -3px;
      font-family: "icomoon"; }
      [dir="ltr"] .entry-highlight.breaking time:before {
        top: 5px; }
  .breaking-hero .entry-highlight ul li::marker {
    font-size: 21px; }

.grid-highlights {
  margin-top: 1rem;
  display: flex;
  border-top: 1px solid #d1d5d5; }
  @media print, screen and (min-width: 64em) {
    .grid-highlights ul {
      width: 50%; } }
  .grid-highlights ul:first-child {
    border-right: 1px solid #d1d5d5; }

.entry-content {
  margin-bottom: 1rem;
  padding-bottom: 2rem;
  font-family: "Open-Sans";
  color: #343434;
  line-height: 1.6; }
  [dir="rtl"] .entry-content {
    font-size: 1.25rem; }
  .entry-content > * {
    margin-top: 20px;
    margin-bottom: 20px; }
    .entry-content > *:last-child {
      margin-bottom: 0; }
  .entry-content .twitter-tweet {
    margin-top: 0 !important;
    margin-bottom: 0 !important; }
  .entry-content .paragraph--type--description div[data-oembed-url*="twitter.com"] {
    margin-top: 20px;
    margin-bottom: 20px; }
  .entry-content p {
    font-family: "skolar-sans-arabic";
    color: #172F2F;
    font-size: 24px;
    line-height: 29px;
    text-align: justify; }
    .entry-content p img {
      width: unset !important;
      height: unset !important;
      margin-left: auto;
      margin-right: auto;
      display: inherit; }
    .entry-content p > iframe {
      display: block; }
  .entry-content div[contenteditable="false"] {
    text-align: center;
    margin-bottom: 20px; }
  .entry-content figure {
    display: block;
    margin: 0 auto 20px;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content; }
  .entry-content br {
    margin: 0 0 1rem;
    display: block;
    content: ""; }
  .entry-content p br {
    margin: 0 0 1rem;
    display: block;
    content: ""; }
  .entry-content a {
    color: #2c8a82; }
    .entry-content a:hover {
      color: #164541; }
  .entry-content blockquote:not(.tiktok-embed) {
    font-size: 1.375rem;
    color: #253c3a;
    background: #ecf4f3;
    margin-bottom: 2rem;
    padding: 2rem 3rem;
    position: relative;
    text-align: center;
    border-left: 0; }
    @media print, screen and (min-width: 64em) {
      .entry-content blockquote:not(.tiktok-embed) {
        padding: 3rem 5rem; } }
    .entry-content blockquote:not(.tiktok-embed):before {
      display: block;
      content: "";
      position: absolute;
      bottom: 0rem;
      right: 15px;
      line-height: normal;
      font-style: italic;
      background: url("../img/icon/lower-quote.png") center center no-repeat;
      width: 25px;
      height: 25px;
      background-size: cover; }
      @media print, screen and (min-width: 64em) {
        .entry-content blockquote:not(.tiktok-embed):before {
          bottom: 1rem;
          right: 40px;
          width: 35px;
          height: 35px; } }
    .entry-content blockquote:not(.tiktok-embed):after {
      display: block;
      content: "";
      position: absolute;
      top: 0rem;
      left: 25px;
      line-height: normal;
      font-style: italic;
      background: url("../img/icon/upper-quote.png") center center no-repeat;
      width: 25px;
      height: 25px;
      background-size: cover; }
      @media print, screen and (min-width: 64em) {
        .entry-content blockquote:not(.tiktok-embed):after {
          top: 1rem;
          left: 45px;
          width: 35px;
          height: 35px; } }
    .entry-content blockquote:not(.tiktok-embed) p {
      font-size: 0.9375rem;
      margin-bottom: 1.5rem;
      color: #253c3a;
      font-weight: bold; }
      @media print, screen and (min-width: 64em) {
        .entry-content blockquote:not(.tiktok-embed) p {
          font-size: 1.6875rem; } }
      .entry-content blockquote:not(.tiktok-embed) p:last-child {
        margin-bottom: 0;
        font-size: 0.875rem;
        color: #2c8a82;
        font-weight: bold;
        font-family: "Open-Sans"; }
        @media print, screen and (min-width: 64em) {
          .entry-content blockquote:not(.tiktok-embed) p:last-child {
            font-size: 1.5rem; } }
  .entry-content .tiktok-embed {
    border: 0;
    padding: 0; }
  .entry-content iframe {
    margin-right: auto !important;
    margin-left: auto !important; }
  .entry-content .twitter-tweet,
  .entry-content .instagram-media {
    margin-right: auto !important;
    margin-left: auto !important; }
  .multimedia-entries .entry-content {
    padding-bottom: 0; }
  @media print, screen and (min-width: 64em) {
    .entry-content.style-v1 {
      padding-left: 2rem; } }
  .entry-content p + h3,
  .entry-content p + h2 {
    font-family: "STIX Two Text";
    font-weight: bold;
    font-size: 22px;
    margin-top: 35px; }

.entry-address {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem; }
  .entry-address h3 {
    font-weight: bold; }
  .entry-address ul {
    margin-left: 0; }
    .entry-address ul li {
      list-style: none; }

@media print, screen and (min-width: 64em) {
  .entry-spotlight {
    border-left: 1px solid #d1d5d5;
    padding-left: 2rem; }
    .style-v1 .entry-spotlight {
      margin-left: -2rem; } }

.entry-spotlight h2 {
  font-family: "STIX Two Text";
  font-weight: 600;
  font-size: 22px;
  line-height: 1.2; }
  @media print, screen and (min-width: 64em) {
    .entry-spotlight h2 {
      font-size: 24px; } }

.entry-subscribe {
  margin: 0 auto; }
  @media print, screen and (min-width: 64em) {
    .entry-subscribe {
      width: 400px; } }
  @media screen and (max-width: 1024px) {
    .entry-subscribe {
      width: auto; } }

.entry-related .section-title h4 {
  font-weight: normal; }

.entry-tags {
  margin: 0 0 2.5rem;
  padding: 1rem 0 0.5rem;
  border-top: 1px solid rgba(161, 161, 148, 0.4);
  border-bottom: 1px solid rgba(161, 161, 148, 0.4);
  display: flex;
  align-items: flex-start; }
  .entry-tags span {
    color: #2c8a82;
    margin-right: 1rem;
    display: inline-block;
    vertical-align: middle;
    line-height: 29px;
    font-weight: bold;
    font-size: 16px; }
  .entry-tags .button {
    padding: 5px 10px;
    margin: 0 0 0.5rem 0.5rem;
    text-transform: uppercase;
    vertical-align: initial;
    font-size: 12px; }
    @media print, screen and (max-width: 39.99875em) {
      .entry-tags .button {
        padding: 0.5rem; } }
    .entry-tags .button.gray.hollow:hover {
      background-color: #ecf4f3;
      border-color: #ecf4f3; }
  .entry-article-inner .entry-tags {
    margin-bottom: 0; }

.entry-shares-wrapper {
  margin: 0 0 1rem; }
  .entry-shares-wrapper a {
    text-align: right;
    margin-right: 0.5rem; }
    .entry-shares-wrapper a:hover {
      color: #000000; }
    .entry-shares-wrapper a i {
      font-size: 1.25rem; }
  .entry-meta-footer .entry-shares-wrapper a {
    text-align: right;
    margin-right: 0.75rem;
    color: #898f93; }
    .entry-meta-footer .entry-shares-wrapper a:hover {
      color: #000000; }

.entry-meta .entry-meta-footer {
  padding: 0.75rem 0; }

.entry-share {
  display: inline-block;
  vertical-align: middle; }
  .entry-share a {
    text-align: right;
    margin-right: 0.5rem; }
    .entry-share a:first-child {
      margin-right: 0; }
    .entry-share a i {
      font-size: 1.5rem; }
  @media print, screen and (min-width: 64em) {
    .entry-share a {
      margin-right: 1.25rem; } }

@media print, screen and (min-width: 64em) {
  .entry-aside-info {
    width: 310px; }
    .entry-aside-info.cartoon-author {
      margin-top: 70px; }
      [dir="ltr"] .entry-aside-info.cartoon-author {
        margin-top: 65px; } }

@media screen and (max-width: 1024px) {
  .entry-aside-info {
    width: 200px; } }

@media print, screen and (min-width: 64em) {
  .entry-full-meta {
    margin-bottom: 2rem; } }

.entry-author {
  font-size: 1rem;
  font-weight: bold;
  text-transform: uppercase; }
  .entry-author img {
    margin-right: 10px; }
  .entry-author a {
    position: relative;
    margin-right: 4px;
    padding-right: 0.5rem; }
    .entry-author a:not(:last-child):after {
      content: ",";
      position: absolute;
      bottom: 0;
      left: 0; }
  .entry-author ul {
    margin-left: 0;
    margin-bottom: 0;
    margin-right: 0.5rem; }
    .entry-author ul li {
      list-style: none;
      display: inline-block;
      margin-right: 0.5rem; }

.entry-author-img {
  padding-bottom: 1rem;
  border-bottom: 1px solid #000000; }

@media print, screen and (min-width: 64em) {
  .entry-label {
    max-width: 600px; } }

.entry-label ul {
  margin-left: 0;
  margin-bottom: 0; }
  @media print, screen and (max-width: 39.99875em) {
    .entry-label ul {
      font-size: 14px; } }
  .entry-label ul li {
    list-style: none;
    display: inline-block;
    margin-bottom: 10px;
    margin-right: 10px;
    background-color: #eaf3f2;
    padding: 5px 10px;
    border-radius: 4px; }
    .entry-label ul li a {
      color: #2c8a82; }
      .entry-label ul li a span:not(:first-child) {
        font-weight: bold; }

.entry-aside-meta {
  margin-bottom: 1rem;
  position: relative; }
  .entry-full-meta .entry-aside-meta {
    border-top: 1px solid #d1d5d5;
    padding-top: 1rem;
    margin-top: 1rem;
    margin-bottom: 1rem; }

.entry-date-items .entry-date:not(:only-child):first-child {
  color: #000000; }

@media print, screen and (min-width: 64em) {
  .entry-date-items {
    text-align: right; } }

.entry-date {
  color: #717171;
  font-size: 0.75rem;
  color: #929898;
  line-height: 1.2;
  margin-bottom: 0.25rem; }
  @media print, screen and (min-width: 64em) {
    .entry-date {
      padding-top: 1rem;
      padding-right: 1rem; } }
  .entry-date span {
    display: block; }
  .entry-aside-meta .entry-date {
    font-size: 0.6875rem;
    font-family: "Open-Sans";
    padding-top: 0.2rem; }
    @media print, screen and (min-width: 64em) {
      .entry-aside-meta .entry-date {
        font-size: 0.9375rem; } }
  .entry-meta .entry-date {
    padding: 0 0 0.25rem;
    color: #999999; }
    .entry-meta .entry-date span {
      display: inline; }
  .entry-full-meta .entry-date {
    padding-top: 0;
    font-size: 0.9375rem;
    padding-left: 0; }

.entry-aside-shares .entry-share-row:not(.entry-bookmark) {
  margin-left: 0.5rem; }

.entry-aside-shares .entry-bookmark {
  margin-left: auto; }
  .entry-aside-shares .entry-bookmark.active a {
    background-color: #d9edeb; }
    .entry-aside-shares .entry-bookmark.active a i:before {
      content: "";
      color: #000000; }

@media print, screen and (max-width: 63.99875em) {
  .multimedia-entries .entry-aside-shares {
    border-top: none;
    padding-top: 0;
    margin-top: 0;
    margin-bottom: 0; } }

.entry-shares .entry-bookmark {
  margin-left: 2rem; }

.hero-slider .slick-dots li {
  margin: 0 8px; }

.share-icons-wrap {
  display: flex;
  flex-direction: row;
  text-align: center;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end; }
  .share-icons-wrap .social-lbl {
    font-weight: bold;
    font-size: 1rem;
    margin-right: 0.5rem;
    display: none; }
  .entry-shares-wrapper .share-icons-wrap {
    border-top-color: #d1d5d5;
    justify-content: flex-start; }
  .entry-aside-info .share-icons-wrap {
    justify-content: center; }
  .multimedia-entries .share-icons-wrap {
    border-top: 1px solid #2c8a82;
    margin-top: 1.5rem;
    padding-top: 1.5rem; }
  .video-aside-meta .share-icons-wrap {
    border-top: 0;
    margin-top: 0;
    padding-top: 0; }
    .video-aside-meta .share-icons-wrap .entry-share-row a {
      color: #2c8a82; }
  .share-icons-wrap.addthis_toolbox .atclear {
    display: none; }

.multimedia-entries {
  padding: 2rem 1rem 1rem; }
  @media print, screen and (min-width: 64em) {
    .multimedia-entries {
      padding: 3rem; } }

.entry-meta .btn-share-wrap {
  position: absolute;
  top: 0;
  right: 0; }
  @media print, screen and (max-width: 63.99875em) {
    .entry-meta .btn-share-wrap {
      display: inherit; }
      .entry-meta .btn-share-wrap .btn-share-social {
        margin-left: 0.5rem; } }

@media print, screen and (max-width: 63.99875em) {
  .entry-aside-meta .btn-share-wrap {
    display: flex;
    flex-direction: column; } }

.entry-share-row {
  text-align: center; }
  .entry-share-row:not(:last-child) {
    margin-right: 0.5rem; }
  @media print, screen and (max-width: 63.99875em) {
    .entry-share-row {
      display: inline-block; } }
  .entry-share-row a {
    color: #2c8a82;
    background-color: #f0f7f6;
    border-radius: 50%;
    height: 38px;
    width: 38px;
    display: flex;
    align-items: center;
    justify-content: center; }
    .entry-share-row a:hover {
      background-color: #d9edeb; }
    @media print, screen and (max-width: 39.99875em) {
      .entry-share-row a {
        text-align: center; } }
    .dark-theme .entry-share-row a {
      color: #2c8a82; }
    .podcast-screen .entry-share-row a {
      background-color: #ffffff; }
      .podcast-screen .entry-share-row a:hover {
        background-color: #d9edeb; }
  .entry-share-row .icon-share {
    color: #2c8a82; }

.entry-content figcaption {
  background: #ffffff;
  padding: 0.5rem;
  font-size: 0.9375rem;
  margin-top: 0; }

.img-caption {
  font-size: 0.6875rem;
  color: #717171;
  margin-top: -0.5rem;
  margin-bottom: 0.5rem;
  min-height: 0.1rem; }
  .entry-media .img-caption, .img-caption.styled {
    background: #ffffff;
    padding: 0.5rem;
    font-size: 0.9375rem;
    margin-top: 0; }
  .img-caption.dark {
    background-color: #ededed;
    padding: 0.5rem 1rem 0.2rem; }
  .live-blog .img-caption {
    margin-bottom: 0;
    margin-top: 0; }

@media print, screen and (min-width: 64em) {
  .injected-block {
    display: flex; } }

.injected-block .block-content {
  background-color: #ffffff;
  padding: 1.5rem;
  width: 100%; }
  .injected-block .block-content h5 a {
    color: #000000; }
    .injected-block .block-content h5 a:hover {
      color: #2c8a82; }

.injected-block .block-title {
  width: 135px;
  margin-top: 1.5rem;
  margin-right: 1.5rem; }
  .injected-block .block-title h2 {
    font-size: 27px;
    padding-bottom: 1rem;
    border-bottom: 1px solid #2c8a82; }

.injected-block .item-area-title {
  margin-bottom: 0.25rem; }

.injected-block .item-area h2.item-area-title {
  font-size: 0.9375rem; }
  @media print, screen and (min-width: 64em) {
    .injected-block .item-area h2.item-area-title {
      font-size: 1.6875rem; } }

.injected-block .item-area p {
  margin-bottom: 1rem;
  font-size: 0.875rem; }
  @media print, screen and (min-width: 64em) {
    .injected-block .item-area p {
      font-size: 1.5rem; } }

.injected-block h5.item-area-title {
  font-weight: bold; }

.injected-block p {
  color: #555555;
  margin-bottom: 0.5rem;
  font-size: 0.9375rem; }

.injected-block ul {
  color: #555555;
  font-size: 0.9375rem;
  margin-bottom: 0; }
  .injected-block ul li {
    margin-bottom: 1rem; }

.injected-opinion .media-object-section {
  display: flex;
  justify-content: space-between;
  flex-direction: column; }
  .injected-opinion .media-object-section:first-child {
    border-right: 1px solid #f7fafa;
    margin-right: 1rem;
    text-align: center; }
    .injected-opinion .media-object-section:first-child .media-object-img {
      width: 75px;
      height: 75px;
      margin: 0 auto; }
      .injected-opinion .media-object-section:first-child .media-object-img img {
        width: 100%;
        -o-object-fit: cover;
           object-fit: cover; }

.injected-opinion .link-holder {
  margin-bottom: 2px; }

.injected-opinion .author-name {
  margin-bottom: 0;
  font-size: 15px;
  font-family: "Open-Sans"; }

.injected-opinion h5 {
  margin-top: 0.5rem; }

.with-separator .media-object:not(:last-child) {
  border-bottom: 1px solid #d1d5d5;
  padding-bottom: 1rem; }

.with-separator p {
  position: relative;
  padding-bottom: 1rem; }
  .with-separator p:after {
    display: block;
    content: "";
    position: absolute;
    bottom: 0;
    width: 30%;
    height: 1px;
    background-color: #555555; }
  .with-separator p:last-child:after {
    display: none; }

.item-area p {
  margin-bottom: 1rem; }

.item-area-img {
  margin-bottom: 1rem; }
  .item-area-img button {
    cursor: pointer; }
    .item-area-img button:hover {
      opacity: 0.8; }

.item-area-title span {
  color: #2c8a82; }

.item-area-title a {
  color: #000000; }
  .item-area-title a:hover {
    color: #2c8a82; }

.item-area-meta {
  margin-bottom: 0.5rem; }
  .item-area-meta time {
    display: inline-block;
    vertical-align: middle;
    font-size: 0.875rem;
    color: #5f7176; }
    .item-area-meta time span {
      color: #2c8a82; }
    .item-area-meta time i {
      margin-left: 0.25rem; }

.author-meta-area {
  margin-bottom: 0;
  border-bottom: 1px solid #000000;
  padding: 0 0 0.5rem; }
  .author-meta-area img {
    max-width: 50px; }

ul.has-separator li:not(:last-child) {
  border-bottom: 1px solid #d1d5d5; }

.opinion-author {
  background-color: #ffffff;
  text-align: center;
  display: flex;
  flex-direction: row;
  justify-content: space-evenly; }
  @media print, screen and (max-width: 63.99875em) {
    .opinion-author {
      padding: 1rem;
      margin-bottom: 1rem; } }
  @media print, screen and (min-width: 64em) {
    .opinion-author {
      padding: 1.5rem 1rem;
      margin-bottom: 1.5rem; } }
  .opinion-author .author-name {
    font-size: 22px;
    font-weight: bold; }
    @media print, screen and (max-width: 39.99875em) {
      .opinion-author .author-name {
        margin-bottom: 0; } }
  .opinion-author .author-desc {
    font-size: 0.8125rem;
    font-family: "Open-Sans"; }
  .opinion-author .author-meta {
    padding: 1rem 1rem 0; }
    @media print, screen and (min-width: 64em) {
      .opinion-author .author-meta {
        padding: 0; } }
  @media print, screen and (max-width: 39.99875em) {
    .opinion-author.single {
      text-align: left; } }
  @media print, screen and (max-width: 39.99875em) {
    .opinion-author.single .author-grid {
      position: relative;
      padding-left: 92px;
      width: 100%;
      min-height: 95px; } }
  @media print, screen and (max-width: 39.99875em) {
    .opinion-author.single .writer-check {
      margin-right: 0.5rem;
      position: absolute;
      left: 0; } }
  @media print, screen and (max-width: 39.99875em) {
    .opinion-author.single .author-meta {
      padding-top: 0; } }
  @media print, screen and (max-width: 39.99875em) {
    .opinion-author.single .socials-block {
      padding-left: 7px; }
      .opinion-author.single .socials-block a {
        margin-left: 0; } }

.author-img {
  border-radius: 50%;
  width: 92px;
  height: 92px;
  overflow: hidden;
  -webkit-mask-image: -webkit-radial-gradient(white, black); }
  .author-img img {
    transition: all 0.5s ease, transform 0.2s;
    /* Animation */
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover; }
  .author-img a:hover img {
    transform: scale(1.1); }
    .author-item .author-img a:hover img {
      transform: inherit; }
  .author-img a:hover:after {
    background-color: transparent; }
  .opinion-author .author-img {
    margin: 0 auto; }
  .flex-equal .author-img {
    display: inline-table; }
  .opinion-author-list .author-img {
    float: left; }
  .related-opinions .author-img {
    width: 75px;
    height: 75px; }
  .game-author-info .author-img {
    width: 63px;
    height: 63px;
    margin: 0 auto; }
    .game-author-info .author-img img {
      filter: grayscale(0);
      transform: scale(1.1); }

.related-opinions {
  margin-top: 1.5rem;
  padding-bottom: 1.5rem; }
  @media print, screen and (max-width: 39.99875em) {
    .related-opinions > div:nth-child(1n + 1):nth-last-child(-n + 1):not(.hide-for-large) .article-item,
    .related-opinions > div:nth-child(1n + 1):nth-last-child(-n + 1):not(.hide-for-large) ~ .cell .article-item {
      border-bottom-color: transparent; } }
  @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
    .related-opinions > div:nth-child(2n + 1):nth-last-child(-n + 2):not(.hide-for-large) .article-item,
    .related-opinions > div:nth-child(2n + 1):nth-last-child(-n + 2):not(.hide-for-large) ~ .cell .article-item {
      border-bottom-color: transparent; } }
  @media print, screen and (max-width: 63.99875em) {
    .related-opinions > div {
      padding-bottom: 1rem; }
    .related-opinions .article-item {
      border-bottom: 1px solid #d1d5d5;
      margin-bottom: 0; } }
  @media print, screen and (min-width: 64em) {
    .related-opinions {
      border-bottom: 1px solid #d1d5d5; } }

.font-control {
  position: relative;
  background-color: #ecf4f3;
  padding: 0.5rem 1rem; }
  @media print, screen and (max-width: 63.99875em) {
    .font-control {
      margin-bottom: 0;
      width: 90px;
      float: right; }
      .font-control .fntChange-btn {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center; } }
  @media print, screen and (min-width: 64em) {
    .font-control {
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center; } }
  .font-control span {
    display: inline-block;
    padding: 0 3px;
    text-align: center;
    font-family: tahoma;
    margin-bottom: 0; }
  .font-control .font-size {
    font-family: sans-serif;
    font-size: 20px; }
  .font-control .ico-drag {
    font-size: 19px;
    line-height: 0; }
  .entry-full-meta .font-control {
    width: 220px;
    margin-bottom: 0;
    margin-top: 0; }
  .entry-aside-info .font-control {
    margin-top: 3rem; }
    .entry-aside-info .font-control:before {
      content: "";
      background-color: #2c8a82;
      height: 1px;
      width: 100%;
      right: 0;
      left: 0;
      top: -1.5rem;
      position: absolute; }

.slider-control input[type="range"] {
  -webkit-appearance: none;
  background: linear-gradient(to right, #000000 35%, #dcebe9 0%);
  width: 174px;
  height: 5px;
  bottom: unset;
  transform-origin: left top 0;
  border-radius: 20px; }
  [dir="ltr"] .slider-control input[type="range"] {
    background: linear-gradient(to right, #000000 35%, #dcebe9 0%); }
  @media print, screen and (max-width: 63.99875em) {
    .entry-meta .slider-control input[type="range"] {
      transform: rotate(270deg);
      margin: 0 50%;
      display: inline-block; }
      [dir="ltr"] .entry-meta .slider-control input[type="range"] {
        transform: rotate(90deg); } }
  .entry-full-meta .slider-control input[type="range"] {
    width: 116px; }

.slider-control input[type="range"]::-webkit-slider-thumb {
  width: 16px;
  -webkit-appearance: none;
  height: 16px;
  border-radius: 100%;
  cursor: ew-resize;
  background: #000000; }

@media print, screen and (max-width: 63.99875em) {
  .entry-meta .slider-control {
    display: inline-block;
    width: 100%;
    height: 200px;
    position: absolute;
    top: 45px;
    background: #ecf4f3;
    right: 0;
    z-index: 2; }
  .slider-control.close input[type="range"] {
    -webkit-animation: 1s ease-out normal forwards 2 fadeout;
            animation: 1s ease-out normal forwards 2 fadeout; } }

/* ------- Section Menu ------- START -------- */
.section-menu-wrapper {
  margin-bottom: 2rem;
  margin-top: 2rem; }

.section-menu ul {
  list-style: none;
  margin-left: 0; }

.section-menu li {
  display: inline-block;
  padding: 0 1rem; }
  .section-menu li:first-child {
    padding-left: 0; }
  .section-menu li a {
    color: #adadad; }

.section-menu-dropdown ul,
.section-menu-wrapper ul {
  border-bottom: 1px solid #d1d5d5; }

.section-menu-dropdown.style-v1 li,
.section-menu-wrapper.style-v1 li {
  padding-bottom: 0.5rem; }
  .section-menu-dropdown.style-v1 li.active, .section-menu-dropdown.style-v1 li:hover,
  .section-menu-wrapper.style-v1 li.active,
  .section-menu-wrapper.style-v1 li:hover {
    border-bottom: 1px solid #2c8a82; }
    .section-menu-dropdown.style-v1 li.active a, .section-menu-dropdown.style-v1 li:hover a,
    .section-menu-wrapper.style-v1 li.active a,
    .section-menu-wrapper.style-v1 li:hover a {
      color: #2c8a82; }

.dropdown-wrapper {
  position: relative;
  width: 300px;
  margin: 2rem auto; }
  .dropdown-wrapper .button {
    margin-bottom: 0;
    background-color: transparent;
    padding: 0;
    border: 0;
    min-width: 95px;
    height: auto;
    font-size: 11px;
    color: #898f93;
    font-weight: 400;
    vertical-align: top;
    line-height: 20px; }
    .dropdown-wrapper .button:after {
      display: none; }
    .dropdown-wrapper .button i {
      font-size: 0.875rem;
      margin-left: 0.5rem; }

.dropdown-toggle {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  vertical-align: middle;
  cursor: pointer;
  line-height: 38px;
  height: 100%;
  font-size: 1.125rem;
  padding: 0 1rem;
  background-color: transparent;
  border: 1px solid #2c8a82;
  color: #2c8a82;
  width: 100%;
  margin: 0; }
  @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
    .dropdown-toggle {
      font-size: 1.875rem;
      line-height: 2; } }
  .dropdown-toggle i {
    font-size: 1rem; }
  .dropdown-toggle:hover, .dropdown-toggle:focus {
    color: #2c8a82; }

.dropdown-menu {
  text-align: left;
  list-style: none;
  opacity: 0;
  visibility: hidden;
  padding: 0.25rem 0;
  position: absolute;
  width: 100%;
  margin-left: 0;
  z-index: 2;
  background-color: #ffffff;
  color: #2c8a82;
  top: calc(100% + 0.25rem); }
  .dropdown-menu li {
    line-height: 1; }
    .dropdown-menu li:hover:after {
      content: " ";
      width: 5px;
      position: absolute;
      bottom: 0;
      right: 0;
      height: 100%;
      background-color: #2c8a82;
      display: none; }
    .dropdown-menu li a {
      color: #2c8a82;
      font-size: 1.125rem;
      display: block;
      padding: 0.625rem 1.5rem; }
      .dropdown-menu li a i {
        font-size: 1rem;
        margin-right: 1rem;
        color: #2c8a82; }
      .dropdown-menu li a:hover {
        color: #000000; }
  .dropdown-menu.active a {
    color: #2c8a82; }
  .dropdown-menu.expand {
    opacity: 1;
    visibility: visible; }

/* ------- Section Menu ------- END -------- */
/* ------- MY PROFILE ------- START -------- */
.user-profile {
  vertical-align: middle;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 40px;
  padding: 0 0.7rem;
  background-color: #ffffff; }
  .user-profile .icon-arrow-down {
    font-size: 10px;
    font-weight: bold; }
  .user-profile.hover {
    background-color: #253c3a;
    color: #ffffff; }
    .user-profile.hover .icon-arrow-down:before {
      content: "\e917"; }

[type="checkbox"] + .user-profile,
[type="checkbox"] + .user-profile-img {
  display: flex;
  margin: 0; }

.user-profile-img {
  margin-right: 5px; }
  .user-profile-img img {
    border-radius: 50%;
    max-width: 22px;
    max-heigth: 22px; }

.user-dropdown:checked ~ .account-menu-list {
  visibility: visible;
  opacity: 2;
  transform: translateY(0px); }

.user-dropdown:checked ~ .user-profile {
  background-color: #253c3a;
  color: #ffffff; }
  .user-dropdown:checked ~ .user-profile .icon-arrow-down:before {
    content: "\e917"; }

.account-menu {
  position: relative;
  display: inline-block; }
  @media print, screen and (min-width: 64em) {
    .account-menu {
      margin-left: 1rem;
      min-width: 131px; } }
  .account-menu .user {
    padding-right: 10px; }
  .sticky .account-menu {
    min-width: auto; }
  .account-menu .account-menu-list {
    min-width: 131px;
    background-color: #253c3a;
    padding: 0.5rem;
    color: #ffffff;
    width: 100%;
    position: absolute;
    z-index: 99;
    top: 40px;
    right: 0px;
    visibility: hidden;
    opacity: 0;
    cursor: pointer;
    transition: 0.2s ease-in-out;
    transform: translateY(-20px); }
    @media print, screen and (max-width: 39.99875em) {
      .account-menu .account-menu-list {
        background-color: #ecf4f3;
        width: 100vw;
        right: -1.1rem !important;
        border-bottom-right-radius: 20px;
        border-bottom-left-radius: 20px;
        color: #000000;
        padding: 0;
        top: 55px; } }
    .sticky .account-menu .account-menu-list {
      top: 35px; }
    .account-menu .account-menu-list ul {
      transition: 0.2s ease-in-out; }
    .account-menu .account-menu-list li:last-child {
      border-top: 1px solid #3a5452;
      margin: 0 -0.5rem;
      padding: 0 0.5rem; }
    @media print, screen and (max-width: 39.99875em) {
      .account-menu .account-menu-list li:not(:last-child) {
        border-bottom: 1px solid #ffffff; } }
    .account-menu .account-menu-list a,
    .account-menu .account-menu-list button {
      outline: none;
      display: block;
      line-height: 1;
      padding: 0.7rem 0.5rem;
      font-size: 12px;
      color: inherit;
      background: transparent;
      text-align: left; }
      @media print, screen and (max-width: 39.99875em) {
        .account-menu .account-menu-list a,
        .account-menu .account-menu-list button {
          font-size: 17px;
          padding: 1rem; } }
      .account-menu .account-menu-list a:hover,
      .account-menu .account-menu-list button:hover {
        color: #2c8a82; }
      .account-menu .account-menu-list a i,
      .account-menu .account-menu-list button i {
        margin-right: 10px;
        font-size: 12px;
        display: inline-block;
        vertical-align: middle; }
        @media print, screen and (max-width: 39.99875em) {
          .account-menu .account-menu-list a i,
          .account-menu .account-menu-list button i {
            font-size: 17px;
            color: #849594; } }
        .account-menu .account-menu-list a i.icon-envelop2,
        .account-menu .account-menu-list button i.icon-envelop2 {
          font-size: 10px; }
          @media print, screen and (max-width: 39.99875em) {
            .account-menu .account-menu-list a i.icon-envelop2,
            .account-menu .account-menu-list button i.icon-envelop2 {
              font-size: 15px; } }

.form-area-wrap {
  background-color: #ffffff;
  text-align: center;
  padding: 1rem;
  width: 350px; }
  @media print, screen and (max-width: 63.99875em) {
    .form-area-wrap {
      margin-top: 2rem;
      margin-bottom: 0; } }
  @media print, screen and (min-width: 40em) {
    .form-area-wrap {
      width: 520px; } }
  @media print, screen and (min-width: 64em) {
    .form-area-wrap {
      padding: 3rem 6rem;
      margin: 3rem auto; } }
  .form-area-wrap .section-title {
    margin-bottom: 2rem; }
    .form-area-wrap .section-title h3 {
      color: #2c8a82; }
  .form-area-wrap .custom-txt-style {
    text-align: center;
    font-size: 1rem;
    margin: 2rem 0;
    position: relative;
    color: #acacac; }
    .form-area-wrap .custom-txt-style:after {
      display: block;
      content: "";
      position: absolute;
      top: 50%;
      width: 100%;
      height: 1px;
      background-color: #d1d5d5;
      z-index: 1; }
    .form-area-wrap .custom-txt-style span {
      display: inline-block;
      vertical-align: middle;
      background-color: #ffffff;
      padding: 0 0.5rem;
      position: relative;
      z-index: 2;
      font-family: "Open-Sans";
      font-weight: bold;
      color: #253c3a; }
  .form-area-wrap input[type="email"]:not(:-moz-placeholder-shown), .form-area-wrap input[type="password"]:not(:-moz-placeholder-shown) {
    text-align: left; }
  .form-area-wrap input[type="email"]:not(:-ms-input-placeholder), .form-area-wrap input[type="password"]:not(:-ms-input-placeholder) {
    text-align: left; }
  .form-area-wrap input[type="email"]:not(:placeholder-shown),
  .form-area-wrap input[type="password"]:not(:placeholder-shown) {
    text-align: left; }
  .form-area-wrap input[type="email"]:-moz-placeholder-shown, .form-area-wrap input[type="password"]:-moz-placeholder-shown {
    text-align: right; }
  .form-area-wrap input[type="email"]:-ms-input-placeholder, .form-area-wrap input[type="password"]:-ms-input-placeholder {
    text-align: right; }
  .form-area-wrap input[type="email"]:placeholder-shown,
  .form-area-wrap input[type="password"]:placeholder-shown {
    text-align: right; }
  .form-area-wrap input[type="password"] {
    padding-right: 3rem; }

.form-area select {
  border-color: #dcdfdf;
  box-shadow: none;
  border-radius: 20px;
  background-color: transparent; }

.form-area .input-radio {
  border-color: #dcdfdf;
  box-shadow: none;
  border-radius: 20px;
  background-color: transparent;
  width: calc(50% - 10px);
  height: 2.4375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  border: 1px solid #cacaca;
  display: inline-flex; }
  .form-area .input-radio label {
    width: 100%; }

.form-area .submit-btn {
  border-radius: 20px;
  padding: 0.8rem 2rem;
  font-weight: bold; }

.form-area .input-field {
  justify-content: space-between; }
  .form-area .input-field input[type="email"],
  .form-area .input-field input[type="password"],
  .form-area .input-field input[type="text"] {
    border-color: #dcdfdf;
    box-shadow: none;
    border-radius: 20px;
    background-color: transparent; }
    .form-area .input-field input[type="email"]:not(.no-ico),
    .form-area .input-field input[type="password"]:not(.no-ico),
    .form-area .input-field input[type="text"]:not(.no-ico) {
      padding-right: 3rem; }
  .form-area .input-field select {
    width: calc(50% - 10px); }
  .form-area .input-field.input-default input[type="email"]:not(.no-ico),
  .form-area .input-field.input-default input[type="password"]:not(.no-ico),
  .form-area .input-field.input-default input[type="text"]:not(.no-ico) {
    padding-left: 3rem; }

.form-area label {
  color: #2c8a82;
  font-size: 16px;
  font-family: "Open-Sans"; }

.forgot-password a {
  color: #2c8a82; }
  .forgot-password a:hover {
    color: #253c3a; }

.forgot-password button {
  color: #2c8a82;
  cursor: pointer; }
  .forgot-password button:hover {
    color: #253c3a; }

.form-area .forgot-password {
  margin-top: -1rem;
  margin-bottom: 1rem;
  z-index: 1;
  position: relative; }

.form-socials-btns button.expanded {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between;
  color: #717171 !important;
  border-radius: 30px !important;
  border-color: #dcdfdf !important;
  font-size: 16px !important;
  font-family: "Open-Sans" !important;
  font-weight: bold !important;
  background-color: transparent !important;
  box-shadow: none !important;
  overflow: hidden; }
  .form-socials-btns button.expanded span {
    padding: 0 1rem !important;
    font-weight: bold !important; }
  .form-socials-btns button.expanded:hover {
    background-color: #f7fafa !important; }

@media print, screen and (min-width: 64em) {
  .my-page {
    margin-top: 1rem; } }

@media print, screen and (max-width: 39.99875em) {
  .my-page .my-tags .tags-list {
    min-width: 900px;
    width: 100%; } }

@media print, screen and (max-width: 39.99875em) {
  .scroll_js {
    margin-right: -1.5rem; } }

.aside-bar {
  font-family: "Open-Sans"; }
  @media print, screen and (max-width: 39.99875em) {
    .aside-bar {
      margin: 0 -1rem; } }
  @media (min-width: 1024px) and (max-width: 1030px) {
    .aside-bar {
      width: 250px !important; } }
  @media print, screen and (min-width: 64em) {
    .aside-bar {
      width: 269px;
      margin-top: 1rem; } }
  .aside-bar .menu-tabs {
    border: 0;
    background-color: #ecf4f3;
    margin-bottom: 0; }
    @media print, screen and (min-width: 64em) {
      .aside-bar .menu-tabs {
        background-color: #ffffff; } }
    .aside-bar .menu-tabs .tabs-title > a:focus,
    .aside-bar .menu-tabs .tabs-title > a[aria-selected="true"] {
      background: transparent;
      color: #2c8a82; }
    .aside-bar .menu-tabs > li:last-child:not(.is-active) > .accordion-title {
      border-bottom: 1px solid #ffffff; }
    .aside-bar .menu-tabs > li:not(.logout) > a:before,
    .aside-bar .menu-tabs > li:not(.logout) > .button:before {
      font-size: 12px;
      position: absolute;
      top: 50%;
      right: 1rem;
      margin-top: -0.5rem;
      font-family: "icomoon";
      content: ""; }
      @media print, screen and (min-width: 40em) {
        .aside-bar .menu-tabs > li:not(.logout) > a:before,
        .aside-bar .menu-tabs > li:not(.logout) > .button:before {
          content: ""; }
          [dir="ltr"] .aside-bar .menu-tabs > li:not(.logout) > a:before, [dir="ltr"]
          .aside-bar .menu-tabs > li:not(.logout) > .button:before {
            content: ""; } }
    .aside-bar .menu-tabs > li.is-active > a {
      border-bottom: 0;
      color: #2c8a82; }
      @media print, screen and (max-width: 63.99875em) {
        .aside-bar .menu-tabs > li.is-active > a:before {
          content: "";
          margin-right: 1rem; } }
    .aside-bar .menu-tabs > li.is-active .accordion-content {
      border-bottom: 1px solid #ffffff; }
    .aside-bar .menu-tabs > li > a,
    .aside-bar .menu-tabs > li > .button {
      display: flex;
      align-items: center;
      flex-direction: row;
      justify-content: space-between;
      color: #969696;
      padding: 1.5rem;
      position: relative;
      border-bottom: 1px solid #f7fafa; }
      @media print, screen and (max-width: 63.99875em) {
        .aside-bar .menu-tabs > li > a,
        .aside-bar .menu-tabs > li > .button {
          border-bottom: 1px solid #ffffff;
          border-top: 0;
          border-right: 0;
          border-left: 0;
          font-size: 16px; } }
      .aside-bar .menu-tabs > li > a:hover, .aside-bar .menu-tabs > li > a:focus,
      .aside-bar .menu-tabs > li > .button:hover,
      .aside-bar .menu-tabs > li > .button:focus {
        background-color: transparent;
        color: #2c8a82; }
      .aside-bar .menu-tabs > li > a span i,
      .aside-bar .menu-tabs > li > .button span i {
        font-size: 20px;
        margin-right: 1rem; }
        .aside-bar .menu-tabs > li > a span i.icon-envelop1,
        .aside-bar .menu-tabs > li > .button span i.icon-envelop1 {
          font-size: 15px; }
        .aside-bar .menu-tabs > li > a span i.icon-sign-out,
        .aside-bar .menu-tabs > li > .button span i.icon-sign-out {
          font-size: 15px; }
      @media print, screen and (max-width: 63.99875em) {
        .aside-bar .menu-tabs > li > a:last-child:not(.is-active) > .accordion-title,
        .aside-bar .menu-tabs > li > .button:last-child:not(.is-active) > .accordion-title {
          border-bottom: 0; } }
    .aside-bar .menu-tabs > li > .button {
      background: transparent;
      font-family: "Open-Sans";
      font-size: inherit; }
      .aside-bar .menu-tabs > li > .button i {
        font-size: 20px;
        margin-right: 1rem; }
        .aside-bar .menu-tabs > li > .button i.icon-envelop1 {
          font-size: 15px; }
        .aside-bar .menu-tabs > li > .button i.icon-sign-out {
          font-size: 15px; }
    @media print, screen and (max-width: 63.99875em) {
      .aside-bar .menu-tabs .accordion-content {
        background-color: #ecf4f3;
        border: 0; } }

@media print, screen and (max-width: 39.99875em) {
  .update-password {
    color: #2c8a82;
    text-decoration: underline;
    margin-left: 10px;
    font-size: 12px;
    margin-bottom: 1rem;
    display: inline-block; } }

@media print, screen and (max-width: 39.99875em) {
  .topper-title.margin-bottom-3 {
    margin-bottom: 2rem !important; } }

.topper-title h3 {
  color: #2c8a82; }

.newsletter-modal .topper-title h2 {
  font-size: 1.5625rem;
  margin-top: -3rem; }

.topper-title.style-1 h2 {
  position: relative;
  margin-bottom: 2rem;
  font-size: 30px;
  margin-top: 2rem; }
  .topper-title.style-1 h2:after {
    content: "";
    position: absolute;
    bottom: -1rem;
    background-color: #ffffff;
    height: 2px;
    width: 52px;
    left: 0;
    right: 0;
    margin: 0 auto; }
  .notification-modal .topper-title.style-1 h2 {
    margin-top: 0; }

.profile-avatar {
  position: relative; }
  .profile-avatar img {
    width: 76px;
    height: 76px; }
    @media print, screen and (min-width: 40em) {
      .profile-avatar img {
        width: 103px;
        height: 103px; } }

.profile-avatar-edit {
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  display: block;
  background: #ffffff;
  border-radius: 100%;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer; }
  .profile-avatar-edit i {
    font-size: 10px; }
  @media print, screen and (min-width: 40em) {
    .profile-avatar-edit {
      width: 30px;
      height: 30px; }
      .profile-avatar-edit i {
        font-size: 14px; } }

.profile-details h3 {
  color: #2c8a82; }

.profile-content {
  margin: 1rem 0; }
  @media print, screen and (min-width: 40em) {
    .profile-content {
      background-color: #ffffff;
      border: 1px solid #ecf4f3;
      border-radius: 40px;
      padding: 3rem;
      margin-bottom: 2rem; } }

.arrow-pointer lottie-player {
  width: 100px;
  transform: rotateX(180deg); }

@media print, screen and (max-width: 39.99875em) {
  .arrow-pointer {
    display: none; } }

@media print, screen and (max-width: 63.99875em) {
  .menu-pointer {
    display: none; } }

@media print, screen and (min-width: 64em) {
  .menu-pointer {
    margin-right: 17.5rem;
    position: absolute;
    top: 0; } }

/* ------- MY PROFILE ------- END -------- */
/* ------- PERSONALIZE ------- START -------- */
.input-field {
  position: relative;
  display: flex; }
  .input-field .ico-label {
    position: absolute;
    right: 16px;
    padding: 0.5rem 0;
    text-align: center;
    width: 20px;
    color: #9a9a9a; }
  .input-field .ico-show {
    position: absolute;
    left: 0;
    padding-top: 0.8rem;
    padding-left: 1.8rem;
    font-size: 11px;
    cursor: pointer; }
  .input-field.input-default {
    direction: rtl; }
    .input-field.input-default .ico-label {
      left: 16px; }
    .input-field.input-default .ico-show {
      right: 0;
      padding-right: 1.8rem; }
  .input-field .required {
    position: absolute;
    left: -1rem;
    margin-left: 0; }

.required {
  color: #2c8a82;
  margin-left: 10px; }

.message {
  margin-bottom: 0.5rem;
  color: #2c8a82; }
  .message.alert {
    color: #df6d3f; }

@media print, screen and (max-width: 63.99875em) {
  .personal-message {
    margin-top: 3rem;
    text-align: center; } }

@media print, screen and (min-width: 64em) {
  .personal-message {
    border-bottom: 1px solid #d1d5d5;
    padding-bottom: 1rem;
    margin-bottom: 1rem; } }

.personal-message h2 {
  font-size: 1.5625rem;
  line-height: 1.2;
  color: #253c3a;
  font-weight: bold; }
  @media print, screen and (min-width: 40em) {
    .personal-message h2 {
      font-size: 3.125rem;
      line-height: 1.4; } }

.personal-message h3 {
  font-size: 2.375rem;
  font-weight: bold; }

.action-btn {
  font-weight: bold;
  margin: 3rem auto 0;
  text-align: center; }
  @media print, screen and (min-width: 64em) {
    .action-btn {
      margin-top: 3rem;
      display: inline-block; } }
  .action-btn a {
    text-align: center; }
  .action-btn .button {
    border-radius: 40px;
    padding: 0.8rem 2rem;
    min-width: 169px;
    height: 46px;
    font-size: 20px;
    display: block;
    margin: 0 auto; }
  .action-btn .skip-btn {
    border-bottom: 1px solid #2c8a82;
    color: #2c8a82;
    font-weight: normal;
    font-size: 0.875rem;
    margin-top: 1rem;
    display: inline-block; }
  .action-btn .prev-btn {
    background-color: #f2f2f2;
    color: #969696; }
    @media print, screen and (min-width: 64em) {
      .action-btn .prev-btn {
        margin-top: 1rem; } }
    .action-btn .prev-btn:hover {
      background-color: #f0f0f0; }
  .action-btn .goto-btn {
    background-color: #e9f2ef;
    color: #253c3a; }

@media print, screen and (max-width: 39.99875em) {
  .action--button {
    display: flex; }
    .action--button .next-btn {
      order: 2; } }

@media print, screen and (min-width: 64em) {
  .img-cover {
    width: 540px; } }

.personal-inner {
  margin-top: 1rem;
  margin-bottom: 2rem; }
  @media print, screen and (min-width: 64em) {
    .personal-inner {
      margin-top: 8rem; } }

.function-info h3 {
  font-size: 30px; }
  @media print, screen and (min-width: 64em) {
    .function-info h3 {
      font-size: 40px; } }

.get-started {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 30px 0; }
  .get-started .action-btn {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 4;
    padding-bottom: 1rem; }

.personal-wrap {
  position: relative; }
  .personal-wrap-before {
    height: 80vh;
    overflow-y: auto; }
    @media print, screen and (max-width: 39.99875em) {
      .personal-wrap-before {
        height: calc(100vh - 180px);
        -ms-overflow-style: none;
        /* IE and Edge */
        scrollbar-width: none; }
        .personal-wrap-before::-webkit-scrollbar {
          display: none; } }
  .personal-wrap-after {
    text-align: center;
    margin: 0 auto;
    width: 100%;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 4;
    padding-bottom: 1rem; }
    .personal-wrap-after:after {
      content: "";
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      width: 100%;
      height: 100px;
      z-index: 2;
      background: #f7fafa;
      background: linear-gradient(0deg, #f7fafa 0%, rgba(247, 250, 250, 0.48223) 80%, rgba(247, 250, 250, 0) 100%);
      filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#f7fafa",endColorstr="#f7fafa",GradientType=1); }
    .personal-wrap-after .action-btn {
      z-index: 3;
      position: relative; }
  .personal-wrap-author {
    padding-bottom: 0; }
    @media print, screen and (max-width: 39.99875em) {
      .personal-wrap-author {
        padding-top: 0; } }

.horizontal-scroll-wrapper .mCSB_scrollTools.mCSB_scrollTools_horizontal {
  width: 300px;
  right: inherit; }

@media print, screen and (max-width: 39.99875em) {
  .mCSB_scrollTools.mCSB_scrollTools_horizontal {
    visibility: hidden; } }

.horizontal-scroll-inner {
  height: inherit; }

.v-inner-scroll.authors-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: 10px;
       column-gap: 10px;
  row-gap: 10px;
  justify-items: center; }
  @media print, screen and (max-width: 39.99875em) {
    .v-inner-scroll.authors-list {
      padding-bottom: 20px; } }
  @media print, screen and (min-width: 64em) {
    .v-inner-scroll.authors-list {
      grid-template-columns: repeat(6, 1fr);
      -moz-column-gap: 0;
           column-gap: 0; } }

@media print, screen and (max-width: 39.99875em) {
  .inner-scroll {
    padding-bottom: 6rem; } }

.inner-scroll.authors-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center; }
  @media print, screen and (max-width: 39.99875em) {
    .inner-scroll.authors-list {
      justify-content: space-between; } }

@media print, screen and (max-width: 63.99875em) {
  .inner-scroll .author-option {
    margin-bottom: 2rem; } }

.inner-scroll .tag-option .tag {
  font-size: 17px;
  padding: 5px 10px 0; }
  @media print, screen and (min-width: 64em) {
    .inner-scroll .tag-option .tag {
      font-size: 18px; } }

.select-list-inner {
  height: 100%;
  padding-bottom: 6rem; }

.tags-list {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center; }
  .tags-list.v-inner-scroll {
    justify-content: center; }
    @media print, screen and (max-width: 39.99875em) {
      .tags-list.v-inner-scroll {
        padding-bottom: 20px; } }
  .personal-wrap .tags-list {
    display: flex;
    justify-content: center; }
    @media print, screen and (min-width: 64em) {
      .personal-wrap .tags-list {
        max-width: 937px;
        margin: 4rem auto 0; } }

.author-option {
  text-align: center;
  display: inline-block;
  width: 86px;
  position: relative; }
  @media print, screen and (min-width: 40em) {
    .author-option {
      width: 115px; } }
  .author-option .author-img {
    width: 86px;
    height: 86px;
    margin: 0 auto 1.5rem; }
  .author-option input[type="checkbox"] {
    margin: 0;
    z-index: 1;
    font-size: 16px;
    position: absolute;
    top: 80px;
    width: 100%;
    left: 0;
    right: 0;
    text-align: center;
    outline: none;
    border: 0; }
    .author-option input[type="checkbox"]:before {
      content: "\e931";
      font-family: "icomoon"; }
    .author-option input[type="checkbox"]:checked ~ .author-img img {
      filter: grayscale(0); }
    .author-option input[type="checkbox"]:checked ~ .author-meta .author-name {
      color: #000000; }
    .author-option input[type="checkbox"]:checked:before {
      content: "\e932";
      font-family: "icomoon";
      color: #2c8a82; }
  @media print, screen and (min-width: 64em) {
    .personal-wrap .author-option {
      margin: 0.5rem; } }

.author-option .author-meta {
  line-height: 1;
  font-family: "Open-Sans";
  color: #929898; }
  .author-option .author-meta .author-name {
    font-weight: bold;
    margin-top: 0.5rem; }

@media print, screen and (min-width: 64em) {
  .my-authors .authors-list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    flex: 1 0 0%; } }

@media print, screen and (max-width: 39.99875em) {
  .my-authors .authors-list .mCSB_container {
    display: flex;
    flex-wrap: wrap;
    align-items: center; } }

.my-authors .author-option {
  margin-bottom: 1rem;
  margin-right: 1rem; }

@media print, screen and (min-width: 40em) {
  .my-authors .author-img {
    width: 99px;
    height: 99px; } }

.manage-block:not(:first-child) {
  margin-top: 2rem;
  border-top: 1px solid #d1d5d5;
  padding-top: 2rem; }

@media print, screen and (min-width: 64em) {
  .manage-block input[type="checkbox"] {
    top: 90px; } }

.add-more {
  color: #2c8a82;
  cursor: pointer;
  font-weight: bold;
  margin-bottom: 0;
  align-self: flex-start; }
  @media print, screen and (max-width: 63.99875em) {
    .add-more {
      margin-top: 1rem;
      margin-left: 0.5rem;
      display: inline-block; }
      .add-more i {
        font-size: 10px;
        margin-right: 0.5rem; } }
  @media print, screen and (min-width: 64em) {
    .add-more {
      background-color: #e4f0ef;
      display: inline-flex;
      align-items: center;
      justify-content: center; }
      .add-more:hover {
        background-color: #e4edec;
        color: #2c8a82; }
      .add-more.big {
        width: 99px;
        height: 99px;
        margin-right: 1rem; }
        .add-more.big i {
          font-size: 1.75rem; }
      .add-more.small {
        width: 30px;
        height: 30px; }
        .add-more.small i {
          font-size: 0.6875rem; } }
  .add-more.button {
    padding: 0.5rem 1rem;
    margin: 0.5rem; }
  .add-more span {
    margin-left: 0.5rem; }
  @media print, screen and (max-width: 39.99875em) {
    .category-menu .add-more {
      margin-top: 0;
      background-color: #e4f0ef;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 30px;
      height: 30px; }
      .category-menu .add-more:hover {
        background-color: #e4edec;
        color: #2c8a82; }
      .category-menu .add-more i {
        margin-right: 0; } }

.writer-check {
  cursor: pointer;
  margin-bottom: 1rem;
  position: relative; }
  .writer-check input[type="checkbox"] {
    display: block;
    cursor: pointer;
    background-color: #ecf4f3;
    border-radius: 50%;
    width: 26px;
    height: 26px;
    margin: 0 auto;
    font-size: 11px;
    font-weight: bold;
    color: #2c8a82;
    padding-top: 7px;
    z-index: 1;
    position: absolute;
    top: 80px;
    left: 0;
    right: 0;
    text-align: center; }
    .writer-check input[type="checkbox"]:hover {
      background-color: #d9edeb; }
    .writer-check input[type="checkbox"]:before {
      content: "";
      font-family: "icomoon"; }
    .writer-check input[type="checkbox"]:checked {
      background-color: #2c8a82; }
      .writer-check input[type="checkbox"]:checked:before {
        content: "";
        color: #ffffff;
        font-family: "icomoon";
        font-size: 8px; }

.lottie-wrap {
  position: relative; }
  @media print, screen and (max-width: 39.99875em) {
    .lottie-wrap {
      float: left;
      margin-left: 0.5rem; } }
  .lottie-wrap .lottie-check {
    margin: 0 auto; }
    .lottie-wrap .lottie-check svg {
      background-color: #ecf4f3;
      border-radius: 50%;
      margin: 0 auto;
      position: absolute;
      width: 26px !important;
      height: 26px !important;
      bottom: 0;
      left: 0;
      right: 0; }

.multi-check {
  cursor: pointer; }
  .multi-check input[type="checkbox"] {
    display: block; }
  .authors-list .multi-check:hover img {
    filter: grayscale(0); }

.tag-option {
  margin: 0.5rem; }
  .tag-option:hover .tag {
    background-color: #2c8a82;
    color: #ffffff; }
  .tag-option .tag {
    border: 1px solid #ced9d8;
    padding: 0.5rem 2rem 0.2rem;
    font-family: "Open-Sans";
    border-radius: 20px;
    text-align: center; }
    .my-tags .tag-option .tag,
    .modal-wrap .tag-option .tag {
      padding: 0.5rem 1rem;
      line-height: 1; }
  .tag-option input[type="checkbox"] {
    display: none; }
    .tag-option input[type="checkbox"]:checked ~ .tag {
      background-color: #2c8a82;
      color: #ffffff;
      border-color: transparent; }

.newsletter-ico lottie-player {
  width: 176px;
  height: 176px;
  margin: 0 auto; }

.entry-subscribe .newsletter-ico {
  margin-bottom: -3rem; }

@media print, screen and (min-width: 64em) {
  .newsletter-list {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(2, auto);
    grid-auto-columns: 1fr;
    grid-auto-flow: column;
    align-items: center;
    row-gap: 2rem; } }

@media print, screen and (min-width: 40em) {
  .personal-wrap .newsletter-list {
    display: flex;
    flex-wrap: wrap;
    gap: 50px;
    margin-top: 4rem; } }

.newsletter-item {
  position: relative;
  margin-bottom: 1rem;
  padding: 1rem;
  background-color: #ecf4f3;
  width: 315px; }
  @media print, screen and (max-width: 63.99875em) {
    .newsletter-item {
      display: flex;
      align-items: center; } }
  @media (min-width: 1024px) and (max-width: 1181px) {
    .newsletter-item {
      width: auto !important; } }
  @media print, screen and (min-width: 64em) {
    .newsletter-item {
      width: 292px;
      padding: 2rem 1rem 1rem; } }
  .newsletter-item input[type="checkbox"] {
    display: none; }
    .newsletter-item input[type="checkbox"]:checked ~ .checkbox-button {
      background-color: #2c8a82; }
      .newsletter-item input[type="checkbox"]:checked ~ .checkbox-button .icon-envelop2 {
        font-size: 11px; }
        .newsletter-item input[type="checkbox"]:checked ~ .checkbox-button .icon-envelop2:before {
          content: "\e93c"; }
  @media print, screen and (max-width: 39.99875em) {
    .profile-newsletter .newsletter-item {
      width: 100%; } }
  @media print, screen and (max-width: 39.99875em) {
    .personal-wrap-newsletter .newsletter-item {
      width: 100%; } }
  @media print, screen and (min-width: 64em) {
    .personal-wrap-newsletter .newsletter-item {
      margin-bottom: 0; } }

@media print, screen and (max-width: 63.99875em) {
  .newsletter-item-info {
    margin-right: 1rem; } }

@media print, screen and (max-width: 63.99875em) {
  .newsletter-item-icon img {
    width: 49px; } }

@media print, screen and (min-width: 64em) {
  .newsletter-item-icon {
    position: absolute;
    top: -2rem;
    right: 1rem; } }

.newsletter-item-action {
  margin-left: auto; }

.newsletter-item-title h3 {
  font-weight: bold;
  margin-bottom: 0;
  font-size: 16px; }
  @media print, screen and (min-width: 64em) {
    .newsletter-item-title h3 {
      font-size: 22px; } }

.newsletter-item-meta {
  margin-bottom: 0.5rem;
  margin-top: 0;
  font-size: 0.75rem;
  color: #3b3b3b;
  line-height: 1.2;
  font-family: "Open-Sans"; }

.checkbox-button {
  background-color: #000000;
  padding: 0.3rem 1rem;
  border-radius: 20px;
  display: inline-block;
  color: #ffffff; }
  @media print, screen and (min-width: 64em) {
    .checkbox-button {
      padding: 0.8rem 1.5rem;
      line-height: 0; } }
  .checkbox-button .icomoon-icon {
    margin-right: 10px; }

@media print, screen and (max-width: 39.99875em) {
  .cstm-inpt {
    margin-top: -15px; } }

.end-message {
  text-align: center;
  margin: 0 auto;
  padding: 3rem 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: calc(100vh - 15rem); }
  .end-message .button {
    margin: 0 auto 1rem;
    text-align: center;
    font-size: 18px; }
  .end-message .success-lottie {
    width: 138px;
    height: 138px;
    margin: 0 auto 1.5rem; }
  .end-message-success h3 {
    font-size: 1.75rem; }
  .end-message-success p {
    font-family: "Open-Sans"; }

.reveal .vertical-scroll-wrapper,
.modal-wrap .vertical-scroll-wrapper {
  height: 450px;
  overflow-y: auto; }
  @media print, screen and (max-width: 39.99875em) {
    .reveal .vertical-scroll-wrapper,
    .modal-wrap .vertical-scroll-wrapper {
      -ms-overflow-style: none;
      scrollbar-width: none; }
      .reveal .vertical-scroll-wrapper::-webkit-scrollbar,
      .modal-wrap .vertical-scroll-wrapper::-webkit-scrollbar {
        display: none; } }

.reveal .vertical-scroll-inner,
.modal-wrap .vertical-scroll-inner {
  height: 100%; }

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

.subscribe-all {
  text-align: center; }
  @media print, screen and (min-width: 64em) {
    .subscribe-all {
      position: absolute;
      display: flex;
      align-items: center;
      margin-left: 1rem;
      z-index: 2; } }

.notif-message {
  position: absolute;
  top: 0.5rem; }

/* ------- PERSONALIZE ------- END -------- */
/* ------- CUSTOM MODAL ------- START -------- */
.modal-open {
  overflow-y: hidden; }

.modal-toggle {
  cursor: pointer; }

.modal-wrap {
  padding: 2rem;
  position: fixed;
  z-index: 10000;
  /* 1 */
  top: 0;
  right: 0;
  visibility: hidden;
  opacity: 0;
  width: 100%;
  height: 100%; }
  @media print, screen and (max-width: 39.99875em) {
    .modal-wrap {
      overflow: auto; } }

.modal-wrap.is-visible {
  visibility: visible;
  opacity: 1; }

.modal-overlay {
  position: fixed;
  z-index: 99;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  visibility: hidden;
  opacity: 0;
  transition: all 0.25s ease-in; }

.modal-wrap.is-visible .modal-overlay {
  opacity: 1;
  visibility: visible;
  transition-delay: 0s; }

.modal-wrapper {
  position: absolute;
  z-index: 9999;
  top: 0;
  left: 0;
  right: 0;
  width: 95%;
  margin: 0 auto;
  background-color: #ffffff;
  box-shadow: 0 0 1.5em rgba(0, 0, 0, 0.35); }
  @media print, screen and (min-width: 64em) {
    .modal-wrapper {
      width: 60rem; }
      .notification-modal .modal-wrapper {
        width: 390px; } }
  .notification-modal .modal-wrapper {
    background-color: #006057;
    color: #ffffff;
    border-radius: 36px; }
    .notification-modal .modal-wrapper img {
      width: 208px; }

.modal-transition {
  transition: all 0.3s 0.12s;
  transform: translateY(-10%);
  opacity: 0; }

.modal-wrap.is-visible .modal-transition {
  transform: translateY(0%);
  top: 1rem;
  opacity: 1; }
  @media print, screen and (min-width: 64em) {
    .modal-wrap.is-visible .modal-transition {
      transform: translateY(-50%);
      top: 50%; } }

.modal-close,
.game-close {
  position: absolute;
  top: 0;
  right: 0;
  padding: 0.8em;
  color: #000000;
  font-size: 25px;
  background: none;
  border: 0;
  cursor: pointer; }
  .notification-modal .modal-close, .notification-modal
  .game-close {
    color: #ffffff; }
  .modal-close:hover,
  .game-close:hover {
    color: #777; }

.modal-before {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 1rem; }
  .modal-before .close-button {
    position: static; }
  .modal-before .button {
    margin-bottom: 0; }

.modal-inner {
  padding: 0 1rem; }
  @media print, screen and (min-width: 64em) {
    .modal-inner {
      padding: 0 3rem; } }
  .notification-modal .modal-inner {
    padding: 20px 20px 50px;
    /* Mobile Landscape */ }
    @media only screen and (min-device-width: 320px) and (max-device-width: 896px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: landscape) {
      .notification-modal .modal-inner {
        height: 300px;
        overflow: scroll; } }
    @media only screen and (min-device-width: 412px) and (max-device-width: 916px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: landscape) {
      .notification-modal .modal-inner {
        height: 300px;
        overflow: scroll; } }
    @media screen and (max-height: 601px) and (min-height: 600px) {
      .notification-modal .modal-inner {
        height: 500px;
        overflow: scroll; } }
    @media print, screen and (min-width: 64em) {
      .notification-modal .modal-inner {
        padding: 35px 1rem 75px; } }

.select-all {
  font-family: "Open-Sans";
  padding: 10px 20px;
  position: absolute;
  top: 1rem;
  right: 1rem; }
  @media print, screen and (max-width: 39.99875em) {
    .select-all {
      line-height: 0.2; } }
  .select-all i {
    font-size: 7px;
    margin-right: 5px; }

.newsletter-modal .newsletter-ico {
  margin-top: -26px; }

.newsletter-modal .modal-inner {
  padding-bottom: 43px; }

.newsletter-modal form {
  display: flex;
  flex-wrap: wrap; }
  .newsletter-modal form > div:first-child {
    width: 100%;
    order: 2; }

.newsletter-modal .mailchimp-newsletter-subscribe {
  display: block !important;
  margin: 1rem auto 0; }

.newsletter-modal .newsletter-content .mailchimp-newsletter-subscribe {
  max-width: 590px;
  order: 3; }

@media print, screen and (max-width: 39.99875em) {
  .newsletter-modal {
    overflow: scroll; } }

.newsletter-modal .messages {
  margin-top: 20px; }

.newsletter-modal .messages.messages--status {
  font-weight: 400;
  font-size: 25px;
  line-height: 30px;
  color: #2c8a82;
  text-align: center; }
  .newsletter-modal .messages.messages--status:before {
    content: "";
    font-family: "icomoon";
    margin-left: 10px; }

.newsletter-content .mailchimp-inner {
  margin-top: 2rem;
  margin-bottom: 1rem; }
  .newsletter-content .mailchimp-inner input[type="checkbox"] {
    accent-color: #000000; }

@media print, screen and (max-width: 39.99875em) {
  .newsletter-content .mailchimp-newsletter-wrapper {
    width: 50%;
    margin-bottom: 1rem; } }

.newsletter-content .mailchimp-newsletter-subscribe {
  position: relative;
  display: inline-block;
  width: 100%; }

.newsletter-content .form-required {
  display: none; }

@media print, screen and (max-width: 39.99875em) {
  .newsletter-content .js-form-item {
    display: flex;
    align-items: flex-start; } }

.newsletter-content .mailchimp-newsletter-mergefields {
  width: 100%;
  display: inline-block; }

.newsletter-content input.form-email {
  border-color: #848e8d;
  box-shadow: none;
  border-radius: 30px;
  margin-right: 0;
  margin-right: 0;
  margin-bottom: 1rem;
  direction: ltr;
  color: #000000; }

.newsletter-content .form-submit {
  background-color: #000000;
  font-size: 22px;
  border-radius: 30px;
  display: block;
  height: 2.7375rem;
  margin: 0 auto;
  padding: 0.5rem 1rem; }
  @media print, screen and (min-width: 64em) {
    .newsletter-content .form-submit {
      padding: 0.5rem 3rem; } }
  .newsletter-content .form-submit:hover {
    background-color: #2c8a82;
    color: #ffffff;
    transition: background-color 0.25s ease-out, color 0.25s ease-out; }

.notification-modal .button {
  font-weight: bold;
  margin: 0 0.2rem; }
  @media print, screen and (min-width: 64em) {
    .notification-modal .button {
      margin: 0 0.5rem; } }

.notification-modal .button.dark {
  background-color: #000000;
  color: #ffffff; }

.notification-modal .button.light {
  background-color: #ffffff;
  color: #000000; }

@media print, screen and (min-width: 64em) {
  .notification-modal img {
    height: 229px; } }

.notification-modal p {
  font-size: 19px;
  color: #efece2;
  margin-bottom: 0; }

.notification-modal .choices {
  margin-top: 45px;
  margin-bottom: 35px; }

/* ------- CUSTOM MODAL ------- END -------- */
/* ------- 404 NOT FOUND ------- START -------- */
@media print, screen and (max-width: 39.99875em) {
  .not-found-wrap {
    text-align: center; } }

@media print, screen and (min-width: 64em) {
  .not-found-wrap .not-found-text {
    width: 30rem; } }

.not-found-wrap .not-found-inner {
  position: relative; }

@media print, screen and (min-width: 64em) {
  .not-found-wrap .not-found-img {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1; } }

.not-found-num {
  font-size: 6.125rem;
  font-family: "Roboto Serif", serif;
  font-weight: bolder; }
  @media print, screen and (min-width: 64em) {
    .not-found-num {
      font-size: 9.625rem; } }

@media print, screen and (min-width: 64em) {
  .not-found-txt {
    margin: 1rem 0 4rem; } }

.not-found-txt h2 {
  font-size: 2rem;
  font-weight: 900;
  color: #2c8a82; }
  @media print, screen and (min-width: 64em) {
    .not-found-txt h2 {
      font-size: 3.375rem; } }

.not-found-txt p {
  font-family: "Open-Sans";
  font-size: 1.125rem;
  color: #4d4d4d; }

.not-found-btn .button {
  background-color: #000000;
  font-size: 1.125rem;
  color: #ffffff;
  font-weight: bold;
  padding: 1rem 3rem; }
  .not-found-btn .button:hover {
    background-color: #2c8a82;
    color: #ffffff; }

/* ------- 404 NOT FOUND ------- START -------- */
/* ----- WEATHER WIDGET ------ START ------ */
.weather-widget {
  background-color: #ffffff; }

#currentWeather {
  height: 100%; }

.weather-outline {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  color: #ffffff;
  padding: 1rem 2rem 1rem;
  height: 100%;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  /* netbook only */ }
  @media print, screen and (max-width: 39.99875em) {
    .weather-outline {
      padding: 1rem; } }
  @media screen and (max-width: 1024px) {
    .weather-outline {
      padding: 1rem; } }

.rainy {
  background-image: url(../img/weather/rainy.jpg); }

.cloudy {
  background-image: url(../img/weather/cloudy.jpg); }

.sandstorm {
  background-image: url(../img/weather/sandstorm.jpg); }

.clear {
  background-image: url(../img/weather/clear.jpg); }

.weather-ico {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  height: 264px; }
  @media screen and (max-width: 320px) {
    .weather-ico {
      height: 240px; } }

.sun-ico {
  background-image: url(../img/icon/weather/condition/sun.svg); }

.moon-ico {
  background-image: url(../img/icon/weather/condition/moon.svg); }

.sun_clouds-ico {
  background-image: url(../img/icon/weather/condition/sun_clouds.svg); }

.moon_clouds-ico {
  background-image: url(../img/icon/weather/condition/moon_clouds.svg); }

.clouds-ico {
  background-image: url(../img/icon/weather/condition/clouds.svg); }

.rain-ico {
  background-image: url(../img/icon/weather/condition/rain.svg); }

.lightning-ico {
  background-image: url(../img/icon/weather/condition/lightnight.svg); }

.sun_rain_snow-ico {
  background-image: url(../img/icon/weather/condition/sun_rain_snow.svg); }

.moon_rain_snow-ico {
  background-image: url(../img/icon/weather/condition/moon_rain_snow.svg); }

.fog-ico {
  background-image: url(../img/icon/weather/condition/fog.svg); }

.weather-icon {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  width: 30px;
  height: 22px; }

.morning-ico {
  background-image: url(../img/icon/weather/morning.svg); }

.night-ico {
  background-image: url(../img/icon/weather/night.svg); }

.weather-details {
  font-size: 18px;
  font-weight: bold; }

.weather-outline-city {
  font-size: 3.125rem;
  font-weight: bold; }

.weather-outline-condition {
  font-size: 18px;
  position: absolute;
  left: 0;
  top: 4rem;
  width: 235px;
  overflow: hidden;
  /* Smallest only */
  /* netbook only */ }
  @media print, screen and (max-width: 39.99875em) {
    .weather-outline-condition {
      left: -2rem; } }
  @media screen and (max-width: 320px) {
    .weather-outline-condition {
      width: 205px; } }
  @media screen and (max-width: 1024px) {
    .weather-outline-condition {
      width: 200px;
      left: -1rem; } }

.weather-outline-info {
  margin-top: auto; }

.weather-outline-status {
  text-align: center;
  margin-top: -4rem;
  font-weight: bold; }

.weather-today {
  line-height: 1; }
  .weather-today span {
    font-size: 18px; }
  .weather-today time {
    font-size: 10px;
    font-family: "Open-Sans";
    display: inline-block;
    color: rgba(255, 255, 255, 0.6); }

.weather-temperature {
  position: relative;
  font-weight: bold;
  font-size: 100px;
  margin-left: 3rem;
  direction: ltr;
  text-align: right;
  /* Small only */
  /* netbook only */ }
  @media screen and (max-width: 320px) {
    .weather-temperature {
      font-size: 80px;
      margin-left: 1rem; } }
  @media screen and (max-width: 1024px) {
    .weather-temperature {
      margin-left: 1rem;
      font-size: 80px; } }
  .weather-temperature:before {
    display: block;
    content: "";
    position: absolute;
    top: 3rem;
    right: -2rem;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    border: 5px solid #ffffff;
    /* Small only */
    /* netbook only */ }
    @media screen and (max-width: 320px) {
      .weather-temperature:before {
        top: 2rem;
        right: -1.5rem;
        width: 20px;
        height: 20px; } }
    @media screen and (max-width: 1024px) {
      .weather-temperature:before {
        top: 2rem;
        right: -1.5rem;
        width: 18px;
        height: 18px; } }

.daypart {
  padding: 0.5rem;
  border: 1px solid #efefef;
  text-align: center;
  margin: 0 0.2rem 1rem;
  border-radius: 5px;
  cursor: pointer; }
  .daypart.active, .daypart:hover {
    border-color: #e4f0ef;
    background-color: #c6e2df; }
  @media print, screen and (min-width: 64em) {
    .daypart {
      margin-bottom: 0; } }

.daypart-day {
  color: #2c8a82;
  font-size: 15px;
  margin-bottom: 0.25rem; }

.daypart-date {
  color: #bcbcbc;
  font-size: 11px;
  font-family: "Open-Sans"; }

.weather-info-item {
  margin: 0.5rem;
  padding: 0.5rem;
  font-size: 18px;
  font-family: "Open-Sans"; }
  .weather-info-item:not(:last-child) {
    border-bottom: 1px solid #d1d5d5; }

.weather-icon {
  margin-right: 1rem; }

/* ----- WEATHER WIDGET ------ END ------ */
/* ----- PODCAST BLOCK------ START ------ */
.sidebar-wrap .podcast-list p {
  font-size: 0.9375rem;
  font-family: "Open-Sans"; }

.podcast-list .date-field,
.podcast-list .podcast-time {
  font-family: "Open-Sans";
  color: #2c8a82; }
  .podcast-list .date-field i,
  .podcast-list .podcast-time i {
    font-size: 0.6875rem;
    margin-right: 10px; }
  .podcast-list .date-field time,
  .podcast-list .podcast-time time {
    font-size: 0.6875rem; }
  .podcast-list .date-field a,
  .podcast-list .date-field button,
  .podcast-list .podcast-time a,
  .podcast-list .podcast-time button {
    font-size: 0.75rem;
    color: inherit; }
    .podcast-list .date-field a:hover,
    .podcast-list .date-field button:hover,
    .podcast-list .podcast-time a:hover,
    .podcast-list .podcast-time button:hover {
      color: #000000; }

.podcast-block {
  padding: 10px 1rem; }

.podcast-time {
  font-weight: bold;
  display: flex; }
  @media print, screen and (max-width: 39.99875em) {
    .podcast-time {
      display: flex;
      align-items: center; } }
  .podcast-time i {
    margin-left: 1rem;
    float: right;
    padding: 0 10px 0 0; }
    .block-content .podcast-time i {
      background-color: #f7fafa;
      border-radius: 50%;
      padding: 10px;
      margin-left: 1rem;
      margin-right: 0; }
  .news-ticker-area .podcast-time a, .news-ticker-area
  .podcast-time button {
    font-size: 11px; }
  .news-ticker-area .podcast-time {
    display: flex;
    flex-direction: row;
    align-items: center; }
    .news-ticker-area .podcast-time i {
      background-color: #ffffff;
      color: #2c8a82;
      border-radius: 50%;
      padding: 8px;
      width: 29px;
      height: 29px;
      font-size: 14px; }
      .news-ticker-area .podcast-time i .icon-play-green:before {
        color: #4d8a88; }
    .news-ticker-area .podcast-time span {
      font-size: 11px;
      font-family: "Effra";
      color: #2c8a82; }
      @media print, screen and (min-width: 64em) {
        .news-ticker-area .podcast-time span {
          line-height: 8px; } }

.podcast-item {
  position: relative;
  background-color: #ffffff;
  padding: 0.8125rem; }
  .podcast-item:not(:last-child) {
    margin-bottom: 0.875rem; }
  .podcast-item .media-object {
    margin-top: 8px;
    margin-bottom: 0; }
    .podcast-item .media-object p {
      color: #555555;
      font-size: 0.75rem; }
    .podcast-item .media-object h6 {
      color: #253c3a; }
  .podcast-item:hover {
    background-color: #f0f7f7; }
  .podcast-item > a {
    display: block;
    height: 100%;
    position: absolute;
    width: 100%;
    z-index: 1;
    top: 0;
    border: 0;
    right: 0;
    left: 0;
    bottom: 0;
    content: ""; }
  @media print, screen and (min-width: 64em) {
    .podcast-grid .podcast-item {
      height: 100%; } }

.podcast-iframe-episodes {
  margin: 1rem auto; }
  @media print, screen and (min-width: 40em) {
    .podcast-iframe-episodes {
      width: 80%; } }
  @media print, screen and (min-width: 64em) {
    .podcast-iframe-episodes {
      width: 70%; } }

.podcast-label {
  color: #253c3a;
  margin-right: 1rem;
  font-size: 15px;
  font-weight: bold; }
  .podcast-label i {
    margin-right: 0.5rem; }
  .podcast-label lottie-player {
    width: 22px;
    height: 19px;
    float: left;
    margin-right: 1rem; }
  .opinion-authors-list .podcast-label {
    color: #2c8a82;
    font-weight: normal;
    transition: all 0.25s ease-in-out 0s; }
  .audio-player-top .podcast-label:hover {
    color: #2c8a82; }

.podcast-grid .date-field a {
  font-family: "Open-Sans";
  font-size: 0.875rem; }

.podcast-grid .podcast-time i {
  margin-right: 0;
  margin-left: 0;
  font-size: 1rem; }

.podcast-grid .podcast-time time {
  font-family: "Open-Sans";
  font-size: 0.875rem;
  font-weight: normal;
  display: inline-block;
  line-height: 0; }

.podcast-screen {
  background-color: #ecf4f3;
  padding: 1rem 0;
  margin-bottom: -1rem; }
  @media print, screen and (min-width: 40em) {
    .podcast-screen {
      margin-top: 0; } }
  @media print, screen and (min-width: 64em) {
    .podcast-screen {
      margin-top: -0.5rem;
      padding-bottom: 3rem;
      margin-bottom: -2.5rem; } }

.podcast-title {
  margin-bottom: 0.5rem; }
  @media print, screen and (max-width: 39.99875em) {
    .podcast-title {
      margin-top: 2rem; }
      .podcast-title h4 {
        font-size: 0.9375rem; } }
  @media print, screen and (min-width: 64em) {
    .podcast-title {
      position: absolute;
      top: 1rem; } }

.podcast-episode-title {
  margin-bottom: 0; }
  .podcast-episode-title h2 {
    font-weight: bold;
    font-size: 1rem;
    margin-bottom: 0; }
    @media print, screen and (min-width: 40em) {
      .podcast-episode-title h2 {
        font-size: 2.0625rem; } }

.podcast-speaker {
  font-size: 0.8125rem;
  margin-bottom: 0.5rem;
  color: #2c8a82; }
  @media print, screen and (min-width: 40em) {
    .podcast-speaker {
      margin-bottom: 1rem; } }
  .podcast-speaker a {
    color: #2c8a82; }
    .podcast-speaker a:hover {
      color: #000000; }

.podcast-episode-meta {
  color: #000000; }
  .podcast-episode-meta .podcast-length {
    margin-left: 0.5rem;
    padding-left: 0.5rem;
    display: inline-block;
    border-left: 1px solid #929898; }

.podcast-episode-content {
  padding: 0 1.5rem; }
  @media print, screen and (min-width: 40em) {
    .podcast-episode-content {
      padding: 0 5rem; } }
  @media print, screen and (min-width: 64em) {
    .podcast-episode-content {
      padding: 0 13rem; } }
  .podcast-episode-content p {
    color: #4d4d4d; }

.podcast-episode-item .grid-x {
  flex-direction: column; }

.podcast-episode-item .podcast-img {
  width: 141px; }
  @media print, screen and (min-width: 64em) {
    .podcast-episode-item .podcast-img {
      width: 235px; } }

.podcast-episode-item .podcast-title h4 {
  font-size: 22px;
  font-weight: bold; }

.podcast-btn {
  margin: 2rem;
  display: inline-block; }
  .podcast-episode-item .podcast-btn {
    margin-bottom: 60px; }

.play-podcast-btn {
  background: #000000;
  border-radius: 20px;
  padding: 0.5rem 2rem;
  font-size: 0.875rem;
  color: #ffffff;
  width: 180px;
  cursor: pointer; }
  .play-podcast-btn i {
    font-size: 12px;
    margin-right: 10px; }
  .play-podcast-btn:hover {
    background-color: rgba(0, 0, 0, 0.8);
    color: #ffffff; }

.audio-player-top,
.play-podcast-btn {
  cursor: pointer; }
  .audio-player-top.playing .icon-play-green,
  .play-podcast-btn.playing .icon-play-green {
    font-weight: bold;
    font-size: 14px; }
    .audio-player-top.playing .icon-play-green:before,
    .play-podcast-btn.playing .icon-play-green:before {
      content: "\e923"; }

@media print, screen and (max-width: 39.99875em) {
  .podcast-socials {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center; } }

.podcast-socials a {
  margin: 1rem 1.5rem 0; }

@media print, screen and (max-width: 39.99875em) and (min-width: 64em) {
  .podcast-socials a.google-podcast-btn img {
    width: 120px; } }

@media print, screen and (max-width: 39.99875em) and (min-width: 64em) {
  .podcast-socials a.apple-podcast-btn img {
    width: 112px; } }
  @media print, screen and (max-width: 39.99875em) {
    .podcast-socials a img {
      width: 24px; } }
  @media print, screen and (max-width: 39.99875em) and (min-width: 64em) {
    .podcast-socials a img {
      width: 100px; } }
  @media print, screen and (min-width: 40em) {
    .podcast-socials a {
      margin: 1rem 1rem 0; } }

.podcast-socials-title {
  flex-grow: 1;
  width: 100%;
  font-size: 14px;
  margin-bottom: 10px; }

.podcast-banner {
  display: flex;
  overflow: hidden;
  flex-direction: column;
  align-items: center;
  color: #ffffff;
  margin-bottom: 1rem;
  text-align: center;
  position: relative;
  height: 350px;
  background-color: #36b18c; }
  @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
    .podcast-banner {
      height: 100%; } }
  @media print, screen and (min-width: 40em) {
    .podcast-banner {
      flex-direction: row;
      text-align: initial; } }
  @media print, screen and (min-width: 64em) {
    .podcast-banner {
      height: 210px;
      margin-bottom: 2rem; } }

.podcast-banner .podcast-img {
  position: absolute;
  top: initial;
  bottom: -5rem;
  width: 100%; }
  @media print, screen and (min-width: 40em) {
    .podcast-banner .podcast-img {
      top: -6rem;
      right: 0;
      height: 100%;
      width: 450px; } }

.podcast-content {
  padding: 1.5rem;
  z-index: 1;
  position: relative; }
  @media print, screen and (min-width: 40em) {
    .podcast-content {
      width: 50%; } }
  .podcast-content h3 {
    font-weight: bold; }
  .podcast-content p {
    font-size: 0.8125rem; }

.return-btn {
  margin: 1rem 0;
  font-size: 14px; }
  .return-btn a {
    display: flex;
    align-items: center; }
  .return-btn i {
    font-size: 14px;
    margin-right: 10px; }

.more-btn {
  margin: 2rem; }
  .more-btn .button {
    padding-right: 2rem;
    padding-left: 2rem; }

.page-btns {
  z-index: 1;
  margin: 0 auto; }
  .page-btns .entry-share-row.entry-bookmark {
    margin-left: 1rem;
    margin-right: 0; }
  .page-btns.flex-container {
    align-items: flex-start;
    width: 100%; }
    @media print, screen and (max-width: 39.99875em) {
      .page-btns.flex-container {
        align-items: center; } }

.opinion-authors-list.has-separator > div .article-item {
  border-bottom: 1px solid #d1d5d5;
  margin-bottom: 1rem;
  padding-bottom: 1rem; }

@media print, screen and (min-width: 40em) {
  .opinion-authors-list .article-item-img {
    margin-bottom: 0; } }

.opinion-authors-list ~ .opinion-authors-list:last-child.has-separator > div:last-child .article-item {
  border-bottom: transparent; }

.play-podcast-btn {
  margin-bottom: 0; }
  .play-podcast-btn .lbl-playing {
    display: none; }
  .play-podcast-btn.playing .lbl-paused {
    display: none; }
  .play-podcast-btn.playing .lbl-playing {
    display: inline-block; }

.podcast-single-block {
  text-align: center;
  background-color: #36b18c;
  color: #ffffff;
  padding: 3rem 2rem 0; }
  .podcast-single-block .podcast-title {
    font-size: 1.6875rem;
    color: inherit;
    margin-top: 0;
    font-size: bold; }
  .podcast-single-block p {
    margin-bottom: 0; }
  .podcast-single-block .podcast-img {
    width: 166px;
    margin: 0 auto; }

/* ----- PODCAST BLOCK------ END ------ */
/* ----- CARICATURE BLOCK ------ START ------ */
.caricature-slider {
  margin-bottom: 3rem; }
  @media print, screen and (max-width: 39.99875em) {
    .caricature-slider {
      flex-flow: nowrap;
      overflow-x: scroll !important;
      display: flex;
      -ms-scroll-snap-type: x mandatory;
          scroll-snap-type: x mandatory;
      margin: 0 -1rem;
      gap: 20px;
      padding: 0 1rem;
      background: none !important;
      -ms-overflow-style: none;
      scrollbar-width: none; }
      .caricature-slider::-webkit-scrollbar {
        display: none; }
      .caricature-slider > .caricature-slide {
        width: calc(100% - 20px) !important;
        scroll-snap-align: center;
        flex-shrink: 0; } }

.caricature-slide {
  margin-bottom: 0; }

/* ----- CARICATURE BLOCK ------ END ------ */
/* ----- NEWSTICKER WIDGET ------ START ------ */
.smarticker.alert .smarticker-category a {
  color: #bd3c2f; }

.smarticker.alert .smarticker-cats:before {
  color: #bd3c2f; }

.smarticker .smarticker-category img {
  margin-left: 10px; }

.smarticker .smarticker-category li:not(.active-ag) {
  display: none; }

.newsticker-area--v2 .acme-news-ticker {
  background: transparent;
  border: 0;
  height: 30px; }

.newsticker-area--v2 .acme-news-ticker-box {
  padding-top: 0; }
  .newsticker-area--v2 .acme-news-ticker-box ul {
    line-height: 1.9; }
    .newsticker-area--v2 .acme-news-ticker-box ul li {
      display: none; }

.newsticker-area--v2 .acme-news-ticker-label {
  background: transparent;
  color: #bd3c2f;
  float: left;
  margin-left: 0;
  margin-right: 15px;
  font-weight: bold;
  position: relative;
  padding: 0;
  display: flex;
  align-items: center;
  gap: 10px; }
  .newsticker-area--v2 .acme-news-ticker-label:after {
    display: block;
    content: "|";
    font-size: 1rem;
    color: #ce3232;
    font-weight: bold; }

.news-ticker-area {
  margin-bottom: 35px;
  margin-top: 0.5rem;
  background-color: #e9f2ef; }

/* ----- NEWSTICKER WIDGET ------ END ------ */
/* ------- MOST PAGES  ------- START -------- */
.bottomFixed {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9; }

.bookmark-check {
  cursor: pointer;
  position: relative; }
  .bookmark-check input[type="checkbox"] {
    display: block;
    cursor: pointer;
    margin: 0;
    display: none; }
    .page-btns .bookmark-check input[type="checkbox"] {
      display: none; }
    .bookmark-check input[type="checkbox"]:checked ~ i {
      color: #000000; }
      .bookmark-check input[type="checkbox"]:checked ~ i:before {
        content: ""; }
  .bookmark-check i {
    color: #2c8a82;
    background-color: #f0f7f6;
    border-radius: 50%;
    height: 38px;
    width: 38px;
    padding: 12px 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 16px; }
    .t-h-content .bookmark-check i {
      justify-content: flex-start;
      background-color: transparent;
      padding-left: 0;
      padding-right: 0;
      width: auto; }
      .t-h-content .bookmark-check i:hover {
        background-color: transparent; }
    .podcast-screen .bookmark-check i {
      background-color: #ffffff; }
    .bookmark-check i:hover {
      background-color: #d9edeb; }

.follow-tag {
  display: block; }
  .follow-tag input[type="checkbox"] {
    margin: 0; }
    .follow-tag input[type="checkbox"]:checked ~ .follow-check {
      background-color: #2c8a82;
      color: #ffffff; }
      .follow-tag input[type="checkbox"]:checked ~ .follow-check i:before {
        content: "";
        color: #ffffff; }
  .follow-tag .follow-check {
    cursor: pointer;
    position: relative;
    background-color: #000000;
    color: #2c8a82;
    padding: 7px 13px;
    margin-bottom: 0;
    font-size: 14px;
    color: #ffffff; }
    @media print, screen and (max-width: 39.99875em) {
      .follow-tag .follow-check {
        pointer-events: none; } }
    .follow-tag .follow-check i {
      font-size: 10px;
      margin-right: 3px; }

.t-h {
  border: none;
  background: transparent; }

.thumb {
  width: 75px;
  height: 75px; }
  .thumb img {
    width: 100%; }

.op-slider .op-slider-item .podcast-item {
  margin-right: 1.28125rem;
  margin-left: 1.28125rem; }

.op-slider .slick-list {
  margin-right: -1.28125rem;
  margin-left: -1.28125rem;
  padding-bottom: 1rem; }

.op-slider .slick-dots li button:before {
  background-color: #d9e2e0; }

@media print, screen and (max-width: 63.99875em) {
  .spotlight-carousel .article-item {
    margin-bottom: 0; } }

.spotlight-carousel,
.video-carousel {
  /* Mobile Landscape */
  /* Mobile Portrate */
  /* Mobile Portrate - Landscape */ }
  @media only screen and (min-device-width: 320px) and (max-device-width: 896px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: landscape) {
    .spotlight-carousel > .cell,
    .video-carousel > .cell {
      width: calc(70% - 40px) !important; } }
  @media only screen and (min-device-width: 320px) and (max-device-width: 896px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: portrait) {
    .spotlight-carousel > .cell,
    .video-carousel > .cell {
      width: calc(100% - 40px) !important; } }
  @media only screen and (min-device-width: 320px) and (max-device-width: 896px) and (-webkit-min-device-pixel-ratio: 2) {
    .spotlight-carousel,
    .video-carousel {
      flex-flow: nowrap;
      overflow-x: scroll;
      -ms-scroll-snap-type: x mandatory;
          scroll-snap-type: x mandatory;
      margin-right: -1rem !important;
      margin-left: -1rem !important;
      padding: 0 0.475rem;
      -ms-overflow-style: none;
      scrollbar-width: none; }
      .spotlight-carousel::-webkit-scrollbar,
      .video-carousel::-webkit-scrollbar {
        display: none; }
      .spotlight-carousel > .cell,
      .video-carousel > .cell {
        scroll-snap-align: center;
        margin-right: 0.625rem;
        margin-left: 0.625rem; }
      .spotlight-carousel.gutters-1x > .cell,
      .video-carousel.gutters-1x > .cell {
        padding-right: 0;
        padding-left: 0; } }

@media print, screen and (min-width: 64em) {
  .spotlight-carousel {
    row-gap: 30px; } }

@media print, screen and (max-width: 39.99875em) {
  .objects-list.video-carousel {
    flex-flow: nowrap;
    overflow-x: scroll;
    -ms-scroll-snap-type: x mandatory;
        scroll-snap-type: x mandatory;
    margin-right: -1rem !important;
    margin-left: -1rem !important;
    padding: 0 0.475rem;
    display: flex;
    -ms-overflow-style: none;
    scrollbar-width: none; }
    .objects-list.video-carousel::-webkit-scrollbar {
      display: none; }
    .objects-list.video-carousel > .object-item {
      width: calc(100% - 40px) !important;
      scroll-snap-align: center;
      margin-right: 0.625rem;
      margin-left: 0.625rem;
      flex: 0 0 auto; } }

@media print, screen and (max-width: 39.99875em) {
  .list-scroll {
    -ms-overflow-style: none;
    /* Internet Explorer 10+ */
    scrollbar-width: none;
    /* Firefox */
    flex-flow: nowrap;
    overflow-x: scroll;
    -ms-scroll-snap-type: x mandatory;
        scroll-snap-type: x mandatory;
    margin-right: -1rem !important;
    margin-left: -1rem !important;
    padding: 0 0.475rem;
    display: flex;
    align-items: center; }
    .list-scroll::-webkit-scrollbar {
      display: none;
      /* Safari and Chrome */ }
    .list-scroll .see-more-link {
      flex-shrink: 0; } }

@media print, screen and (max-width: 63.99875em) {
  .spotlight-carousel .slick-list,
  .sm-carousel .slick-list {
    padding-left: 0px !important; }
  .spotlight-carousel .slick-slide,
  .sm-carousel .slick-slide {
    margin-right: 1rem; }
  .spotlight-carousel .owl-stage-outer,
  .sm-carousel .owl-stage-outer {
    overflow: visible; } }

@media print, screen and (min-width: 40em) {
  .flex-grid {
    display: grid;
    grid-template-columns: 27% 33.33%;
    grid-template-rows: auto 1fr;
    grid-template-areas: "a b b" "c b b" "c b b"; }
    .flex-grid .c1 {
      grid-area: a; }
    .flex-grid .c2 {
      grid-area: b; }
    .flex-grid .c3 {
      grid-area: c; } }

.author-item-title {
  color: #2c8a82; }

.author-item .media-object:hover img {
  filter: grayscale(0); }

@media print, screen and (min-width: 64em) {
  .fixed-y {
    height: 80vh;
    overflow: hidden; } }

@media print, screen and (min-width: 64em) {
  .vertical-scroll {
    overflow-y: auto;
    height: 80vh;
    -ms-overflow-style: none;
    /* IE and Edge */
    scrollbar-width: none;
    /* Firefox */ }
    .vertical-scroll::-webkit-scrollbar {
      display: none; } }

.category-menu {
  padding: 1rem 0;
  display: inline-flex;
  width: 100%; }
  .category-menu.fixed {
    position: absolute;
    top: 0;
    z-index: 9;
    background: #e9f2ef;
    width: 100%; }

.category-menu-add {
  margin-right: 0.5rem; }

.category-menu-tags {
  width: calc(100% - 30px);
  display: inline-block; }

.category-tags {
  padding: 1rem 0;
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  margin-left: 0; }
  .category-tags li {
    list-style: none;
    margin-right: 0.5rem; }
    .category-tags li.active a, .category-tags li.is-active a {
      border-color: #000000;
      background-color: #000000;
      color: #ffffff; }
    .category-tags li.active button, .category-tags li.is-active button {
      border-color: #000000;
      background-color: #000000;
      color: #ffffff; }
  .category-tags button:not(.author-tag),
  .category-tags a:not(.author-tag) {
    font-family: "Open-Sans";
    border: 1px solid #c7d8d6;
    background-color: transparent;
    border-radius: 20px;
    color: #647e7c;
    font-size: 0.75rem;
    padding: 0.5rem 1rem;
    margin-bottom: 0;
    text-align: center;
    display: inline-block;
    white-space: nowrap;
    line-height: 1;
    cursor: pointer; }
    .category-tags button:not(.author-tag):hover, .category-tags button:not(.author-tag).active,
    .category-tags a:not(.author-tag):hover,
    .category-tags a:not(.author-tag).active {
      border-color: #000000;
      background-color: #000000;
      color: #ffffff; }
  .category-menu .category-tags {
    padding: 0;
    margin-bottom: 0; }

.author-tags {
  margin-left: 0; }
  .author-tags .owl-stage {
    display: flex;
    align-items: center; }
  .author-tags button {
    cursor: pointer; }
  .author-tags li:not(.all-tag).is-active a, .author-tags li:not(.all-tag):hover a {
    background-color: transparent;
    color: #2c8a82; }
  .author-tags li:not(.all-tag).is-active button, .author-tags li:not(.all-tag):hover button {
    background-color: transparent;
    color: #2c8a82;
    font-weight: bold; }

.cat_js.owl-carousel a {
  margin-right: 0; }

.cat_js.owl-carousel .owl-nav button {
  position: absolute;
  top: 0;
  height: 30px;
  width: 27px;
  font-size: 25px !important;
  border-radius: 0;
  color: #647e7c; }
  .cat_js.owl-carousel .owl-nav button:hover {
    color: #2c8a82; }
  .cat_js.owl-carousel .owl-nav button.disabled {
    display: none; }

.cat_js.owl-carousel .owl-nav button.owl-prev {
  left: 0;
  text-align: left;
  line-height: 1;
  background: #e9f2ef;
  background: linear-gradient(90deg, rgba(242, 248, 246, 0) 0%, rgba(242, 248, 246, 0.85) 45%, #e9f2ef 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#f2f8f6",endColorstr="#f2f8f6",GradientType=1); }

.cat_js.owl-carousel .owl-nav button.owl-next {
  right: 0;
  line-height: 1;
  background: #e9f2ef;
  background: linear-gradient(270deg, rgba(242, 248, 246, 0) 0%, rgba(242, 248, 246, 0.85) 45%, #e9f2ef 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#f2f8f6",endColorstr="#f2f8f6",GradientType=1); }

.author-tag {
  display: flex;
  align-items: center;
  padding-right: 35px; }
  @media print, screen and (min-width: 64em) {
    .author-tag {
      padding-right: 30px; } }
  .author-tag span {
    font-size: 12px;
    font-family: "Open-Sans";
    white-space: nowrap; }
  .author-tag img {
    width: 33px;
    height: 33px;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: 50%;
    margin-right: 5px; }
    .owl-carousel .author-tag img {
      width: 33px;
      height: 33px; }

.c-tabs {
  border-bottom: 1px solid #d5dcdc;
  display: flex;
  margin-left: 0;
  background-color: #e9f2ef;
  z-index: 2; }
  @media print, screen and (min-width: 64em) {
    .c-tabs {
      justify-content: space-between; } }
  .c-tabs li {
    list-style: none;
    display: block;
    margin-right: 40px; }
    @media print, screen and (min-width: 64em) {
      .c-tabs li {
        width: 33.33%; }
        .c-tabs li:nth-child(2) {
          text-align: center; }
        .c-tabs li:last-child {
          text-align: right; } }
  .c-tabs a {
    display: inline-block;
    padding: 10px 0 6px;
    font-size: 18px;
    font-weight: bold;
    color: #969696;
    border-bottom: 4px solid transparent; }

.c-tabs_js a.is-active {
  color: #000000;
  border-bottom: 4px solid #2c8a82; }

@media print, screen and (max-width: 63.99875em) {
  .c-tab-content_js {
    display: none; }
  .tab-active {
    display: block; } }

hr {
  border-bottom-color: #d1d5d5; }
  @media print, screen and (min-width: 64em) {
    hr {
      margin-top: 40px;
      margin-bottom: 40px; } }
  @media print, screen and (min-width: 64em) {
    .grid-column-2 hr,
    .block-wrapper hr {
      margin-top: 1rem;
      margin-bottom: 1rem; } }

.tabs-content {
  border-color: transparent;
  background-color: transparent; }
  .tabs-content.vertical {
    border-color: transparent; }

.numbers-count {
  color: #2c8a82;
  font-size: 2.5rem;
  font-weight: bold; }

.top-five .tabs-content a:hover {
  color: #2c8a82; }

.top-five .numbers-count {
  line-height: 1; }

/* ------- MOST PAGES   ------- END -------- */
/* ------- VIDEO BLOCK ------- START -------- */
.block-content .tabs-panel {
  padding: 0; }

.category-name {
  color: #2c8a82;
  margin-bottom: 0.5rem;
  font-family: "Open-Sans"; }
  .block-wrapper .category-name {
    margin-bottom: 0; }
  .category-name a {
    color: inherit; }
    .category-name a:hover {
      color: rgba(44, 138, 130, 0.72); }

.video-section .tabs {
  border-color: transparent;
  display: flex;
  height: 100%;
  background-color: transparent;
  color: #555555;
  flex-wrap: wrap;
  flex-direction: column; }
  @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
    .video-section .tabs {
      flex-direction: row; } }
  @media print, screen and (min-width: 64em) and (max-width: 74.99875em) {
    .video-section .tabs {
      flex-wrap: wrap;
      flex-direction: row;
      margin-top: 1rem; }
      .video-section .tabs.has-separator li {
        border-bottom: 1px solid transparent;
        margin-bottom: 0;
        padding-bottom: 0; } }
  @media print, screen and (min-width: 64em) and (max-width: 74.99875em) {
    .video-section .tabs li {
      width: calc(50% - 1rem);
      border-bottom: transparent;
      padding-left: 1rem;
      margin-left: 1rem; } }
  .video-section .tabs li:last-child .media-object {
    margin-bottom: 0; }
  @media (min-width: 1024px) and (max-width: 1368px) {
    .video-section .tabs li:first-child, .video-section .tabs li:nth-child(3) {
      border-left: 1px solid #d1d5d5; } }
  .video-section .tabs li:not(:last-child) {
    margin-bottom: 1rem;
    padding-bottom: 1rem; }
    @media print, screen and (min-width: 64em) and (max-width: 74.99875em) {
      .video-section .tabs li:not(:last-child) {
        margin-bottom: 0; } }

@media print, screen and (min-width: 64em) and (max-width: 74.99875em) {
  .video-section.vertical-separator > div:not(:last-child):after {
    background: transparent; } }

.video-section .tabs-title,
.video-section .tabs-video-item {
  border-radius: 0;
  padding: 0; }
  .video-section .tabs-title > a,
  .video-section .tabs-video-item > a {
    color: inherit;
    padding: 0; }
    .video-section .tabs-title > a:focus, .video-section .tabs-title > a[aria-selected="true"], .video-section .tabs-title > a:hover,
    .video-section .tabs-video-item > a:focus,
    .video-section .tabs-video-item > a[aria-selected="true"],
    .video-section .tabs-video-item > a:hover {
      background-color: transparent;
      color: inherit; }
  .video-section .tabs-title.is-active a, .video-section .tabs-title:hover a,
  .video-section .tabs-video-item.is-active a,
  .video-section .tabs-video-item:hover a {
    color: #2c8a82; }
  .video-section .tabs-title .media-object,
  .video-section .tabs-video-item .media-object {
    margin-bottom: 0; }
  .video-section .tabs-title .media-object-section:first-child,
  .video-section .tabs-video-item .media-object-section:first-child {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column; }
    @media print, screen and (max-width: 39.99875em) {
      .video-section .tabs-title .media-object-section:first-child,
      .video-section .tabs-video-item .media-object-section:first-child {
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
        flex-grow: 1;
        flex-wrap: initial;
        padding-left: 0; }
        .video-section .tabs-title .media-object-section:first-child .video-item-data,
        .video-section .tabs-title .media-object-section:first-child h3,
        .video-section .tabs-video-item .media-object-section:first-child .video-item-data,
        .video-section .tabs-video-item .media-object-section:first-child h3 {
          flex: 1; }
        .video-section .tabs-title .media-object-section:first-child .video-item-share,
        .video-section .tabs-video-item .media-object-section:first-child .video-item-share {
          flex-shrink: 1;
          margin-right: 10px; } }

@media print, screen and (max-width: 63.99875em) {
  .video-section .tabs-video-item {
    width: 100% !important; } }

.video-section .tabs-video-item .media-object-img {
  width: 65.54px;
  margin-right: 1rem; }
  @media print, screen and (min-width: 40em) {
    .video-section .tabs-video-item .media-object-img {
      width: 144px; } }

.video-section .tabs-video-item .media-object img {
  max-width: 100%;
  aspect-ratio: 3/2;
  -o-object-fit: cover;
     object-fit: cover; }

@media print, screen and (max-width: 74.99875em) {
  .video-section .tabs-video-item .media-object {
    flex-direction: row-reverse;
    justify-content: flex-end; } }

.video-section .tabs-video-item h3 {
  font-size: 16px; }

.video-section .video-item-share {
  color: #2c8a82;
  font-size: 0.75rem;
  line-height: 1.2;
  font-family: "Open-Sans"; }
  @media print, screen and (min-width: 64em) {
    .video-section .video-item-share {
      margin-top: auto; } }
  .video-section .video-item-share i {
    margin-right: 0.5rem;
    display: inline-block; }
  .video-section .video-item-share:hover {
    color: #000000; }

@media print, screen and (max-width: 63.99875em) {
  .video-tabs-content {
    margin-bottom: 1rem; } }

.video-tabs-content .tabs-panel {
  padding: 0; }

@media print, screen and (max-width: 39.99875em) {
  .video-tabs-content .article-item-video .jw-flag-floating .jw-wrapper.jw-reset {
    top: inherit;
    bottom: 3rem; } }

.article-video {
  margin-bottom: 0; }

@media print, screen and (max-width: 63.99875em) {
  .video-carousel {
    margin-right: -3.5rem; }
    .video-carousel .article-item {
      padding: 0 0.5rem; }
    .video-carousel .slick-list {
      padding-left: 0px !important; } }

.video-carousel .video-item {
  margin-bottom: 0; }

.show-overbox {
  position: relative; }
  .show-overbox .overbox {
    opacity: 1; }

.overbox {
  opacity: 0;
  transition: all 0.25s ease 0s;
  color: #ffffff;
  padding: 1rem;
  background: #062626;
  background: linear-gradient(180deg, rgba(6, 38, 38, 0) 0%, rgba(6, 38, 38, 0.325368) 42%, rgba(6, 38, 38, 0.499037) 70%, black 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#062626",endColorstr="#000000",GradientType=1);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0; }
  .overbox.locked {
    display: none;
    background-color: rgba(6, 38, 38, 0.8); }
  .overbox span.button.hollow {
    margin: 0;
    border-width: 4px;
    border-color: #ffffff;
    color: #ffffff; }
    .overbox span.button.hollow:hover {
      color: #2c8a82; }
  .overbox .watch-now {
    cursor: pointer; }
    @media print, screen and (max-width: 39.99875em) {
      .overbox .watch-now img {
        width: 46px; } }
  .overbox .video-details {
    display: flex;
    position: absolute;
    z-index: 1;
    bottom: 0;
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
    align-items: center;
    right: 0;
    justify-content: space-between;
    padding: 1rem; }
    @media print, screen and (min-width: 64em) {
      .overbox .video-details {
        padding: 2rem; } }
    .overbox .video-details .video-stamp {
      font-size: 18px;
      color: #ffffff; }
      @media print, screen and (max-width: 39.99875em) {
        .overbox .video-details .video-stamp {
          display: none; } }
    .overbox .video-details h2 {
      margin-bottom: 0;
      font-weight: 900; }
      @media print, screen and (max-width: 39.99875em) {
        .overbox .video-details h2 {
          font-size: 20px; } }

.overbox-inner {
  padding: 5px;
  position: absolute;
  top: 50%;
  right: 0;
  left: 0;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  transform: translateY(-50%);
  color: #ffffff;
  z-index: 1; }
  .overbox-inner i.icon-arrow-left2 {
    display: inline-block;
    vertical-align: middle;
    font-size: 2rem;
    border-left: 1px solid #ffffff;
    margin-left: 0.5rem; }

#has-video {
  display: none; }

/* ------- VIDEO BLOCK ------- END -------- */
/* ------- VIDEO PAGES ------- START -------- */
.video-hero {
  margin-bottom: 2rem;
  position: relative;
  text-align: center; }
  @media print, screen and (max-width: 39.99875em) {
    .video-hero {
      margin-right: -1rem;
      margin-left: -1rem; } }
  .video-hero:after {
    content: "";
    position: absolute;
    background: #19191c;
    background: linear-gradient(180deg, rgba(25, 25, 28, 0) 0%, rgba(6, 6, 6, 0.871586) 57%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#19191c",endColorstr="#060606",GradientType=1);
    top: 0;
    left: 0;
    right: 0;
    bottom: 0; }
  .video-hero .video-content {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    color: #ffffff;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    flex-direction: row;
    z-index: 1; }
  .video-hero .video-title {
    align-self: center;
    justify-self: center;
    width: 100%;
    margin-top: 10%; }
    .video-hero .video-title h1 {
      color: #fc2c2c;
      font-weight: 900; }
      @media print, screen and (min-width: 64em) {
        .video-hero .video-title h1 {
          font-size: 3.4375rem; } }
    .video-hero .video-title h6 {
      color: #ffffff; }
  .video-hero .video-content-after {
    align-self: flex-end;
    padding: 1rem 2rem; }
    .video-hero .video-content-after p {
      font-size: 0.9375rem; }
  .video-hero .button {
    padding: 0.5rem 2rem;
    background-color: #ffffff;
    color: #000000; }
    .video-hero .button i {
      margin-right: 0.5rem; }
  .video-hero .video-img img {
    width: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    -o-object-position: top;
       object-position: top; }

.video-screen {
  margin-bottom: 1.5rem; }
  @media print, screen and (min-width: 64em) {
    .video-screen {
      margin-bottom: 3rem; } }
  .video-screen .video-details {
    color: #929898;
    font-size: 10px;
    margin-top: 1rem; }
  .video-screen .article-item-meta {
    color: #ffffff; }

#has-video {
  display: none; }

@media print, screen and (max-width: 39.99875em) {
  .video-item-hero .video-item {
    margin-right: -1rem;
    margin-left: -1rem; } }

@media print, screen and (min-width: 64em) {
  .video-item-hero .video-item {
    padding-top: 1rem; } }

.video-item-hero .video-item .responsive-embed {
  padding-bottom: 56.25%; }
  @media print, screen and (min-width: 64em) {
    .video-item-hero .video-item .responsive-embed {
      padding-bottom: 56.25%; } }

.video-item-hero .video-item-content {
  margin-top: 1rem; }
  .video-item-hero .video-item-content p {
    font-size: 0.9375rem;
    color: #9d9d9d; }

@media print, screen and (min-width: 64em) {
  .video-item-title {
    display: flex;
    align-items: center;
    justify-content: space-between; } }

.video-item-title h2 a:hover {
  color: #2c8a82; }

.video-aside-meta {
  width: 300px; }
  @media print, screen and (max-width: 39.99875em) {
    .video-aside-meta {
      width: 100%; } }

@media print, screen and (min-width: 40em) {
  .video-main .video-wrap .video-grid .video-list {
    row-gap: 40px;
    margin-bottom: 40px; } }

/* ------- VIDEO PAGES ------- END -------- */
/* ------- ANIMATE   ------- START -------- */
@-webkit-keyframes sod {
  from {
    visibility: hidden;
    transform: translate3d(0, -100%, 0); }
  to {
    visibility: visible;
    transform: translate3d(0, 0, 0); } }

@keyframes sod {
  from {
    visibility: hidden;
    transform: translate3d(0, -100%, 0); }
  to {
    visibility: visible;
    transform: translate3d(0, 0, 0); } }

@-webkit-keyframes sou {
  from {
    visibility: visible;
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    transform: translate3d(0, -100%, 0); } }

@keyframes sou {
  from {
    visibility: visible;
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    transform: translate3d(0, -100%, 0); } }

.sod {
  -webkit-animation-name: sod;
  animation-name: sod; }

.sou {
  -webkit-animation-name: sou;
  animation-name: sou; }

.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both; }

/* ------- ANIMATE   ------- END -------- */
/* ------- PRINT-EDITION PAGE ------- START -------- */
.print-edition-cover img {
  width: 100%; }

.print-edition-cover__btn {
  color: #ffffff;
  font-size: 16px; }
  .print-edition-cover__btn i {
    font-size: 11px;
    margin-left: 10px; }

/* ------- PRINT-EDITION PAGE ------- END -------- */
/* ------- IN-FOCUS SECTION ------- START -------- */
.in-focus {
  padding-bottom: 2rem;
  position: relative; }
  @media only screen and (min-device-width: 320px) and (max-device-width: 896px) and (-webkit-min-device-pixel-ratio: 2) {
    .in-focus:before {
      content: "";
      background-color: #dfece7;
      position: absolute;
      left: -10px;
      right: -10px;
      bottom: 0;
      top: 0; } }

.block-overlay-bg {
  position: relative;
  width: 100%;
  height: 100%;
  /* Mobile Landscape and Portrate */ }
  @media only screen and (min-device-width: 320px) and (max-device-width: 896px) and (-webkit-min-device-pixel-ratio: 2) {
    .block-overlay-bg {
      background-image: none !important;
      color: #000000 !important;
      padding: 0 !important; } }
  @media print, screen and (min-width: 40em) {
    .block-overlay-bg {
      color: #ffffff;
      overflow: hidden;
      background-repeat: no-repeat;
      background-position: center 25%;
      background-size: cover;
      padding: 1.5rem 1.5rem 0.5rem; } }
  .block-overlay-bg:before {
    /* Mobile Landscape and Portrate */ }
    @media only screen and (min-device-width: 320px) and (max-device-width: 896px) and (-webkit-min-device-pixel-ratio: 2) {
      .block-overlay-bg:before {
        background: none !important; } }
    @media print, screen and (min-width: 40em) {
      .block-overlay-bg:before {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        top: 0;
        content: "";
        background: linear-gradient(to bottom, rgba(0, 0, 0, 0.31) 0, rgba(0, 0, 0, 0.95) 100%); } }
  .block-overlay-bg .article-item-title a {
    color: inherit; }
    .block-overlay-bg .article-item-title a:hover {
      color: #2c8a82; }
  .block-overlay-bg .section-title {
    z-index: 1;
    position: relative;
    margin-top: 2rem; }
    @media print, screen and (min-width: 64em) {
      .block-overlay-bg .section-title {
        margin-top: 7rem; } }
    @media print, screen and (max-width: 39.99875em) {
      .block-overlay-bg .section-title h3 {
        font-size: 22px; } }
    @media print, screen and (min-width: 64em) {
      .block-overlay-bg .section-title h3 {
        font-size: 30px; } }
    .block-overlay-bg .section-title h3 img {
      width: 36px; }
  .block-overlay-bg .more {
    right: 1.5rem;
    position: absolute;
    top: 1rem;
    z-index: 1;
    /* Mobile Landscape and Portrate */ }
    @media only screen and (min-device-width: 320px) and (max-device-width: 896px) and (-webkit-min-device-pixel-ratio: 2) {
      .block-overlay-bg .more {
        display: none; } }
    .block-overlay-bg .more a {
      color: #ffffff; }
      .block-overlay-bg .more a:hover {
        color: #2c8a82; }

/* ------- IN-FOCUS SECTION ------- END -------- */
/* ------- EDITORS ------- START -------- */
.editor-img {
  border-radius: 50%;
  width: 212px;
  height: 212px;
  overflow: hidden;
  display: inline-block;
  -webkit-mask-image: -webkit-radial-gradient(white, black); }
  .main-editors .editor-img {
    width: 302px;
    height: 302px; }
    .main-editors .editor-img img {
      width: 100%; }
  @media print, screen and (max-width: 39.99875em) {
    .editor-img.article-item-img img {
      aspect-ratio: initial; } }

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

.editor-item-name h3 {
  font-weight: bold; }

.editor-item-name h5 {
  font-weight: bold;
  font-size: 1.1875rem;
  margin-bottom: 0.3rem; }

.editor-item-cat h6 {
  font-weight: bold;
  font-size: 0.875rem; }

.editor-item-desc p {
  font-size: 0.75rem;
  line-height: 1.4; }

/* ------- EDITORS ------- END -------- */
/* ------- TAGS MENU (ex. podcast-multiple page) ------- START -------- */
.page-tags {
  margin: 1rem 0; }
  @media print, screen and (min-width: 64em) {
    .page-tags {
      margin: 2rem 0 3rem; } }
  .page-tags > ul {
    margin-left: 0;
    border-bottom: 2px solid #d1d5d5; }
    .page-tags > ul li {
      list-style: none;
      display: inline-block;
      margin-right: 2.5rem;
      margin-top: 0.8rem;
      padding-bottom: 0.5rem; }
      .page-tags > ul li.active, .page-tags > ul li:hover {
        position: relative; }
        .page-tags > ul li.active:after, .page-tags > ul li:hover:after {
          content: "";
          position: absolute;
          bottom: -1px;
          width: 100%;
          height: 1px;
          right: 0;
          left: 0;
          background-color: #2c8a82; }
      @media print, screen and (max-width: 39.99875em) {
        .page-tags > ul li {
          margin-right: 1rem;
          font-size: 13px; } }
      .page-tags > ul li a {
        font-weight: bold; }
      .page-tags > ul li.active a, .page-tags > ul li:hover a {
        color: #2c8a82; }
  .page-tags.style-2 {
    margin-top: 0;
    margin-bottom: 0;
    background-color: #f2f8f6;
    z-index: 9; }
    .page-tags.style-2 > ul {
      border-bottom: none;
      padding-bottom: 0; }
      @media print, screen and (min-width: 64em) {
        .page-tags.style-2 > ul {
          margin-bottom: 1px; } }
      .page-tags.style-2 > ul li a {
        font-weight: normal; }
      .page-tags.style-2 > ul li.active, .page-tags.style-2 > ul li:hover {
        padding-bottom: 0.5rem; }
        .page-tags.style-2 > ul li.active a, .page-tags.style-2 > ul li:hover a {
          font-weight: bold; }
      .page-tags.style-2 > ul li:only-child {
        margin-bottom: 0; }
        .page-tags.style-2 > ul li:only-child a {
          border-bottom: 0 !important; }

.my-tags-menu {
  z-index: 9;
  background-color: #f2f8f6; }
  @media print, screen and (max-width: 39.99875em) {
    .my-tags-menu#scroll-cat {
      margin-right: -1rem;
      margin-left: -1rem;
      padding-left: 1rem; } }
  .my-tags-menu ul {
    margin-left: 0; }
    .my-tags-menu ul li {
      list-style: none; }
      .my-tags-menu ul li a {
        line-height: 1; }

/* ------- TAGS MENU (ex. podcast-multiple page) ------- END -------- */
.register-wide {
  background-color: #006057;
  padding: 2.5rem 1rem 2rem;
  color: #ffffff;
  margin-bottom: 2rem;
  margin-top: 2rem; }
  @media print, screen and (max-width: 39.99875em) {
    .register-wide {
      text-align: center; } }
  @media print, screen and (min-width: 64em) {
    .register-wide {
      padding: 2rem;
      height: 270px;
      display: flex;
      align-items: center; }
      .register-wide > .grid-container {
        width: 100%; } }
  @media print, screen and (max-width: 39.99875em) {
    .register-wide .grid-x {
      justify-content: center; } }
  .register-wide h2 {
    font-weight: bold;
    margin-bottom: 0;
    font-size: 28px; }
    @media print, screen and (min-width: 64em) {
      .register-wide h2 {
        font-size: 36px; } }
  .register-wide h4 {
    margin-top: 0;
    font-size: 18px; }
    @media print, screen and (min-width: 64em) {
      .register-wide h4 {
        font-size: 20px; } }
  @media print, screen and (max-width: 39.99875em) {
    .register-wide__img {
      margin: 0 auto 1rem; }
      .register-wide__img img {
        width: 178px; } }
  @media print, screen and (min-width: 64em) {
    .register-wide__img {
      margin-left: 5rem; } }
  .register-wide__btn {
    font-size: 15px;
    font-family: "Open-Sans";
    font-weight: bold;
    color: #042b27;
    border-radius: 30px;
    background-color: #ffffff;
    padding: 5px 30px;
    display: flex;
    align-items: center;
    gap: 10px;
    transition: all 0.25s ease 0s;
    line-height: 2;
    cursor: pointer; }
    .register-wide__btn i {
      transition: all 0.25s ease 0s;
      font-size: 15px; }
      [dir="ltr"] .register-wide__btn i {
        transform: scaleX(-1); }
    @media print, screen and (min-width: 64em) {
      .register-wide__btn {
        font-size: 22px; } }
    .register-wide__btn:hover {
      color: initial;
      opacity: 0.9; }
      .register-wide__btn:hover i {
        margin-left: 1rem; }
  .register-wide__left {
    margin: 1rem auto;
    text-align: center; }
    @media print, screen and (min-width: 64em) {
      .register-wide__left {
        margin-right: auto; } }
  .register-wide__close {
    position: absolute;
    top: -1rem;
    left: 0;
    cursor: pointer; }

/* ------- Newsletter block on homepage ------- START -------- */
.newsletter-holder {
  padding: 2.5rem 1.5rem; }
  @media print, screen and (min-width: 64em) {
    .newsletter-holder {
      padding: 1.5rem; } }
  .newsletter-holder img {
    margin-bottom: 1rem; }
    @media print, screen and (max-width: 39.99875em) {
      .newsletter-holder img {
        width: 168px; } }
  .newsletter-holder .button {
    background-color: #006057;
    margin-bottom: 0; }
    .newsletter-holder .button i {
      font-size: 11px;
      margin-left: 10px; }
      [dir="ltr"] .newsletter-holder .button i {
        transform: scaleX(-1);
        display: inline-block; }

/* ------- Newsletter block on homepage ------- END -------- */
.map-iframe {
  touch-action: manipulation; }

.empty-content {
  text-align: center; }
  .empty-content-text {
    font-size: 28px;
    color: #717171;
    margin-top: 20px;
    margin-bottom: 30px;
    font-weight: bold; }
    @media print, screen and (min-width: 64em) {
      .empty-content-text {
        margin-top: 30px;
        margin-bottom: 40px;
        font-size: 38px; } }
  .empty-content-button {
    padding: 0.85em 3em; }

.ratio-container {
  position: relative;
  overflow: hidden; }
  .ratio-container:after {
    content: "";
    display: block;
    height: 0;
    width: 100%;
    /* 16:9 = 56.25% = calc(9 / 16 * 100%) */
    padding-bottom: 56.25%; }
    .grid-items .ratio-container:after {
      padding-bottom: 56.25%; }
    .lifestyle-grid .ratio-container:after {
      padding-bottom: 85%; }
    .video-screen .ratio-container:after {
      padding-bottom: 38%; }
      @media print, screen and (max-width: 39.99875em) {
        .video-screen .ratio-container:after {
          padding-bottom: 100%; } }
  .ratio-container.entry-media-hero:after {
    padding-bottom: 94.25%; }
  .ratio-container.about-video:after {
    padding-bottom: 31%; }
    @media print, screen and (max-width: 39.99875em) {
      .ratio-container.about-video:after {
        padding-bottom: 93.34%; } }
  .ratio-container > a,
  .ratio-container > video {
    display: block;
    height: 100%;
    position: absolute;
    width: 100%;
    z-index: 1;
    top: 0;
    border: 0;
    right: 0;
    left: 0;
    bottom: 0;
    content: ""; }
  .ratio-container img {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    display: block;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center; }

.slick-loader {
  max-height: 500px;
  min-height: 200px;
  overflow: hidden;
  background: transparent url(../img/loader.svg) no-repeat center center;
  background-size: 30px; }
  .slick-loader.slick-initialized, .slick-loader.owl-loaded {
    height: auto;
    max-height: initial;
    min-height: auto;
    overflow: visible;
    background: none; }
  .slick-loader .slick-list {
    transition: height 250ms ease-in-out; }

@media print, screen and (max-width: 39.99875em) {
  .slick-loader-sm {
    max-height: 400px;
    min-height: 200px;
    overflow: hidden;
    background: transparent url(../img/loader.svg) no-repeat center center;
    background-size: 30px; }
    .slick-loader-sm > div {
      opacity: 0; }
    .slick-loader-sm.slick-initialized, .slick-loader-sm.owl-loaded {
      height: auto;
      max-height: initial;
      min-height: auto;
      overflow: visible;
      background: none; }
      .slick-loader-sm.slick-initialized > div, .slick-loader-sm.owl-loaded > div {
        opacity: 1; }
    .slick-loader-sm .slick-list {
      transition: height 250ms ease-in-out; } }

.slider-v1.audio-podcast,
.slider-v1.writers-list {
  height: 450px;
  overflow: hidden; }
  .slider-v1.audio-podcast.slick-initialized,
  .slider-v1.writers-list.slick-initialized {
    height: auto;
    max-height: initial;
    min-height: auto;
    overflow: visible;
    background: none; }
  .slider-v1.audio-podcast .slick-list,
  .slider-v1.writers-list .slick-list {
    transition: height 250ms ease-in-out; }
    @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
      .slider-v1.audio-podcast .slick-list,
      .slider-v1.writers-list .slick-list {
        margin: 0 -15px; } }
  @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
    .slider-v1.audio-podcast .slick-slide,
    .slider-v1.writers-list .slick-slide {
      margin: 0 15px; } }

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

.owl-dot {
  display: inline-block;
  margin: 0 5px; }
  .owl-dot span {
    width: 47px;
    height: 4px;
    background-color: #ffffff;
    border-radius: 5px;
    display: block; }
  .owl-dot.active span {
    background-color: #000000; }

.pagination-wrap {
  margin-top: 20px; }
  .pagination-wrap .pagination li {
    margin-right: 15px;
    display: inline-block; }
    .pagination-wrap .pagination li.current,
    .pagination-wrap .pagination li:not(.pager__item--first):not(.pager__item--previous):not(
    .pager__item--next):not(.pager__item--last) a {
      font-size: 14px;
      font-family: "Open-Sans";
      width: 20px;
      height: 20px;
      border-radius: 50%;
      text-align: center;
      padding: 0;
      line-height: 1.8; }
    .pagination-wrap .pagination li.current a {
      color: #ffffff; }
    .pagination-wrap .pagination li.pager__item--first a, .pagination-wrap .pagination li.pager__item--previous a, .pagination-wrap .pagination li.pager__item--next a, .pagination-wrap .pagination li.pager__item--last a {
      padding: 5px 10px 0; }
    @media print, screen and (max-width: 39.99875em) {
      .pagination-wrap .pagination li.pager__item--first, .pagination-wrap .pagination li.pager__item--last {
        display: none; } }

/* -------- Final say ---------------- Start ------------------------*/
.h-spaced > div:not(:last-child) {
  margin-bottom: 2.3rem; }

.colored-separator > div:not(:last-child) {
  border-bottom: 1px solid #d1d5d5;
  padding-bottom: 1rem;
  margin-bottom: 1rem; }
  @media print, screen and (min-width: 64em) {
    .colored-separator > div:not(:last-child) {
      border-bottom: 1px solid #2c8a82; } }

.more {
  position: relative;
  color: #717171; }
  .more a {
    font-size: 15px;
    font-weight: bold;
    font-family: "Open-Sans";
    padding-right: 1rem;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-direction: row;
    flex-wrap: wrap; }
  .more i {
    font-size: 8px;
    font-weight: bolder;
    position: absolute;
    right: 0;
    color: inherit; }

.see-more-link {
  text-decoration: underline;
  font-weight: bold;
  text-underline-offset: 5px;
  cursor: pointer; }
  @media print, screen and (max-width: 39.99875em) {
    .see-more-link {
      display: inline-block; } }
  .see-more-link.primary {
    color: #2c8a82; }
    .see-more-link.primary:hover {
      color: #000000; }

.section-bg-1 {
  background-color: #eaf3f2; }

.block-custom-bg, .podcast-block {
  background-color: #ffffff;
  color: #000000; }

.block-custom-bg-2 {
  background-color: #e4f0ef;
  color: #000000; }

.block-custom-bg-3 {
  background-color: #e4edec;
  color: #000000; }
  @media print, screen and (max-width: 39.99875em) {
    .block-custom-bg-3.has-padding {
      padding: 1rem 0; } }

.block-custom-bg-4 {
  background-color: #dfe3e3;
  color: #000000; }

label span.required {
  color: red;
  font-weight: bold; }

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

@media print, screen and (max-width: 39.99875em) {
  .small-grid-collapse {
    padding-right: 0;
    padding-left: 0; } }

.small-grid-collapse .padding-horizontal-for-small .block-title.style-v3 span,
.small-grid-collapse .padding-horizontal-for-small .section-title.style-v3 span,
.small-grid-collapse .padding-horizontal-for-small .page-title.style-v3 span {
  padding: 0; }

.small-grid-collapse .padding-horizontal-for-small .article-item-overbox-inner {
  padding: 0; }

.newsletter-area {
  direction: ltr; }
  footer .newsletter-area input[type="email"] {
    color: #ffffff;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px; }
    footer .newsletter-area input[type="email"]:focus {
      box-shadow: none;
      border-color: #2c8a82; }
  footer .newsletter-area .input-group-button input[type="submit"] {
    background-color: #ffffff;
    color: #000000;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px; }
    footer .newsletter-area .input-group-button input[type="submit"]:hover {
      background-color: #2c8a82; }
  .newsletter-area input[type="email"] {
    border-radius: 0;
    background-color: transparent;
    font-size: 0.875rem;
    color: #000000;
    padding-top: 11px; }
    .newsletter-area input[type="email"]:focus {
      box-shadow: none;
      border-color: #2c8a82; }
    .newsletter-area input[type="email"]:not(:-moz-placeholder-shown) {
      text-align: right; }
    .newsletter-area input[type="email"]:not(:-ms-input-placeholder) {
      text-align: right; }
    .newsletter-area input[type="email"]:not(:placeholder-shown) {
      text-align: right; }
    .newsletter-area input[type="email"]:-moz-placeholder-shown {
      text-align: left; }
    .newsletter-area input[type="email"]:-ms-input-placeholder {
      text-align: left; }
    .newsletter-area input[type="email"]:placeholder-shown {
      text-align: left; }
  .newsletter-area input[type="submit"] {
    border: 0;
    font-weight: bold;
    font-size: 1.125rem;
    padding: 0.5rem 1rem;
    text-align: center;
    text-transform: uppercase;
    background-color: #000000;
    color: #ffffff; }
    .newsletter-area input[type="submit"]:hover {
      background-color: #2c8a82; }
    [dir="ltr"] .newsletter-area input[type="submit"] {
      font-size: 0.9375rem; }

.newsletter-intro {
  margin-bottom: 1rem; }
  .newsletter-intro h5 {
    font-size: 1.25rem;
    font-weight: bold; }
    @media print, screen and (min-width: 64em) {
      .newsletter-intro h5 {
        font-size: 1.5rem; } }
    footer .newsletter-intro h5 {
      color: #ffffff; }
      @media print, screen and (max-width: 39.99875em) {
        footer .newsletter-intro h5 {
          font-family: "STIX Two Text";
          font-size: 1rem;
          text-align: center; } }
  .newsletter-intro h6 {
    color: #000000;
    font-family: "Open-Sans";
    font-size: 0.875rem; }
  @media print, screen and (max-width: 39.99875em) {
    footer .newsletter-intro {
      margin-top: 1.5rem; } }

.mc_embed_signup div#mce-responses {
  float: right;
  top: -1.4em;
  padding: 0em 0.5em 0em 0.5em;
  overflow: hidden;
  width: 90%;
  margin: 0 5%;
  clear: both; }

.mc_embed_signup div.response {
  margin: 1em 0;
  padding: 1em 0.5em 0.5em 0;
  font-weight: bold;
  float: right;
  top: -1.5em;
  z-index: 1;
  width: 80%; }

.mc_embed_signup #mce-error-response {
  display: none; }

.mc_embed_signup #mce-success-response {
  color: #529214;
  display: none; }

.mc_embed_signup label.error {
  display: block;
  float: none;
  width: auto;
  margin-right: 1.05em;
  text-align: right;
  padding: 0.5em 0; }

/* ------- Socials Btns Styles ------- START -------- */
@media print, screen and (min-width: 64em) {
  .socials-btns {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 16px; } }

.canvas-panel .socials-btns {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  flex-wrap: wrap;
  align-items: center; }

.socials-btns span {
  margin-right: 0.5rem; }
  @media print, screen and (min-width: 64em) {
    .main-header-before .socials-btns span {
      margin-right: 68px; } }

@media print, screen and (max-width: 39.99875em) {
  .main-footer-before .socials-btns {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center; } }

.social-btn {
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  color: #253c3a;
  font-size: 12px;
  line-height: 0; }
  .social-btn:last-child {
    margin--right: 0; }
  .social-btn i {
    display: inline-block;
    vertical-align: top; }
  .social-btn:hover {
    color: #ffffff;
    transition: color 0.25s linear; }
  footer .social-btn {
    font-size: 1.375rem;
    color: #7c9a94; }
    @media print, screen and (max-width: 39.99875em) {
      footer .social-btn {
        margin: 1rem; } }
  .navpanel .social-btn {
    color: #7c9a94; }
    @media print, screen and (max-width: 63.99875em) {
      .navpanel .social-btn {
        font-size: 15px; } }
  .main-header-before .social-btn:hover, .main-header-before .social-btn:focus {
    color: #2c8a82; }
  .block-wrapper .social-btn {
    margin: 0 0.85rem;
    font-size: 2rem; }
  .events-list .social-btn {
    margin: 0 0.85rem 0 0;
    font-size: 1.125rem; }

.socials-block a {
  margin: 0 0.25rem;
  font-size: 1.25rem;
  padding: 0.75rem; }
  .socials-block a i {
    vertical-align: middle; }

.opinion-author .socials-block > div {
  font-size: 0.875rem; }

.opinion-author .socials-block a {
  color: #969696;
  display: inline-block;
  font-size: 1rem;
  padding: 7px;
  margin-bottom: 0; }
  .opinion-author .socials-block a:hover, .opinion-author .socials-block a:active, .opinion-author .socials-block a:focus {
    color: #2c8a82; }

.opinion-author .socials-block span {
  margin-left: 5px; }

.video-popup-modal {
  border-radius: 50px;
  border: 1px solid #707070;
  padding: 50px;
  background: #ffffff;
  height: auto;
  min-height: 0;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 600px; }
  @media print, screen and (max-width: 39.99875em) {
    .video-popup-modal {
      padding: 40px 20px;
      width: calc(100% - 60px) !important;
      right: 50% !important;
      top: 20% !important;
      transform: translateX(-50%) !important;
      left: auto; } }
  .video-popup-modal .close-button,
  .video-popup-modal .modal-close {
    right: 50px;
    top: 35px;
    left: auto;
    margin: 0;
    padding: 0; }
    @media print, screen and (max-width: 39.99875em) {
      .video-popup-modal .close-button,
      .video-popup-modal .modal-close {
        right: 20px;
        top: 40px; } }
  .video-popup-modal h2 {
    font-weight: bold;
    font-size: 24px;
    color: #2c8a82;
    margin: 0 0 27px;
    border-bottom: 1px solid #dce0e0;
    display: block; }
    @media print, screen and (min-width: 40em) {
      .video-popup-modal h2 {
        font-size: 33px; } }
  .video-popup-modal h5 {
    font-weight: bold;
    font-size: 20px;
    margin-bottom: 15px;
    color: #000000; }
    @media print, screen and (min-width: 40em) {
      .video-popup-modal h5 {
        font-size: 22px;
        margin-bottom: 0; } }
  .video-popup-modal .share-icons {
    margin-bottom: 27px; }
    @media print, screen and (min-width: 40em) {
      .video-popup-modal .share-icons {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
        flex-wrap: nowrap; } }
    .video-popup-modal .share-icons ul {
      margin: 0;
      padding: 0;
      display: flex;
      gap: 33px; }
      .video-popup-modal .share-icons ul li {
        display: block; }
      .video-popup-modal .share-icons ul a {
        display: block;
        width: 50px !important;
        height: 50px !important;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 100%;
        background: #e4edec; }
        .video-popup-modal .share-icons ul a i {
          font-size: 24px;
          color: #2c8a82; }
  @media print, screen and (min-width: 40em) {
    .video-popup-modal .copy-link {
      display: flex;
      justify-content: space-between;
      align-items: center; } }
  .video-popup-modal .copy-link .copy-link-input {
    position: relative; }
    @media print, screen and (min-width: 40em) {
      .video-popup-modal .copy-link .copy-link-input {
        width: 328px; } }
    .video-popup-modal .copy-link .copy-link-input.copied:hover:before, .video-popup-modal .copy-link .copy-link-input.copied:hover:after, .video-popup-modal .copy-link .copy-link-input.copied:active:before, .video-popup-modal .copy-link .copy-link-input.copied:active:after, .video-popup-modal .copy-link .copy-link-input.copied:focus:before, .video-popup-modal .copy-link .copy-link-input.copied:focus:after {
      display: inline-block; }
    .video-popup-modal .copy-link .copy-link-input.copied:before {
      position: absolute;
      z-index: 1000001;
      display: none;
      width: 0;
      height: 0;
      color: rgba(255, 255, 255, 0.8);
      pointer-events: none;
      content: "";
      border: 5px solid transparent;
      top: auto;
      left: 50%;
      bottom: -5px;
      margin-left: -5px;
      border-bottom-color: rgba(0, 0, 0, 0.8); }
    .video-popup-modal .copy-link .copy-link-input.copied:after {
      position: absolute;
      z-index: 1000000;
      display: none;
      padding: 5px 8px;
      font: normal normal 11px/1.5 Helvetica, arial, nimbussansl, liberationsans, freesans, clean, sans-serif, "Segoe UI Emoji", "Segoe UI Symbol";
      color: #ffffff;
      text-align: center;
      text-decoration: none;
      text-shadow: none;
      text-transform: none;
      letter-spacing: normal;
      word-wrap: break-word;
      white-space: pre;
      pointer-events: none;
      background: rgba(0, 0, 0, 0.8);
      border-radius: 3px;
      -webkit-font-smoothing: subpixel-antialiased;
      content: "Copied!";
      top: 100%;
      right: 50%;
      margin-top: 5px;
      transform: translateX(50%); }
    .video-popup-modal .copy-link .copy-link-input input {
      border-radius: 28px;
      border: 1px solid #dcdfdf;
      padding: 5px 17px;
      height: 47px;
      color: #717171;
      text-align: right;
      margin: 0;
      font-size: 13px;
      box-shadow: none;
      position: relative; }
    .video-popup-modal .copy-link .copy-link-input button {
      width: 45px;
      height: 45px;
      border-radius: 100%;
      display: block;
      position: absolute;
      left: 1px;
      top: 1px;
      background: #2c8a82;
      color: #ffffff;
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer; }

/* ------- Socials Btns Styles ------- END -------- */
/* ------- Leaderboard Ad Styles ------- START -------- */
.leaderboard-block {
  justify-content: center;
  width: 100%;
  display: flex; }
  .sticky .leaderboard-block {
    background-color: #ffffff; }
  @media print, screen and (max-width: 63.99875em) {
    .leaderboard-block {
      background-color: #ffffff; } }

/* ------- Leaderboard Ad Styles ------- END -------- */
/* ------- Leaderboard Ad Styles ------- START -------- */
.entry-advertorial {
  display: flex;
  align-items: center;
  gap: 10px; }
  @media print, screen and (max-width: 39.99875em) {
    .entry-advertorial {
      margin-bottom: 8px; } }
  .entry-advertorial a {
    display: flex;
    align-items: center; }
  .entry-advertorial span {
    padding: 0 6px;
    background: #ffffff;
    font-size: 12.8px;
    font-weight: 700;
    line-height: 20px;
    display: block; }
    @media print, screen and (min-width: 64em) {
      .entry-advertorial span {
        font-size: 20px;
        line-height: 30px; } }

/* ------- Leaderboard Ad Styles ------- END -------- */
/* -------- Final say ---------------- End ------------------------*/
body {
  direction: ltr;
  font-size: 0.9375rem; }

.block-title,
.section-title,
.page-title,
.title {
  font-family: "Open-Sans"; }

ul, span, .social-lbl, .alert {
  font-family: "Open-Sans"; }

h1 {
  line-height: 1; }

h2 {
  line-height: 1.1; }

h3 {
  line-height: 1.2; }

h6 {
  line-height: 1.7; }

.breaking-news-area h6,
.breaking-news-area .label {
  font-size: 14px; }

.icon-arrow-right-black {
  transform: rotate(180deg); }

.label {
  font-family: "Open-Sans"; }
  .label.abs-el {
    font-weight: 600; }
  .label.label-center {
    left: 50%;
    right: initial; }

@media print, screen and (min-width: 64em) {
  .article-item-title h2 {
    font-size: 2rem;
    line-height: 1; }
    .hero-main .article-item-title h2 {
      font-size: 2rem; } }

.article-item-meta, .gallery-meta {
  font-family: "Open-Sans"; }
  .article-item-meta .meta-author, .gallery-meta .meta-author {
    font-weight: bold; }

@media print, screen and (max-width: 39.99875em) {
  .article-item-meta {
    margin-bottom: .5rem; } }

.img-caption {
  font-family: "Open-Sans"; }

.section-title h2,
.section-title h3,
.block-title h2,
.block-title h3 {
  font-size: 1.375rem;
  line-height: 1.4;
  font-family: "Open-Sans"; }

.podcast-list .date-field a {
  font-weight: 700; }

.podcast-list .date-field a, .podcast-list .podcast-time a {
  font-family: "Open-Sans"; }

.see-more-link a, .more a {
  font-family: "Open-Sans";
  font-size: 0.75rem; }

.category-name {
  font-family: "Open-Sans";
  font-weight: 600; }

.video-stamp.abs-el {
  font-family: "Open-Sans"; }

.entry-highlight ul {
  font-family: "STIX Two Text";
  font-size: 1.25rem;
  line-height: 1; }
  .entry-highlight ul li {
    margin-bottom: 0.7rem; }

.hero-main .entry-highlight {
  font-size: 0.9375rem; }

.entry-aside-meta .entry-date {
  font-size: 0.75rem; }

@media print, screen and (max-width: 39.99875em) {
  .entry-title h1 {
    font-size: 1.3rem;
    line-height: 1.2; } }

.menu-highlights .object-item {
  min-width: 140px; }

.section-menu-wrapper {
  font-family: "Open-Sans"; }

@media only screen {
  .no-spacer {
    margin: 0 !important; }
  .no-top-spacer {
    margin-top: 0 !important;
    padding-top: 0 !important; }
  .no-bottom-spacer {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important; }
  .no-left-spacer {
    margin-left: 0 !important;
    padding-left: 0 !important; }
  .no-right-spacer {
    margin-right: 0 !important;
    padding-right: 0 !important; }
  .top-spacer--xl {
    margin-top: 3rem !important; }
  .top-spacer--l {
    margin-top: 2.5rem !important; }
  .top-spacer--m {
    margin-top: 2rem !important; }
  .top-spacer {
    margin-top: 1.5rem !important; }
  .top-spacer--s {
    margin-top: 1rem !important; }
  .top-spacer--xs {
    margin-top: 0.5rem !important; }
  .bottom-spacer--xl {
    margin-bottom: 3rem !important; }
  .bottom-spacer--l {
    margin-bottom: 2.5rem !important; }
  .bottom-spacer--m {
    margin-bottom: 2rem !important; }
  .bottom-spacer {
    margin-bottom: 1.5rem !important; }
  .bottom-spacer--s {
    margin-bottom: 1rem !important; }
  .bottom-spacer--xs {
    margin-bottom: 0.5rem !important; } }

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

.text-transform-capitalize {
  text-transform: capitalize; }

.small-up-1 .column:last-child:last-child:last-child,
.small-up-1 .columns:last-child:last-child:last-child {
  float: left; }

.small-up-2 .column:last-child:last-child:last-child,
.small-up-2 .columns:last-child:last-child:last-child {
  float: left; }

.small-up-3 .column:last-child:last-child:last-child,
.small-up-3 .columns:last-child:last-child:last-child {
  float: left; }

.small-up-4 .column:last-child:last-child:last-child,
.small-up-4 .columns:last-child:last-child:last-child {
  float: left; }

.small-up-5 .column:last-child:last-child:last-child,
.small-up-5 .columns:last-child:last-child:last-child {
  float: left; }

.small-up-6 .column:last-child:last-child:last-child,
.small-up-6 .columns:last-child:last-child:last-child {
  float: left; }

.small-up-7 .column:last-child:last-child:last-child,
.small-up-7 .columns:last-child:last-child:last-child {
  float: left; }

.small-up-8 .column:last-child:last-child:last-child,
.small-up-8 .columns:last-child:last-child:last-child {
  float: left; }

@media print, screen and (min-width: 40em) {
  .medium-up-1 .column:last-child:last-child:last-child,
  .medium-up-1 .columns:last-child:last-child:last-child {
    float: left; }
  .medium-up-2 .column:last-child:last-child:last-child,
  .medium-up-2 .columns:last-child:last-child:last-child {
    float: left; }
  .medium-up-3 .column:last-child:last-child:last-child,
  .medium-up-3 .columns:last-child:last-child:last-child {
    float: left; }
  .medium-up-4 .column:last-child:last-child:last-child,
  .medium-up-4 .columns:last-child:last-child:last-child {
    float: left; }
  .medium-up-5 .column:last-child:last-child:last-child,
  .medium-up-5 .columns:last-child:last-child:last-child {
    float: left; }
  .medium-up-6 .column:last-child:last-child:last-child,
  .medium-up-6 .columns:last-child:last-child:last-child {
    float: left; }
  .medium-up-7 .column:last-child:last-child:last-child,
  .medium-up-7 .columns:last-child:last-child:last-child {
    float: left; }
  .medium-up-8 .column:last-child:last-child:last-child,
  .medium-up-8 .columns:last-child:last-child:last-child {
    float: left; } }

@media print, screen and (min-width: 64em) {
  .large-up-1 .column:last-child:last-child:last-child,
  .large-up-1 .columns:last-child:last-child:last-child {
    float: left; }
  .large-up-2 .column:last-child:last-child:last-child,
  .large-up-2 .columns:last-child:last-child:last-child {
    float: left; }
  .large-up-3 .column:last-child:last-child:last-child,
  .large-up-3 .columns:last-child:last-child:last-child {
    float: left; }
  .large-up-4 .column:last-child:last-child:last-child,
  .large-up-4 .columns:last-child:last-child:last-child {
    float: left; }
  .large-up-5 .column:last-child:last-child:last-child,
  .large-up-5 .columns:last-child:last-child:last-child {
    float: left; }
  .large-up-6 .column:last-child:last-child:last-child,
  .large-up-6 .columns:last-child:last-child:last-child {
    float: left; }
  .large-up-7 .column:last-child:last-child:last-child,
  .large-up-7 .columns:last-child:last-child:last-child {
    float: left; }
  .large-up-8 .column:last-child:last-child:last-child,
  .large-up-8 .columns:last-child:last-child:last-child {
    float: left; } }

@media screen and (min-width: 75em) {
  .xlarge-up-1 .column:last-child:last-child:last-child,
  .xlarge-up-1 .columns:last-child:last-child:last-child {
    float: left; }
  .xlarge-up-2 .column:last-child:last-child:last-child,
  .xlarge-up-2 .columns:last-child:last-child:last-child {
    float: left; }
  .xlarge-up-3 .column:last-child:last-child:last-child,
  .xlarge-up-3 .columns:last-child:last-child:last-child {
    float: left; }
  .xlarge-up-4 .column:last-child:last-child:last-child,
  .xlarge-up-4 .columns:last-child:last-child:last-child {
    float: left; }
  .xlarge-up-5 .column:last-child:last-child:last-child,
  .xlarge-up-5 .columns:last-child:last-child:last-child {
    float: left; }
  .xlarge-up-6 .column:last-child:last-child:last-child,
  .xlarge-up-6 .columns:last-child:last-child:last-child {
    float: left; }
  .xlarge-up-7 .column:last-child:last-child:last-child,
  .xlarge-up-7 .columns:last-child:last-child:last-child {
    float: left; }
  .xlarge-up-8 .column:last-child:last-child:last-child,
  .xlarge-up-8 .columns:last-child:last-child:last-child {
    float: left; } }

@media print, screen and (min-width: 64em) {
  [dir="rtl"] .large-uncentered,
  [dir="rtl"] .large-push-0,
  [dir="rtl"] .large-pull-0 {
    float: right;
    margin-left: 0;
    margin-right: 0;
    position: static; } }

.vertical-center {
  position: absolute;
  top: 50%;
  transform: translateY(-50%); }

.center-element {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%); }

.use-loader {
  height: 360px;
  overflow: hidden;
  background: url(../img/loader.gif) no-repeat center center transparent; }

.round {
  border-radius: 1000px;
  overflow: hidden;
  -webkit-mask-image: -webkit-radial-gradient(white, black); }

.button-radius {
  border-radius: 40px; }

.gutters-1x {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  .gutters-1x > .cell {
    padding-right: 0.625rem;
    padding-left: 0.625rem; }

.gutters--1x {
  margin-right: -0.15625rem;
  margin-left: -0.15625rem; }
  .gutters--1x > .cell {
    padding-right: 0.15625rem;
    padding-left: 0.15625rem; }

.gutters-margin-1x {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  .gutters-margin-1x .cell {
    margin-right: 0.625rem;
    margin-left: 0.625rem; }

@media print, screen and (min-width: 64em) {
  .gutter-20.row {
    margin-left: -0.625rem;
    margin-right: -0.625rem; }
  .gutter-20 .column {
    padding-right: 0.625rem;
    padding-left: 0.625rem; } }

@media print, screen and (min-width: 64em) {
  .gutter-10.row {
    margin-left: -0.3125rem;
    margin-right: -0.3125rem; }
  .gutter-10 .column {
    padding-right: 0.3125rem;
    padding-left: 0.3125rem; } }

.margin-top-auto {
  margin-top: auto !important; }

.flex-col-full {
  display: flex;
  flex-direction: column;
  height: 100%; }

.no-border {
  border: 0; }

@media print, screen and (max-width: 39.99875em) {
  .padding-horizontal-for-small {
    padding-right: 1.25rem;
    padding-left: 1.25rem; } }

.with-padding {
  padding: 1rem; }

.has-padding {
  padding: 2rem 1.5rem; }

.vertical-padd {
  padding: 1rem 0; }

.black-bg {
  background-color: #000000; }

.white-bg, .newsletter-holder {
  background-color: #ffffff; }

.maxWidth-medium,
.maxWidth-small,
.maxWidth-xsmall {
  float: none;
  margin-right: auto;
  margin-left: auto; }

.maxWidth-medium {
  max-width: 800px; }

.maxWidth-small {
  max-width: 670px; }

.maxWidth-xsmall {
  max-width: 360px; }

.full-bg, .podcast-single-block, .register-wide {
  width: 100vw;
  position: relative;
  right: 50%;
  left: 50%;
  margin-right: -50vw;
  margin-left: -50vw; }

@media print, screen and (max-width: 39.99875em) {
  .full-bg-sm, .newsletter-holder {
    width: 100vw;
    position: relative;
    right: 50%;
    left: 50%;
    margin-right: -50vw;
    margin-left: -50vw; } }

@media print, screen and (max-width: 63.99875em) {
  .border-bottom-md-sm {
    border-bottom: 1px solid #d1d5d5; }
    .border-bottom-md-sm.article-item {
      margin-bottom: 1rem;
      padding-bottom: 1rem; } }

@media print, screen and (max-width: 39.99875em) {
  .border-bottom-small {
    border-bottom: 1px solid #d1d5d5;
    padding-bottom: 1rem; } }

.hide-label .label {
  display: none; }

.hide-label-h3 h3 .label-live {
  display: none; }

.hide-first-title .first-title {
  display: none; }

.hide-second-title .second-title {
  display: none; }

.hide-long-description .long-description {
  display: none; }

.hide-short-description .short-description {
  display: none; }

.hide-highlight .entry-highlight {
  display: none; }

.hide-meta .article-item-meta {
  display: none; }

.hide-date .article-item-meta .icon-time,
.hide-date .article-item-meta time {
  display: none; }

.hide-img .article-item-img,
.hide-img .media-object-img {
  display: none; }

@media print, screen and (min-width: 64em) {
  .hide-img-lg .article-item-img,
  .hide-img-lg .media-object-img {
    display: none; } }

.hide-category .article-item-category {
  display: none !important; }

.hide-category-name .category-name {
  display: none; }

@media print, screen and (max-width: 39.99875em) {
  .hide-category-sm .category-name {
    display: none; } }

.hide-content .article-item-content {
  display: none; }

.hide-author .meta-author {
  display: none !important; }

.hide-highlight .entry-highlight {
  display: none; }

.hover-zoom {
  overflow: hidden; }
  .hover-zoom img {
    transition: transform 0.5s; }
  .hover-zoom:hover img {
    transform: scale(1.05); }

.input-checkbox, .writer-check input[type="checkbox"], .lottie-wrap input[type="checkbox"], .multi-check input[type="checkbox"], .bookmark-check input[type="checkbox"], .follow-tag input[type="checkbox"] {
  /* Add if not using autoprefixer */
  -webkit-appearance: none;
  /* Remove most all native input styles */
  -moz-appearance: none;
  appearance: none;
  border: 0; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC1sdHIuY3NzIiwiZ2xvYmFsL19pY29tb29uLnNjc3MiLCJnbG9iYWwvX3ZhcmlhYmxlcy5zY3NzIiwiZ2xvYmFsL193ZWJmb250cy1MVFIuc2NzcyIsIl9zZXR0aW5ncy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3VuZGF0aW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2JyZWFrcG9pbnQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcmV2ZWFsLnNjc3MiLCJnbG9iYWwvX3R5cG9ncmFwaHkuc2NzcyIsIl9sdHItc2V0dGluZ3Muc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fdW5pdC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy92ZW5kb3Ivbm9ybWFsaXplLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL19nbG9iYWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19jaGVja2JveC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fbGFiZWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2hlbHAtdGV4dC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faW5wdXQtZ3JvdXAuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2ZpZWxkc2V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19zZWxlY3Quc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2Vycm9yLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9faGVscGVycy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fY2xhc3Nlcy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19ndXR0ZXJzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2dyaWQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fY2VsbC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19tYXRoLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2xheW91dC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19jb2xsYXBzZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19wb3NpdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19mcmFtZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2xvc2UtYnV0dG9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2xhYmVsLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Byb2dyZXNzLWJhci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJsZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19jb2xvci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19iYWRnZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jYWxsb3V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9vbHRpcC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVkaWEtb2JqZWN0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Jlc3BvbnNpdmUtZW1iZWQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190aHVtYm5haWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24tbWVudS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcmlsbGRvd24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19mbG9hdC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19mbGV4LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2ZsZXguc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdmlzaWJpbGl0eS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9wcm90b3R5cGUvX2ZvbnQtc3R5bGluZy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9wcm90b3R5cGUvX3NwYWNpbmcuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvcHJvdG90eXBlL19zZXBhcmF0b3Iuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvcHJvdG90eXBlL19wb3NpdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9wcm90b3R5cGUvX3NpemluZy5zY3NzIiwidmVuZG9yL19zbGlkZWJhcnMuc2NzcyIsInZlbmRvci9fc2xpY2suc2NzcyIsInZlbmRvci9fY3VzdG9tU2Nyb2xsLnNjc3MiLCJ2ZW5kb3IvX293bC5zY3NzIiwidmVuZG9yL19vd2wtdGhlbWUuc2NzcyIsImNvbXBvbmVudHMvX3NtYXJ0aWNrZXIuc2NzcyIsImNvbXBvbmVudHMvX2hlYWRlci12My5zY3NzIiwiZ2xvYmFsL19taXhpbnMuc2NzcyIsImNvbXBvbmVudHMvX2Zvb3Rlci5zY3NzIiwiY29tcG9uZW50cy9fYWNtZXRpY2tlci5zY3NzIiwiY29tcG9uZW50cy9fYXVkaW8tcGxheWVyLnNjc3MiLCJjb21wb25lbnRzL19hYm91dC5zY3NzIiwiY29tcG9uZW50cy9fd3JpdGVycy5zY3NzIiwiY29tcG9uZW50cy9fY29va2llLnNjc3MiLCJjb21wb25lbnRzL19saXZlLWJsb2cuc2NzcyIsImNvbXBvbmVudHMvX2FkdmVydG9yaWFsLnNjc3MiLCJfZ3JpZHMuc2NzcyIsIl9jdXN0b20uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fZ3V0dGVyLnNjc3MiLCJfY3VzdG9tLWx0ci5zY3NzIiwiZ2xvYmFsL19oZWxwZXJzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3Bvc2l0aW9uLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZ0JBQWdCO0FDRWhCO0VBQ0Usc0JBQXNDO0VBQ3RDLG9OQUltRztFQUNuRyxtQkFBbUI7RUFDbkIsa0JBQWtCO0VBQ2xCLG1CQUFtQixFQUFBOztBQUdyQjtFQUNFLCtFQUFBO0VBQ0EsaUNBQWlEO0VBQ2pELFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLG9CQUFvQjtFQUNwQixvQkFBb0I7RUFDcEIsY0FBYztFQUVkLHNDQUFBO0VBQ0EsbUNBQW1DO0VBQ25DLGtDQUFrQyxFQUFBOztBQUdwQztFQUVJLFlDNUJRO0VENkJSLFdBQVcsRUFBQTs7QUFHZjtFQUVJLFlDakNlO0VEa0NmLGNBQWMsRUFBQTs7QUFHbEI7RUFFSSxZQ3RDYztFRHVDZCxjQUFjLEVBQUE7O0FBR2xCO0VBRUksWUMzQ2U7RUQ0Q2YsY0FBYyxFQUFBOztBQUdsQjtFQUVJLFlDaERnQjtFRGlEaEIsY0FBYyxFQUFBOztBQUdsQjtFQUVJLFlDckRTLEVBQU87O0FEd0RwQjtFQUVJLFlDekRRO0VEMERSLFdBQVcsRUFBQTs7QUFHZjtFQUVJLFlDOURlO0VEK0RmLGNBQWMsRUFBQTs7QUFHbEI7RUFFSSxZQ25Fb0I7RURvRXBCLGNBQWMsRUFBQTs7QUFHbEI7RUFFSSxZQ3hFa0I7RUR5RWxCLGNBQWMsRUFBQTs7QUFHbEI7RUFFSSxZQzdFdUIsRUFBTzs7QURnRmxDO0VBRUksWUNqRlksRUFBTzs7QURvRnZCO0VBRUksWUNyRm9CO0VEc0ZwQixXQUFXLEVBQUE7O0FBR2Y7RUFFSSxZQzFGZSxFQUFPOztBRDZGMUI7RUFFSSxZQzlGZTtFRCtGZixjQUFjLEVBQUE7O0FBR2xCO0VBRUksWUNuR2lCLEVBQU87O0FEc0c1QjtFQUVJLFlDdkdRO0VEd0dSLFdBQVcsRUFBQTs7QUFHZjtFQUVJLFlDNUdRO0VENkdSLGNBQWMsRUFBQTs7QUFHbEI7RUFFSSxZQ2pIUTtFRGtIUixjQUFjLEVBQUE7O0FBR2xCO0VBRUksWUN0SFk7RUR1SFosV0FBVyxFQUFBOztBQUdmO0VBRUksWUMzSFk7RUQ0SFosY0FBYyxFQUFBOztBQUdsQjtFQUVJLFlDaElpQjtFRGlJakIsY0FBYyxFQUFBOztBQUdsQjtFQUVJLFlDcklpQixFQUFPOztBRHdJNUI7RUFFSSxZQ3pJVTtFRDBJVixjQUFjLEVBQUE7O0FBR2xCO0VBRUksWUM5SVM7RUQrSVQsY0FBYyxFQUFBOztBQUdsQjtFQUVJLFlDbkpVO0VEb0pWLGNBQWMsRUFBQTs7QUFHbEI7RUFFSSxZQ3hKaUI7RUR5SmpCLGNBQWMsRUFBQTs7QUFHbEI7RUFFSSxZQzdKWTtFRDhKWixXQUFXLEVBQUE7O0FBR2Y7RUFFSSxZQ2xLUTtFRG1LUixjQUFjLEVBQUE7O0FBR2xCO0VBRUksWUN2S087RUR3S1AsY0FBYyxFQUFBOztBQUdsQjtFQUVJLFlDNUtRLEVBQU87O0FEK0tuQjtFQUVJLFlDaExjO0VEaUxkLGNBQWMsRUFBQTs7QUFHbEI7RUFFSSxZQ3JMVyxFQUFPOztBRHdMdEI7RUFFSSxZQ3pMUztFRDBMVCxXQUFXLEVBQUE7O0FBR2Y7RUFFSSxZQzlMcUIsRUFBTzs7QURpTWhDO0VBRUksWUNsTVE7RURtTVIsY0FBYyxFQUFBOztBQUdsQjtFQUVJLFlDdk1ZO0VEd01aLGNBQWMsRUFBQTs7QUFHbEI7RUFFSSxZQzVNUTtFRDZNUixXQUFXLEVBQUE7O0FBR2Y7RUFFSSxZQ2pOVyxFQUFPOztBRG9OdEI7RUFFSSxZQ3JOVSxFQUFPOztBRHdOckI7RUFFSSxZQ3pOWTtFRDBOWixjQUFjLEVBQUE7O0FBR2xCO0VBRUksWUM5TlMsRUFBTzs7QURpT3BCO0VBRUksWUNsT2EsRUFBTzs7QURxT3hCO0VBRUksWUN0T1UsRUFBTzs7QUR5T3JCO0VBRUksWUMxT1MsRUFBTzs7QUQ2T3BCO0VBRUksWUM5T1UsRUFBTzs7QURpUHJCO0VBRUksWUNsUFUsRUFBTzs7QURxUHJCO0VBRUksWUN0UFEsRUFBTzs7QUR5UG5CO0VBRUksWUMxUFUsRUFBTzs7QUQ2UHJCO0VBRUksWUM5UFEsRUFBTzs7QURpUW5CO0VBRUksWUNsUWMsRUFBTzs7QURxUXpCO0VBRUksWUN0UVEsRUFBTzs7QUR5UW5CO0VBRUksWUMxUVcsRUFBTzs7QUQ2UXRCO0VBRUksWUM5UWEsRUFBTzs7QURpUnhCO0VBRUksWUNsUk8sRUFBTzs7QURxUmxCO0VBRUksWUN0UlEsRUFBTzs7QUR5Um5CO0VBRUksWUMxUlksRUFBTzs7QUQ2UnZCO0VBRUksWUM5UmEsRUFBTzs7QURpU3hCO0VBRUksWUNsU2EsRUFBTzs7QURxU3hCO0VBRUksWUN0U2EsRUFBTzs7QUR5U3hCO0VBRUksWUMxU1MsRUFBTzs7QUQ2U3BCO0VBRUksWUM5U1EsRUFBTzs7QURpVG5CO0VBRUksWUNsVFUsRUFBTzs7QURxVHJCO0VBRUksWUN0VFMsRUFBTzs7QUR5VHBCO0VBRUksWUMxVFMsRUFBTzs7QUQ2VHBCO0VBRUksWUM5VGUsRUFBTzs7QURpVTFCO0VBRUksWUNsVWdCLEVBQU87O0FEcVUzQjtFQUVJLFlDdFVnQixFQUFPOztBRHlVM0I7RUFFSSxZQzFVZSxFQUFPOztBRDZVMUI7RUFFSSxZQzlVZSxFQUFPOztBRGlWMUI7RUFFSSxZQ2xWYSxFQUFPOztBRHFWeEI7RUFFSSxZQ3RWYyxFQUFPOztBRHlWekI7RUFFSSxZQzFWZSxFQUFPOztBRDZWMUI7RUFFSSxZQzlWWSxFQUFPOztBRGlXdkI7RUFFSSxZQ2xXYyxFQUFPOztBRHFXekI7RUFFSSxZQ3RXVSxF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dkIsY2pCMEJjLEVBQUE7RWlCUGQ7SUFJSSxjQUFjLEVBQUE7O0FDOElsQjs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQW1CRSxTQUFTO0VBQ1QsVUFBVSxFQUFBOztBZGhOZDtFY3FOSSxtQmxCcUQwQjtFa0JuRDFCLGtCQUFrQjtFQUNsQixnQmxCaURzQjtFa0JoRHRCLGtDbEJrRHlDLEVBQUE7O0FrQjlDM0M7O0VBRUUsa0JBQWtCO0VBQ2xCLG9CQUFvQixFQUFBOztBQUl0Qjs7RUFFRSxpQmxCN0dxQjtFa0I4R3JCLG9CQUFvQixFQUFBOztBWHJMdEI7RVcwTEUsY2xCMkJpQjtFa0IxQmpCLG9CQUFvQixFQUFBOztBQUl0Qjs7Ozs7O0VBTUUsa0ZsQmpEUTtFa0JrRFIsa0JsQmhEc0I7RWtCaUR0QixtQmxCakl5QjtFa0JrSXpCLGNsQmhEa0I7RWtCaURsQixrQ2xCV3NDLEVBQUE7RWtCckJ4Qzs7Ozs7O0lBYUksY0FBYztJQUNkLGNsQnRMZSxFQUFBOztBa0IrTGI7RUFJSSxlWnJOb0Q7RVlpT3BELGdCYmpTVztFYXlTWCxhQUFhO0VBT2IscUJsQjNGaUIsRUFBQTs7QWtCNERyQjtFQUlJLG1CWnJOb0Q7RVlpT3BELGdCYmpTVztFYXlTWCxhQUFhO0VBT2IscUJsQjNGaUIsRUFBQTs7QWtCNERyQjtFQUlJLGtCWnJOb0Q7RVlpT3BELGdCYmpTVztFYXlTWCxhQUFhO0VBT2IscUJsQjNGaUIsRUFBQTs7QWtCNERyQjtFQUlJLG9CWnJOb0Q7RVlpT3BELGdCYmpTVztFYXlTWCxhQUFhO0VBT2IscUJsQjNGaUIsRUFBQTs7QWtCNERyQjtFQUlJLGVack5vRDtFWWlPcEQsZ0JialNXO0VheVNYLGFBQWE7RUFPYixxQmxCM0ZpQixFQUFBOztBa0I0RHJCO0VBSUksbUJack5vRDtFWWlPcEQsZ0JialNXO0VheVNYLGFBQWE7RUFPYixxQmxCM0ZpQixFQUFBOztBRWhFckI7RWdCNEhBO0lBSUksbUJack5vRCxFQUFBO0VZaU54RDtJQUlJLGVack5vRCxFQUFBO0VZaU54RDtJQUlJLG9CWnJOb0QsRUFBQTtFWWlOeEQ7SUFJSSxvQlpyTm9ELEVBQUE7RVlpTnhEO0lBSUksa0Jack5vRCxFQUFBO0VZaU54RDtJQUlJLGVack5vRCxFQUFBLEVZa1B2RDs7QVh0UlA7RVc2UkUsb0JBQW9CO0VBQ3BCLGNsQjdPVztFa0I4T1gscUJsQm5DeUI7RWtCcUN6QixlQUFlLEVBQUE7RUFMakI7SUFTSSxjbEIzUVksRUFBQTtFa0JrUWhCO0lBZ0JJLFNBQVMsRUFBQTs7QVgvVGI7RVdxVUUsV0FBVztFQUVYLGtCWmhSNEQ7RVlpUjVELFNBQVM7RUFDVCxvQmxCdER5QjtFa0J3RHpCLGFBQWE7RUFDYixlQUFlO0VBQ2YsZ0NsQnBRaUI7RWtCcVFqQixjQUFjLEVBQUE7O0FBSWhCOzs7RUFHRSxtQmxCM0UwQjtFa0I0RTFCLDRCbEIvRHlCO0VrQmdFekIsZ0JsQjlFc0IsRUFBQTs7QWtCa0Z4QjtFQUNFLGtCQUFrQixFQUFBOztBQUlwQjtFQUNFLG9CbEJ6RXNCO0VrQjBFdEIscUJsQjVFa0IsRUFBQTs7QWtCZ0ZwQjtFQUNFLG9CbEIvRXNCLEVBQUE7O0FrQm1GeEI7RUFFSSxvQmxCcEYyQjtFa0JxRjNCLGdCQUFnQixFQUFBOztBQUtwQjtFQUNFLG1CbEIxRnlCLEVBQUE7RWtCeUYzQjtJQUlJLHFCbEIzRjhCO0lrQjRGOUIsaUJsQi9QbUIsRUFBQTs7QWtCb1F2QjtFQUNFLGdCbEJwSDBCO0VrQnFIMUIsc0NaeFU0RDtFWXlVNUQsOEJsQnZUaUIsRUFBQTtFa0JvVG5CO0lBTUksZ0JsQjFIb0I7SWtCMkhwQixjbEIxVGEsRUFBQTs7QWtCd1VqQjtFQUNFLGlDbEIvVVc7RWtCZ1ZYLFlBQVk7RUFDWixxQkFBcUIsRUFBQTs7QUFJdkI7RUFDRSxTQUFTLEVBQUE7O0FBV1g7RUFDRSxTQUFTO0VBQ1QsMkJaM1dTO0VZNldULHlCbEJqV2dCO0VrQm1XaEIsNERsQmxPbUU7RWtCbU9uRSxjbEJ4V1csRUFBQTs7QW1CMEJiO0VBQ0Usa0JuQmlOeUI7RW1CaE56QixxQm5CaU40QjtFbUIvTTVCLG1CbkJzQnlCO0VtQnJCekIsZ0JuQjBN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LHlCQUE2RDtRQUE3RCx3QkFBNkQsRUFBQSxFRGZoRTtFQUxIO0lDNkJJLGdCQUE2RDtJQUE3RCxlQUE2RDtJQ3ZCakUsZUZFbUM7SUVEbkMsaUJBQWlCO0lBQ2pCLGtCQUFrQixFQUFBOztBRktsQjtFRVNBLGFBQWE7RUFDYixtQkFIcUIsRUFBQTs7QUZIckI7RUc0RkEsY0FBTTtFQUlKLGFBQWE7RUFDYixZQUFZO0VBc0NaLFdBdEVpQyxFQUFBO0VIakVuQztJRzRGQSxXQUFNLEVBQUE7RUg1Rk47SUc0RkEsY0FBTSxFQUFBOztBSGhGTjtFRzJIRSxXQWxGWSxFQUFBOztBSHpDZDtFRzJIRSxXQWxGWSxFQUFBOztBSHpCWjtFQU1JLGdCQUFnQixFQUFBOztBcEJvSGhCO0VvQjFISjtJQU1JLGdCQUFnQixFQUFBLEVBQ2pCOztBcEJtSEM7RW9CMUhKO0lBTUksZ0JBQWdCLEVBQUEsRUFDakI7O0FwQndIQztFb0IvSEo7SUFNSSxnQkFBZ0IsRUFBQSxFQUNqQjs7QUFZSDtFRzZDRixjQUFNLEVBQUE7O0FIOUJGO0VHeUVGLGVDbkJnRSxFQUFBOztBSnREOUQ7RUd5RUYsZ0JDbkJnRSxFQUFBOztBSnREOUQ7RUd5RUYsVUNuQmdFLEVBQUE7O0FKdEQ5RDtFR3lFRixnQkNuQmdFLEVBQUE7O0FKdEQ5RDtFR3lFRixnQkNuQmdFLEVBQUE7O0FKdEQ5RDtFR3lFRixVQ25CZ0UsRUFBQTs7QUp0RDlEO0VHeUVGLGdCQ25CZ0UsRUFBQTs7QUp0RDlEO0VHeUVGLGdCQ25CZ0UsRUFBQTs7QUp0RDlEO0VHeUVGLFVDbkJnRSxFQUFBOztBSnREOUQ7RUd5RUYsZ0JDbkJnRSxFQUFBOztBSnREOUQ7RUd5RUYsZ0JDbkJnRSxFQUFBOztBSnREOUQ7RUd5RUYsV0NuQmdFLEVBQUE7O0F4QmtDNUQ7RW9CNUdGO0lHa0RKLFdBQU07SUEyQ0osV0FsRlksRUFBQTtFSE5aO0lHNkNGLGNBQU0sRUFBQTtFSHZDRjtJR2tGRixXQWxGWSxFQUFBO0VIU1Y7SUd5RUYsZUNuQmdFLEVBQUE7RUp0RDlEO0lHeUVGLGdCQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsVUNuQmdFLEVBQUE7RUp0RDlEO0lHeUVGLGdCQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsZ0JDbkJnRSxFQUFBO0VKdEQ5RDtJR3lFRixVQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsZ0JDbkJnRSxFQUFBO0VKdEQ5RDtJR3lFRixnQkNuQmdFLEVBQUE7RUp0RDlEO0lHeUVGLFVDbkJnRSxFQUFBO0VKdEQ5RDtJR3lFRixnQkNuQmdFLEVBQUE7RUp0RDlEO0lHeUVGLGdCQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsV0NuQmdFLEVBQUEsRUpuRDdEOztBcEJxRkM7RW9CNUdGO0lHa0RKLFdBQU07SUEyQ0osV0FsRlksRUFBQTtFSE5aO0lHNkNGLGNBQU0sRUFBQTtFSHZDRjtJR2tGRixXQWxGWSxFQUFBO0VIU1Y7SUd5RUYsZUNuQmdFLEVBQUE7RUp0RDlEO0lHeUVGLGdCQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsVUNuQmdFLEVBQUE7RUp0RDlEO0lHeUVGLGdCQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsZ0JDbkJnRSxFQUFBO0VKdEQ5RDtJR3lFRixVQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsZ0JDbkJnRSxFQUFBO0VKdEQ5RDtJR3lFRixnQkNuQmdFLEVBQUE7RUp0RDlEO0lHeUVGLFVDbkJnRSxFQUFBO0VKdEQ5RDtJR3lFRixnQkNuQmdFLEVBQUE7RUp0RDlEO0lHeUVGLGdCQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsV0NuQmdFLEVBQUEsRUpuRDdEOztBcEIwRkM7RW9CakhGO0lHa0RKLFdBQU07SUEyQ0osV0FsRlksRUFBQTtFSE5aO0lHNkNGLGNBQU0sRUFBQTtFSHZDRjtJR2tGRixXQWxGWSxFQUFBO0VIU1Y7SUd5RUYsZUNuQmdFLEVBQUE7RUp0RDlEO0lHeUVGLGdCQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsVUNuQmdFLEVBQUE7RUp0RDlEO0lHeUVGLGdCQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsZ0JDbkJnRSxFQUFBO0VKdEQ5RDtJR3lFRixVQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsZ0JDbkJnRSxFQUFBO0VKdEQ5RDtJR3lFRixnQkNuQmdFLEVBQUE7RUp0RDlEO0lHeUVGLFVDbkJnRSxFQUFBO0VKdEQ5RDtJR3lFRixnQkNuQmdFLEVBQUE7RUp0RDlEO0lHeUVGLGdCQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsV0NuQmdFLEVBQUEsRUpuRDdEOztBQUtMO0VBQ0UsV0FBVyxFQUFBOztBQUliO0VBQ0UsWUFBWSxFQUFBOztBQThCZDtFQ3ZHTSxzQkFBNkQ7RUFBN0QsdUJBQTZELEVBQUE7RXJCbUo3RDtJb0I1Q047TUN2R00sd0JBQTZEO01BQTdELHlCQUE2RCxFQUFBLEVEc0lsRTtFQS9CRDtJRzZCRSwyQkF0RDhGO0lGckU1RixxQkFBNkQ7SUFBN0Qsc0JBQTZELEVBQUE7RXJCMEkzRDtJb0I1Q047TUc2QkUsNkJBdEQ4RjtNRnJFNUYsdUJBQTZEO01BQTdELHdCQUE2RCxFQUFBLEVEMkcxRDtFQXJDUDtJR3FERSxXQWxGWSxFQUFBO0VIaUNkO0lHaURFLFdBbEZZLEVBQUE7RUh5Q1o7SUd5Q0EsK0JBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwwQkF0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsZ0NBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwwQkF0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsZ0NBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwwQkF0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsZ0NBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSwyQkF0RDhGLEVBQUE7RXZCcUUxRjtJb0JwRU47TUdxREUsV0FsRlksRUFBQTtJSGlDZDtNR2lERSxXQWxGWSxFQUFBO0lIeUNaO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNkJBdEQ4RixFQUFBO0lIQ2hHO01HcURFLFdBbEZZLEVBQUE7SUhpQ2Q7TUdpREUsV0FsRlksRUFBQTtJSHlDWjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDRCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDRCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDRCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDZCQXREOEYsRUFBQSxFSGU3RjtFcEJzREc7SW9CcEVOO01HcURFLFdBbEZZLEVBQUE7SUhpQ2Q7TUdpREUsV0FsRlksRUFBQTtJSHlDWjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDRCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDRCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDRCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDZCQXREOEYsRUFBQSxFSGU3RjtFcEIyREc7SW9CekVOO01HcURFLFdBbEZZLEVBQUE7SUhpQ2Q7TUdpREUsV0FsRlksRUFBQTtJSHlDWjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDRCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDRCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDRCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDZCQXREOEYsRUFBQSxFSGU3Rjs7QUE4Q0g7RUMzSU0sdUJBQTZEO0VBQTdELHNCQUE2RCxFQUFBO0VyQm1KN0Q7SW9CUk47TUMzSU0seUJBQTZEO01BQTdELHdCQUE2RCxFQUFBLEVEZ0poRTs7QUFJRDtFQ3BKSSx1QkFBNkQ7RUFBN0Qsc0JBQTZELEVBQUE7RXJCbUo3RDtJb0JDSjtNQ3BKSSx5QkFBNkQ7TUFBN0Qsd0JBQTZELEVBQUEsRURzSmhFOztBQVhIO0VDM0lNLHVCQUE2RDtFQUE3RCxzQkFBNkQsRUFBQTtFckJtSjdEO0lvQlJOO01DM0lNLHlCQUE2RDtNQUE3RCx3QkFBNkQsRUFBQSxFRDJKaEU7O0FLM0pIO0VGb0lFLFdDbkJnRSxFQUFBOztBQ2pIbEU7RUZvSUUsVUNuQmdFLEVBQUE7O0FDakhsRTtFRm9JRSxnQkNuQmdFLEVBQUE7O0FDakhsRTtFRm9JRSxVQ25CZ0UsRUFBQTs7QUNqSGxFO0VGb0lFLFVDbkJnRSxFQUFBOztBQ2pIbEU7RUZvSUUsZ0JDbkJnRSxFQUFBOztBQ2pIbEU7RUZvSUUsZ0JDbkJnRSxFQUFBOztBQ2pIbEU7RUZvSUUsWUNuQmdFLEVBQUE7O0F4QmtDNUQ7RXlCbkpOO0lGb0lFLFdDbkJnRSxFQUFBO0VDakhsRTtJRm9JRSxVQ25CZ0UsRUFBQTtFQ2pIbEU7SUZvSUUsZ0JDbkJnRSxFQUFBO0VDakhsRTtJRm9JRSxVQ25CZ0UsRUFBQTtFQ2pIbEU7SUZvSUUsVUNuQmdFLEVBQUE7RUNqSGxFO0lGb0lFLGdCQ25CZ0UsRUFBQTtFQ2pIbEU7SUZvSUUsZ0JDbkJnRSxFQUFBO0VDakhsRTtJRm9JRSxZQ25CZ0UsRUFBQSxFQy9HakU7O0F6QmlKSztFeUJuSk47SUZvSUUsV0NuQmdFLEVBQUE7RUNqSGxFO0lGb0lFLFVDbkJnRSxFQUFBO0VDakhsRTtJRm9JRSxnQkNuQmdFLEVBQUE7RUNqSGxFO0lGb0lFLFVDbkJnRSxFQUFBO0VDakhsRTtJRm9JRSxVQ25CZ0UsRUFBQTtFQ2pIbEU7SUZvSUUsZ0JDbkJnRSxFQUFBO0VDakhsRTtJRm9JRSxnQkNuQmdFLEVBQUE7RUNqSGxFO0lGb0lFLFlDbkJnRSxFQUFBLEVDL0dqRTs7QXpCc0pLO0V5QnhKTjtJRm9JRSxXQ25CZ0UsRUFBQTtFQ2pIbEU7SUZvSUUsVUNuQmdFLEVBQUE7RUNqSGxFO0lGb0lFLGdCQ25CZ0UsRUFBQTtFQ2pIbEU7SUZvSUUsVUNuQmdFLEVBQUE7RUNqSGxFO0lGb0lFLFVDbkJnRSxFQUFBO0VDakhsRTtJRm9JRSxnQkNuQmdFLEVBQUE7RUNqSGxFO0lGb0lFLGdCQ25CZ0UsRUFBQTtFQ2pIbEU7SUZvSUUsWUNuQmdFLEVBQUEsRUMvR2pFOztBQUZEO0VGb0lFLDJCQXREOEYsRUFBQTs7QUU5RWhHO0VGb0lFLDBCQXREOEYsRUFBQTs7QUU5RWhHO0VGb0lFLGdDQXREOEYsRUFBQTs7QUU5RWhHO0VGb0lFLDBCQXREOEYsRUFBQTs7QUU5RWhHO0VGb0lFLDBCQXREOEYsRUFBQTs7QUU5RWhHO0VGb0lFLGdDQXREOEYsRUFBQTs7QUU5RWhHO0VGb0lFLGdDQXREOEYsRUFBQTs7QUU5RWhHO0VGb0lFLDRCQXREOEYsRUFBQTs7QXZCcUUxRjtFeUJuSk47SUZvSUUsNkJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSw0QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLGtDQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsNEJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSw0QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLGtDQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsa0NBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSw4QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDZCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsNEJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSxrQ0F0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDRCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsNEJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSxrQ0F0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLGtDQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsOEJBdEQ4RixFQUFBLEVFNUUvRjs7QXpCaUpLO0V5Qm5KTjtJRm9JRSw2QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDRCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsa0NBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSw0QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDRCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsa0NBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSxrQ0F0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDhCQXREOEYsRUFBQSxFRTVFL0Y7O0F6QnNKSztFeUJ4Sk47SUZvSUUsNkJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSw0QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLGtDQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsNEJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSw0QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLGtDQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsa0NBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSw4QkF0RDhGLEVBQUEsRUU1RS9GOztBTHFNRztFTTlNRSxlQUEwQjtFQUExQixjQUEwQixFQUFBO0VBRzVCO0lBRUksZUFBMEI7SUFBMUIsY0FBMEIsRUFBQTtFQXNCeEI7SUhnSFIsZUNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsVUNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixVQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLFVDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsV0NuQmdFLEVBQUE7RXhCa0M1RDtJMEIvSEk7TUhnSFIsZUNuQmdFLEVBQUE7SUU3RnhEO01IZ0hSLGdCQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsVUNuQmdFLEVBQUE7SUU3RnhEO01IZ0hSLGdCQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsZ0JDbkJnRSxFQUFBO0lFN0Z4RDtNSGdIUixVQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsZ0JDbkJnRSxFQUFBO0lFN0Z4RDtNSGdIUixnQkNuQmdFLEVBQUE7SUU3RnhEO01IZ0hSLFVDbkJnRSxFQUFBO0lFN0Z4RDtNSGdIUixnQkNuQmdFLEVBQUE7SUU3RnhEO01IZ0hSLGdCQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsV0NuQmdFLEVBQUEsRUUzRnZEO0UxQjZITDtJMEIvSEk7TUhnSFIsZUNuQmdFLEVBQUE7SUU3RnhEO01IZ0hSLGdCQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsVUNuQmdFLEVBQUE7SUU3RnhEO01IZ0hSLGdCQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsZ0JDbkJnRSxFQUFBO0lFN0Z4RDtNSGdIUixVQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsZ0JDbkJnRSxFQUFBO0lFN0Z4RDtNSGdIUixnQkNuQmdFLEVBQUE7SUU3RnhEO01IZ0hSLFVDbkJnRSxFQUFBO0lFN0Z4RDtNSGdIUixnQkNuQmdFLEVBQUE7SUU3RnhEO01IZ0hSLGdCQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsV0NuQmdFLEVBQUEsRUUzRnZEO0UxQmtJTDtJMEJwSUk7TUhnSFIsZUNuQmdFLEVBQUE7SUU3RnhEO01IZ0hSLGdCQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsVUNuQmdFLEVBQUE7SUU3RnhEO01IZ0hSLGdCQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsZ0JDbkJnRSxFQUFBO0lFN0Z4RDtNSGdIUixVQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsZ0JDbkJnRSxFQUFBO0lFN0Z4RDtNSGdIUixnQkNuQmdFLEVBQUE7SUU3RnhEO01IZ0hSLFVDbkJnRSxFQUFBO0lFN0Z4RDtNSGdIUixnQkNuQmdFLEVBQUE7SUU3RnhEO01IZ0hSLGdCQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsV0NuQmdFLEVBQUEsRUUzRnZEOztBTnVMUDtFTTdLRSxlQUEwQjtFQUExQixjQUEwQixFQUFBO0VBRzVCO0lBRUksZ0JBQTRCO0lBQTVCLGVBQTRCLEVBQUE7O0ExQjhHOUI7RW9Cb0RGO0lNOU1FLGVBQTBCO0lBQTFCLGNBQTBCLEVBQUE7SUFHNUI7TUFFSSxlQUEwQjtNQUExQixjQUEwQixFQUFBLEVBRTdCOztBMUJtSkM7RTBCeElJO0lIeUhSLGVDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLFVDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsVUNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixVQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLFdDbkJnRSxFQUFBLEVFcEd2RDs7QTFCc0lMO0UwQi9ISTtJSGdIUixlQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixVQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLFVDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsVUNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixXQ25CZ0UsRUFBQSxFRTNGdkQ7O0ExQjZITDtFMEIvSEk7SUhnSFIsZUNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsVUNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixVQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLFVDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsV0NuQmdFLEVBQUEsRUUzRnZEOztBMUJrSUw7RTBCcElJO0lIZ0hSLGVDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLFVDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsVUNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixVQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLFdDbkJnRSxFQUFBLEVFM0Z2RDs7QTFCNkhMO0VvQjBERjtJTTdLRSxlQUEwQjtJQUExQixjQUEwQixFQUFBO0lBRzVCO01BRUksZ0JBQTRCO01BQTVCLGVBQTRCLEVBQUEsRUFFL0I7O0ExQjRHQztFb0JvREY7SU05TUUsZUFBMEI7SUFBMUIsY0FBMEIsRUFBQTtJQUc1QjtNQUVJLGVBQTBCO01BQTFCLGNBQTBCLEVBQUEsRUFFN0I7O0ExQm1KQztFMEJ4SUk7SUh5SFIsZUNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsVUNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixVQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLFVDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsV0NuQmdFLEVBQUEsRUVwR3ZEOztBMUJzSUw7RTBCeElJO0lIeUhSLGVDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLFVDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsVUNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixVQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLFdDbkJnRSxFQUFBLEVFcEd2RDs7QTFCc0lMO0UwQi9ISTtJSGdIUixlQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixVQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLFVDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsVUNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixXQ25CZ0UsRUFBQSxFRTNGdkQ7O0ExQmtJTDtFMEJwSUk7SUhnSFIsZUNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsVUNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixVQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLFVDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsV0NuQmdFLEVBQUEsRUUzRnZEOztBMUI2SEw7RW9CMERGO0lNN0tFLGVBQTBCO0lBQTFCLGNBQTBCLEVBQUE7SUFHNUI7TUFFSSxnQkFBNEI7TUFBNUIsZUFBNEIsRUFBQSxFQUUvQjs7QTFCaUhDO0VvQitDRjtJTTlNRSxlQUEwQjtJQUExQixjQUEwQixFQUFBO0lBRzVCO01BRUksZUFBMEI7TUFBMUIsY0FBMEIsRUFBQSxFQUU3Qjs7QTFCd0pDO0UwQjdJSTtJSHlIUixlQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixVQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLFVDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsVUNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixXQ25CZ0UsRUFBQSxFRXBHdkQ7O0ExQjJJTDtFMEI3SUk7SUh5SFIsZUNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsVUNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixVQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLFVDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsV0NuQmdFLEVBQUEsRUVwR3ZEOztBMUIySUw7RTBCN0lJO0lIeUhSLGVDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLFVDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsVUNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixVQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLFdDbkJnRSxFQUFBLEVFcEd2RDs7QTFCMklMO0UwQnBJSTtJSGdIUixlQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixVQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLFVDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsVUNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixXQ25CZ0UsRUFBQSxFRTNGdkQ7O0ExQmtJTDtFb0JxREY7SU03S0UsZUFBMEI7SUFBMUIsY0FBMEIsRUFBQTtJQUc1QjtNQUVJLGdCQUE0QjtNQUE1QixlQUE0QixFQUFBLEVBRS9COztBTm9MRDtFT3ZNRixlQUE2QixFQUFBOztBUDJNM0I7RU8zTUYsbUNBQTZCLEVBQUE7O0FQdU0zQjtFT3ZNRixxQkFBNkIsRUFBQTs7QVAyTTNCO0VPM01GLHlDQUE2QixFQUFBOztBUHVNM0I7RU92TUYsc0JBQTZCLEVBQUE7O0FQMk0zQjtFTzNNRiwwQ0FBNkIsRUFBQTs7QVB1TTNCO0VPdk1GLGdCQUE2QixFQUFBOztBUDJNM0I7RU8zTUYsb0NBQTZCLEVBQUE7O0FQdU0zQjtFT3ZNRixzQkFBNkIsRUFBQTs7QVAyTTNCO0VPM01GLDBDQUE2QixFQUFBOztBUHVNM0I7RU92TUYsc0JBQTZCLEVBQUE7O0FQMk0zQjtFTzNNRiwwQ0FBNkIsRUFBQTs7QVB1TTNCO0VPdk1GLGdCQUE2QixFQUFBOztBUDJNM0I7RU8zTUYsb0NBQTZCLEVBQUE7O0FQdU0zQjtFT3ZNRixzQkFBNkIsRUFBQTs7QVAyTTNCO0VPM01GLDBDQUE2QixFQUFBOztBUHVNM0I7RU92TUYsc0JBQTZCLEVBQUE7O0FQMk0zQjtFTzNNRiwwQ0FBNkIsRUFBQTs7QVB1TTNCO0VPdk1GLGdCQUE2QixFQUFBOztBUDJNM0I7RU8zTUYsb0NBQTZCLEVBQUE7O0FQdU0zQjtFT3ZNRixzQkFBNkIsRUFBQTs7QVAyTTNCO0VPM01GLDBDQUE2QixFQUFBOztBUHVNM0I7RU92TUYsc0JBQTZCLEVBQUE7O0FQMk0zQjtFTzNNRiwwQ0FBNkIsRUFBQTs7QTNCK0h6QjtFb0J3RUY7SU92TUYsZUFBNkIsRUFBQTtFUDJNM0I7SU8zTUYscUNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHFCQUE2QixFQUFBO0VQMk0zQjtJTzNNRiwyQ0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsc0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLDRDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixnQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsc0NBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRiw0Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsc0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLDRDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixnQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsc0NBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRiw0Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsc0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLDRDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixnQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsc0NBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRiw0Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsc0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLDRDQUE2QixFQUFBLEVQNk0xQjs7QXBCOUVDO0VvQndFRjtJT3ZNRixlQUE2QixFQUFBO0VQMk0zQjtJTzNNRixxQ0FBNkIsRUFBQTtFUHVNM0I7SU92TUYscUJBQTZCLEVBQUE7RVAyTTNCO0lPM01GLDJDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsNENBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLGdCQUE2QixFQUFBO0VQMk0zQjtJTzNNRixzQ0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsc0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLDRDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsNENBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLGdCQUE2QixFQUFBO0VQMk0zQjtJTzNNRixzQ0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsc0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLDRDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsNENBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLGdCQUE2QixFQUFBO0VQMk0zQjtJTzNNRixzQ0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsc0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLDRDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsNENBQTZCLEVBQUEsRVA2TTFCOztBcEJ6RUM7RW9CbUVGO0lPdk1GLGVBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHFDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixxQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsMkNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRiw0Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsZ0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHNDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsNENBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRiw0Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsZ0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHNDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsNENBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRiw0Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsZ0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHNDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsNENBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRiw0Q0FBNkIsRUFBQSxFUDZNMUI7O0FBekpTO0VFdEVkLGFBQWE7RUFDYix3QkFINkIsRUFBQTtFRmlQN0I7SUcxSUEsWUFBbUI7SUFDbkIsZ0JBQTJCLEVBQUE7RUh5STNCO0lHN0dFLFlBbEZZLEVBQUE7RUgrTGQ7SUc3R0UsWUFsRlksRUFBQTtFSCtMZDtJQTJCTSxnQkFBZ0IsRUFBQTtFcEJ6SGhCO0lvQjhGTjtNQTJCTSxnQkFBZ0IsRUFBQSxFQUNqQjtFcEIxSEM7SW9COEZOO01BMkJNLGdCQUFnQixFQUFBLEVBQ2pCO0VwQnJIQztJb0J5Rk47TUEyQk0sZ0JBQWdCLEVBQUEsRUFDakI7RUE1Qkw7SUd4SkEsY0FBTSxFQUFBO0VId0pOO0lHN0dFLGdCQ25CZ0UsRUFBQTtFSmdJbEU7SUc3R0UsaUJDbkJnRSxFQUFBO0VKZ0lsRTtJRzdHRSxXQ25CZ0UsRUFBQTtFSmdJbEU7SUc3R0UsaUJDbkJnRSxFQUFBO0VKZ0lsRTtJRzdHRSxpQkNuQmdFLEVBQUE7RUpnSWxFO0lHN0dFLFdDbkJnRSxFQUFBO0VKZ0lsRTtJRzdHRSxpQkNuQmdFLEVBQUE7RUpnSWxFO0lHN0dFLGlCQ25CZ0UsRUFBQTtFSmdJbEU7SUc3R0UsV0NuQmdFLEVBQUE7RUpnSWxFO0lHN0dFLGlCQ25CZ0UsRUFBQTtFSmdJbEU7SUc3R0UsaUJDbkJnRSxFQUFBO0VKZ0lsRTtJRzdHRSxZQ25CZ0UsRUFBQTtFeEJrQzVEO0lvQjhGTjtNR3hKQSxXQUFNO01BMkNKLFlBbEZZLEVBQUE7SUgrTGQ7TUd4SkEsY0FBTSxFQUFBO0lId0pOO01HN0dFLFlBbEZZLEVBQUE7SUgrTGQ7TUc3R0UsZ0JDbkJnRSxFQUFBO0lKZ0lsRTtNRzdHRSxpQkNuQmdFLEVBQUE7SUpnSWxFO01HN0dFLFdDbkJnRSxFQUFBO0lKZ0lsRTtNRzdHRSxpQkNuQmdFLEVBQUE7SUpnSWxFO01HN0dFLGlCQ25CZ0UsRUFBQTtJSmdJbEU7TUc3R0UsV0NuQmdFLEVBQUE7SUpnSWxFO01HN0dFLGlCQ25CZ0UsRUFBQTtJSmdJbEU7TUc3R0UsaUJDbkJnRSxFQUFBO0lKZ0lsRTtNRzdHRSxXQ25CZ0UsRUFBQTtJSmdJbEU7TUc3R0UsaUJDbkJnRSxFQUFBO0lKZ0lsRTtNRzdHRSxpQkNuQmdFLEVBQUE7SUpnSWxFO01HN0dFLFlDbkJnRSxFQUFBLEVKeUwzRDtFcEJ2SkQ7SW9COEZOO01HeEpBLFdBQU07TUEyQ0osWUFsRlksRUFBQTtJSCtMZDtNR3hKQSxjQUFNLEVBQUE7SUh3Sk47TUc3R0UsWUFsRlksRUFBQTtJSCtMZDtNRzdHRSxnQkNuQmdFLEVBQUE7SUpnSWxFO01HN0dFLGlCQ25CZ0UsRUFBQTtJSmdJbEU7TUc3R0UsV0NuQmdFLEVBQUE7SUpnSWxFO01HN0dFLGlCQ25CZ0UsRUFBQTtJSmdJbEU7TUc3R0UsaUJDbkJnRSxFQUFBO0lKZ0lsRTtNRzdHRSxXQ25CZ0UsRUFBQTtJSmdJbEU7TUc3R0UsaUJDbkJnRSxFQUFBO0lKZ0lsRTtNRzdHRSxpQkNuQmdFLEVBQUE7SUpnSWxFO01HN0dFLFdDbkJnRSxFQUFBO0lKZ0lsRTtNRzdHRSxpQkNuQmdFLEVBQUE7SUpnSWxFO01HN0dFLGlCQ25CZ0UsRUFBQTtJSmdJbEU7TUc3R0UsWUNuQmdFLEVBQUEsRUp5TDNEO0VwQmxKRDtJb0J5Rk47TUd4SkEsV0FBTTtNQTJDSixZQWxGWSxFQUFBO0lIK0xkO01HeEpBLGNBQU0sRUFBQTtJSHdKTjtNRzdHRSxZQWxGWSxFQUFBO0lIK0xkO01HN0dFLGdCQ25CZ0UsRUFBQTtJSmdJbEU7TUc3R0UsaUJDbkJnRSxFQUFBO0lKZ0lsRTtNRzdHRSxXQ25CZ0UsRUFBQTtJSmdJbEU7TUc3R0UsaUJDbkJnRSxFQUFBO0lKZ0lsRTtNRzdHRSxpQkNuQmdFLEVBQUE7SUpnSWxFO01HN0dFLFdDbkJnRSxFQUFBO0lKZ0lsRTtNRzdHRSxpQkNuQmdFLEVBQUE7SUpnSWxFO01HN0dFLGlCQ25CZ0UsRUFBQTtJSmdJbEU7TUc3R0UsV0NuQmdFLEVBQUE7SUpnSWxFO01HN0dFLGlCQ25CZ0UsRUFBQTtJSmdJbEU7TUc3R0UsaUJDbkJnRSxFQUFBO0lKZ0lsRTtNRzdHRSxZQ25CZ0UsRUFBQSxFSnlMM0Q7O0FBT0w7RUNqVEkscUJBQTZEO0VBQTdELHdCQUE2RCxFQUFBO0VyQm1KN0Q7SW9COEpKO01DalRJLHVCQUE2RDtNQUE3RCwwQkFBNkQsRUFBQSxFRHFUOUQ7O0FBSkg7RUNqVEkscUJBQTZEO0VBQTdELHdCQUE2RCxFQUFBO0VyQm1KN0Q7SW9COEpKO01DalRJLHVCQUE2RDtNQUE3RCwwQkFBNkQsRUFBQSxFRDBUOUQ7O0FBbk5MO0VDdkdNLHFCQUE2RDtFQUE3RCx3QkFBNkQsRUFBQTtFckJtSjdEO0lvQjVDTjtNQ3ZHTSx1QkFBNkQ7TUFBN0QsMEJBQTZELEVBQUEsRURzSWxFO0VBL0JEO0lHNkJFLDRCQXREOEY7SUZyRTVGLG9CQUE2RDtJQUE3RCx1QkFBNkQsRUFBQTtFckIwSTNEO0lvQjVDTjtNRzZCRSw4QkF0RDhGO01GckU1RixzQkFBNkQ7TUFBN0QseUJBQTZELEVBQUEsRUQyRzFEO0VBckNQO0lHcURFLFlBbEZZLEVBQUE7RUhpQ2Q7SUdpREUsWUFsRlksRUFBQTtFSHlDWjtJR3lDQSxnQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDJCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDJCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDJCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDRCQXREOEYsRUFBQTtFdkJxRTFGO0lvQnBFTjtNR3FERSxZQWxGWSxFQUFBO0lIaUNkO01HaURFLFlBbEZZLEVBQUE7SUh5Q1o7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw4QkF0RDhGLEVBQUE7SUhDaEc7TUdxREUsWUFsRlksRUFBQTtJSGlDZDtNR2lERSxZQWxGWSxFQUFBO0lIeUNaO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNkJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNkJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNkJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsOEJBdEQ4RixFQUFBLEVIZTdGO0VwQnNERztJb0JwRU47TUdxREUsWUFsRlksRUFBQTtJSGlDZDtNR2lERSxZQWxGWSxFQUFBO0lIeUNaO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNkJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNkJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNkJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYs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QTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMkJBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsNEJBdEQ4RixFQUFBO0V2QnFFMUY7SW9CcEVOO01HcURFLFlBbEZZLEVBQUE7SUhpQ2Q7TUdpREUsWUFsRlksRUFBQTtJSHlDWjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDZCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDZCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDZCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDhCQXREOEYsRUFBQTtJSENoRztNR3FERSxZQWxGWSxFQUFBO0lIaUNkO01HaURFLFlBbEZZLEVBQUE7SUh5Q1o7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw4QkF0RDhGLEVBQUEsRUhlN0Y7RXBCc0RHO0lvQnBFTjtNR3FERSxZQWxGWSxFQUFBO0lIaUNkO01HaURFLFlBbEZZLEVBQUE7SUh5Q1o7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw4QkF0RDhGLEVBQUEsRUhlN0Y7RXBCMkRHO0lvQnpFTjtNR3FERSxZQWxGWSxFQUFBO0lIaUNkO01HaURFLFlBbEZZLEVBQUE7SUh5Q1o7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw4QkF0RDhGLEVBQUEsRUhlN0Y7O0FBa1REO0VRMVlJLDZCQUFtQyxFQUFBO0U1QjhJbkM7SW9CNFBKO01RMVlJLCtCQUFtQyxFQUFBLEVSNFl0QztFcEI5UEc7SW9CNFBKO01RMVlJLCtCQUFtQyxFQUFBLEVSNFl0QztFcEJ6UEc7SW9CdVBKO01RMVlJLCtCQUFtQyxFQUFBLEVSNFl0Qzs7QXBCOVBHO0VvQmdRRjtJUTlZRSwrQkFBbUMsRUFBQSxFUmdacEM7O0FwQmxRQztFb0JnUUY7SVE5WUUsK0JBQW1DLEVBQUEsRVJnWnBDOztBcEI3UEM7RW9CMlBGO0lROVlFLCtC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LHFCQUFxQjtJQUNyQixZQUFPO0lBQ1AsZ0IvQitIdUIsRUFBQTtFK0JwR3pCO0lBb0VRLHlCL0I1VFEsRUFBQTtFK0J3UGhCO0lBMEVZLHlCL0JsVUksRUFBQTtFK0J3UGhCO0lBMEVZLHlCL0JqVU0sRUFBQTtFK0J1UGxCO0lBMEVZLHlCL0JoVUksRUFBQTtFK0JzUGhCO0lBMEVZLHlCL0IvVEksRUFBQTtFK0JxUGhCO0lBMEVZLHlCL0I5VEUsRUFBQTtFK0JvUGQ7SUFtRkksV0FBVztJQUNYLFdBQVc7SUFDWCxjQUFnQyxFQUFBOztBQUlwQztFQUdJLHFCQUFxQixFQUFBOztBQzdUekI7RUFaQSxrQkFBa0I7RUFDbEIsV2hDZ1pzQjtFZ0MvWXRCLGNoQ2dCaUI7RWdDZmpCLGVBQWUsRUFBQTtFcEN5c0dmO0lham1HRSxVQUFVLEVBQUE7RXVCdEdaO0lBRUUsY2hDS1csRUFBQTtFZ0NBYjtJQXhCQSxjaENnYWM7SWdDL1pkLFdoQ21hYTtJZ0NsYWIsZ0JoQ3NhWTtJZ0NyYVosY2hDd2F3QixFQUFBO0VnQ25aeEI7SUF4QkEsV2hDaWFZO0lnQ2hhWixXaENvYWM7SWdDbmFkLGNoQ3VhVztJZ0N0YVgsY2hDd2F3QixFQUFBOztBaUM1Y3hCO0VBWkEscUJBQXFCO0VBQ3JCLDBCakNna0IrQjtFaUM5akIvQixnQmpDd0hlO0VpQ3RIZixpQmpDMmpCc0I7RWlDMWpCdEIsY0FBYztFQUNkLG1CQUFtQjtFQUNuQixlQUFlO0VBT2IsbUJqQytCYztFaUM5QmQsY2pDeUNXLEVBQUE7RWlDN0NiO0lBUU0sbUJqQzBCVTtJaUN6QlYsY2pDZ0RPLEVBQUE7RWlDekRiO0lBUU0sbUJqQzJCWTtJaUMxQlosY2pDZ0RPLEVBQUE7RWlDekRiO0lBUU0sbUJqQzRCVTtJaUMzQlYsY2pDZ0RPLEVBQUE7RWlDekRiO0lBUU0sbUJqQzZCVTtJaUM1QlYsY2pDZ0RPLEVBQUE7RWlDekRiO0lBUU0sbUJqQzhCUTtJaUM3QlIsY2pDb0NPLEVBQUE7O0FrQ3REYjtFQW5DQSxZbENpc0JvQjtFa0Noc0JwQixtQmxDcUprQjtFa0Nw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RHdCLEVBQUE7O0FEMkV0QjtFQzFCRiwyQkFyRHlELEVBQUE7O0FEK0V2RDtFQzFCRix5QkFwRDBELEVBQUE7O0FEOEV4RDtFQzFCRix1QkFuRGtCLEVBQUE7O0FEd0ZoQjtFQ3BDRix1QkExQ2lCLEVBQUE7O0FEa0ZmO0VDeEJGLHNCQTFEaUIsRUFBQTs7QUQ4RWY7RUNwQ0YscUJBekNrQixFQUFBOztBRGlGaEI7RUN4QkYsb0JBekRrQixFQUFBOztBRDZFaEI7RUNwQ0YsbUJBeENnQixFQUFBOztBRGdGZDtFQ3hCRixrQkF4RGdCLEVBQUE7O0FENEVkO0VDcENGLG9CQXZDa0IsRUFBQTs7QUQrRWhCO0VDeEJGLG1CQXZEa0IsRUFBQTs7QURxRmxCO0VDL0NBLHVCQW5Ea0I7RUFvRGxCLG1CQXhDZ0I7RUR3RmQscUJBQXFCLEVBQUE7O0FBTW5CO0VDaENKLFFEK0JnQixFQUFBOztBQUNaO0VDaENKLFFEK0JnQixFQUFBOztBQUNaO0VDaENKLFFEK0JnQixFQUFBOztBQUNaO0VDaENKLFFEK0JnQixFQUFBOztBQUNaO0VDaENKLFFEK0JnQixFQUFBOztBQUNaO0VDaENKLFFEK0JnQixFQUFBOztBbkRzRVY7RW1EckVGO0lDaENKLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osUUQrQmdCLEVBQUE7RUFDWjtJQ2hDSixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osUUQrQmdCLEVBQUE7RUFDWjtJQ2hDSixRRCtCZ0IsRUFBQSxFQUdYOztBbkRtRUM7RW1EckVGO0lDaENKLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osUUQrQmdCLEVBQUE7RUFDWjtJQ2hDSixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osUUQrQmdCLEVBQUE7RUFDWjtJQ2hDSixRRCtCZ0IsRUFBQSxFQUdYOztBbkR3RUM7RW1EMUVGO0lDaENKLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osUUQrQmdCLEVBQUE7RUFDWjtJQ2hDSixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLFFE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eUIsRUFBQTs7QUFHN0I7RUFDSSwwQkFBMEIsRUFBQTs7QUNTNUI7O0VBQ0UsVzFFcUR1RCxFQUFBOztBMEV0RHpEOztFQUNFLFcxRXFEdUQsRUFBQTs7QTBFdER6RDs7RUFDRSxXMUVxRHVELEVBQUE7O0EwRXREekQ7O0VBQ0UsVzFFcUR1RCxFQUFBOztBMEV0RHpEOztFQUNFLFcxRXFEdUQsRUFBQTs7QTBFdER6RDs7RUFDRSxXMUVxRHVELEVBQUE7O0EwRXREekQ7O0VBQ0UsVzFFcUR1RCxFQUFBOztBMEV0RHpEOztFQUNFLFcxRXFEdUQsRUFBQTs7QU5xRG5EO0VnRjNHTjs7SUFDRSxXMUVxRHVELEVBQUE7RTBFdER6RDs7SUFDRSxXMUVxRHVELEVBQUE7RTBFdER6RDs7SUFDRSxXMUVxRHVELEVBQUE7RTBFdER6RDs7SUFDRSxXMUVxRHVELEVBQUE7RTBFdER6RDs7SUFDRSxXMUVxRHVELEVBQUE7RTBFdER6RDs7SUFDRSxXMUVxRHVELEVBQUE7RTBFdER6RDs7SUFDRSxXMUVxRHVELEVBQUE7RTBFdER6RDs7SUFDRSxXMUVxRHVELEVBQUEsRTBFcER4RDs7QWhGeUdLO0VnRjNHTjs7SUFDRSxXMUVxRHVELEVBQUE7RTBFdER6RDs7SUFDRSxXMUVxRHVELEVBQUE7RTBFdER6RDs7SUFDRSxXMUVxRHVELEVBQUE7RTBFdER6RDs7SUFDRSxXMUVxRHVELEVBQUE7RTBFdER6RDs7SUFDRSxXMUVxRHVELEVBQUE7RTBFdER6RDs7SUFDRSxXMUVxRHVELEVBQUE7RTBFdER6RDs7SUFDRSxXMUVxRHVELEVBQUE7RTBFdER6RDs7SUFDRSxXMUVxRHVELEVBQUEsRTBFcER4RDs7QWhGOEdLO0VnRmhITjs7SUFDRSxXMUVxRHVELEVBQUE7RTBFdER6RDs7SUFDRSxXMUVxRHVELEVBQUE7RTBFdER6RDs7SUFDRSxXMUVxRHVELEVBQUE7RTBFdER6RDs7SUFDRSxXMUVxRHVELEVBQUE7RTBFdER6RDs7SUFDRSxXMUVxRHVELEVBQUE7RTBFdER6RDs7SUFDRSxXMUVxRHVELEVBQUE7RTBFdER6RDs7SUFDRSxX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QUdZLGFBQWEsRUFBQSxFQUNoQjs7QUFHVDtFQUVRLGFBQWEsRUFBQTs7QUFHckI7RUFFUSx3QkFBd0IsRUFBQTs7QUExRGhDO0VBK0RRLGFBQWEsRUFBQTs7QUFJckI7RUFDSSxnQkFBZ0IsRUFBQTtFQURwQjtJQU1RLDBCQUEwQixFQUN3QjtFQVAxRDtJQVlZLHNCQUFzQixFQUFBOztBQUtsQztFQUVJLGtDQUFBO0VBQ0Esd0JBQXdCO0VBQ3hCLHdDQUFBO0VBQ0EscUJBQXFCO0VBQ3JCLGdCQUFnQjtFQUdoQixTQUFTLEVBQUEiLCJmaWxlIjoiYXBwLWx0ci5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ljb21vb24ud29mZjI/dnZzNVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvaWNvbW9vbi50dGY/dnZzNVwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvaWNvbW9vbi53b2ZmP3Z2czVcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvaWNvbW9vbi5zdmc/djUjaWNvbW9vblwiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBibG9jazsgfVxuXG4uaWNvbW9vbi1pY29uIHtcbiAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiICFpbXBvcnRhbnQ7XG4gIHNwZWFrOiBuZXZlcjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuLmljb24tbGl2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6lgFwiO1xuICBjb2xvcjogI2YwMDsgfVxuXG4uaWNvbi1jaGVjay1ncmVlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kvFwiO1xuICBjb2xvcjogIzJjOGE4MjsgfVxuXG4uaWNvbi1wbHVzLWdyZWVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qS7XCI7XG4gIGNvbG9yOiAjMmM4YTgyOyB9XG5cbi5pY29uLXBsYXktY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qS5XCI7XG4gIGNvbG9yOiAjZjJmMmYyOyB9XG5cbi5pY29uLWhvbGxvdy1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ksVwiO1xuICBjb2xvcjogIzkyOTg5ODsgfVxuXG4uaWNvbi1lYXJ0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6lk1wiOyB9XG5cbi5pY29uLWNvcHk6YmVmb3JlIHtcbiAgY29udGVudDogXCLupZFcIjtcbiAgY29sb3I6ICNmZmY7IH1cblxuLmljb24tZ3JlZW4tY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLupLJcIjtcbiAgY29sb3I6ICMyYzhhODI7IH1cblxuLmljb24tZmFjZWJvb2stY29sb3JlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kuFwiO1xuICBjb2xvcjogIzE4NzdmMjsgfVxuXG4uaWNvbi1ib29rbWFyay1ncmVlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kvVwiO1xuICBjb2xvcjogIzJjOGE4MjsgfVxuXG4uaWNvbi11c2VyLWNpcmNsZS1vLWJsYWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qS/XCI7IH1cblxuLmljb24tc2lnbi1vdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupYhcIjsgfVxuXG4uaWNvbi1ib29rbWFyay1vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qWKXCI7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbi5pY29uLWFycm93LWxlZnQzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qWPXCI7IH1cblxuLmljb24tYXJyb3ctbGVmdDQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupZBcIjtcbiAgY29sb3I6ICNlZmVjZTI7IH1cblxuLmljb24tYXBwbGUtY29sb3JlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kvlwiOyB9XG5cbi5pY29uLW5ld3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLupYJcIjtcbiAgY29sb3I6ICNmZmY7IH1cblxuLmljb24tZXllMTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6lg1wiO1xuICBjb2xvcjogIzlhOWE5YTsgfVxuXG4uaWNvbi1sb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qWEXCI7XG4gIGNvbG9yOiAjOWE5YTlhOyB9XG5cbi5pY29uLWVudmVsb3AxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qWGXCI7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbi5pY29uLWVudmVsb3AyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qWHXCI7XG4gIGNvbG9yOiAjOWE5YTlhOyB9XG5cbi5pY29uLWVudmVsb3AtZ3JlZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLupYlcIjtcbiAgY29sb3I6ICMyYzhhODI7IH1cblxuLmljb24tZHJhZy12ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kt1wiOyB9XG5cbi5pY29uLXNoYXJlMjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ktlwiO1xuICBjb2xvcjogIzJjOGE4MjsgfVxuXG4uaWNvbi1zaGFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kp1wiO1xuICBjb2xvcjogIzRkNGQ0ZDsgfVxuXG4uaWNvbi11cGxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupYFcIjtcbiAgY29sb3I6ICM0ZDRkNGQ7IH1cblxuLmljb24tdXNlci1jaXJjbGUtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kulwiO1xuICBjb2xvcjogI2Y3ZmFmYTsgfVxuXG4uaWNvbi1maWxlLXBkZjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ktVwiO1xuICBjb2xvcjogI2ZmZjsgfVxuXG4uaWNvbi1kYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSmXCI7XG4gIGNvbG9yOiAjYWZhZmFmOyB9XG5cbi5pY29uLWV5ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kqFwiO1xuICBjb2xvcjogI2FmYWZhZjsgfVxuXG4uaWNvbi1wbGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSpXCI7IH1cblxuLmljb24tcGxheS1ncmVlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kpVwiO1xuICBjb2xvcjogIzJjOGE4MjsgfVxuXG4uaWNvbi1hcmNoaXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qWOXCI7IH1cblxuLmljb24tYWxidW06YmVmb3JlIHtcbiAgY29udGVudDogXCLupYVcIjtcbiAgY29sb3I6ICNmZmY7IH1cblxuLmljb24tYXJyb3ctcmlnaHQtYmxhY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLupKRcIjsgfVxuXG4uaWNvbi1lZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qWSXCI7XG4gIGNvbG9yOiAjMmM4YTgyOyB9XG5cbi5pY29uLWNhbGVuZGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qShXCI7XG4gIGNvbG9yOiAjYWZhZmFmOyB9XG5cbi5pY29uLW1lbnU6YmVmb3JlIHtcbiAgY29udGVudDogXCLupKJcIjtcbiAgY29sb3I6ICNmZmY7IH1cblxuLmljb24tdHdpdHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6llVwiOyB9XG5cbi5pY29uLXRpa3RvazpiZWZvcmUge1xuICBjb250ZW50OiBcIu6llFwiOyB9XG5cbi5pY29uLXRlbGVncmFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSBXCI7XG4gIGNvbG9yOiAjMmNhNWUwOyB9XG5cbi5pY29uLXBhdXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSjXCI7IH1cblxuLmljb24taW5zdGFncmFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSfXCI7IH1cblxuLmljb24tc2VhcmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSAXCI7IH1cblxuLmljb24tcHJpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupYtcIjsgfVxuXG4uaWNvbi1wcmludDE6YmVmb3JlIHtcbiAgY29udGVudDogXCLupYxcIjsgfVxuXG4uaWNvbi1wcmludDI6YmVmb3JlIHtcbiAgY29udGVudDogXCLupY1cIjsgfVxuXG4uaWNvbi13aW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSqXCI7IH1cblxuLmljb24tY2xvdWR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSrXCI7IH1cblxuLmljb24tcmFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6krFwiOyB9XG5cbi5pY29uLWxpZ2h0bmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupK1cIjsgfVxuXG4uaWNvbi1zbm93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSvXCI7IH1cblxuLmljb24td2VhdGhlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kj1wiOyB9XG5cbi5pY29uLWZpbGUtcGRmMTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ktFwiOyB9XG5cbi5pY29uLW1pYzpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ks1wiOyB9XG5cbi5pY29uLWZpcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLupKBcIjsgfVxuXG4uaWNvbi1ib29rbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIu6krlwiOyB9XG5cbi5pY29uLWJvb2ttYXJrMTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ksFwiOyB9XG5cbi5pY29uLWhlYWRwaG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6knlwiOyB9XG5cbi5pY29uLWNhbGVuZGFyMTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6klVwiOyB9XG5cbi5pY29uLXRpbWUxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSYXCI7IH1cblxuLmljb24tdGltZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kmVwiOyB9XG5cbi5pY29uLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6klFwiOyB9XG5cbi5pY29uLWNsb3NlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSTXCI7IH1cblxuLmljb24tbWVudTE6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJBcIjsgfVxuXG4uaWNvbi1xdW90ZXMtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kkVwiOyB9XG5cbi5pY29uLXF1b3Rlcy1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kklwiOyB9XG5cbi5pY29uLWFycm93LXJpZ2h0MTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kmlwiOyB9XG5cbi5pY29uLWFycm93LWRvd24xOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSbXCI7IH1cblxuLmljb24tYXJyb3ctbGVmdDE6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJxcIjsgfVxuXG4uaWNvbi1hcnJvdy11cDE6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJ1cIjsgfVxuXG4uaWNvbi1hcnJvdy1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSCXCI7IH1cblxuLmljb24tYXJyb3ctcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupINcIjsgfVxuXG4uaWNvbi1hcnJvdy11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kl1wiOyB9XG5cbi5pY29uLWFycm93LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCLupJZcIjsgfVxuXG4uaWNvbi12b2x1bWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIRcIjsgfVxuXG4uaWNvbi1waG90b3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIVcIjsgfVxuXG4uaWNvbi1wbGF5MTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6khlwiOyB9XG5cbi5pY29uLXNlYXJjaDE6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIdcIjsgfVxuXG4uaWNvbi10ZWxlZ3JhbTE6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIhcIjsgfVxuXG4uaWNvbi13aGF0c2FwcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kiVwiOyB9XG5cbi5pY29uLXlvdXR1YmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLupItcIjsgfVxuXG4uaWNvbi1saW5rZWRpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kilwiOyB9XG5cbi5pY29uLWZhY2Vib29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSMXCI7IH1cblxuLmljb24tZmFjZWJvb2sxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSNXCI7IH1cblxuLmljb24tdHdpdHRlci1vbGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupI5cIjsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdTVElYIFR3byBUZXh0JztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9TVElYVHdvVGV4dC1SZWd1bGFyLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9TVElYVHdvVGV4dC1SZWd1bGFyLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvU1RJWFR3b1RleHQtUmVndWxhci50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1NUSVggVHdvIFRleHQnO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL1NUSVhUd29UZXh0LU1lZGl1bS53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvU1RJWFR3b1RleHQtTWVkaXVtLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvU1RJWFR3b1RleHQtTWVkaXVtLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnU1RJWCBUd28gVGV4dCc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvU1RJWFR3b1RleHQtTWVkaXVtSXRhbGljLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9TVElYVHdvVGV4dC1NZWRpdW1JdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9TVElYVHdvVGV4dC1NZWRpdW1JdGFsaWMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtZGlzcGxheTogc3dhcDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdTVElYIFR3byBUZXh0JztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9TVElYVHdvVGV4dC1TZW1pQm9sZC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvU1RJWFR3b1RleHQtU2VtaUJvbGQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9TVElYVHdvVGV4dC1TZW1pQm9sZC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1NUSVggVHdvIFRleHQnO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL1NUSVhUd29UZXh0LUJvbGRJdGFsaWMud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL1NUSVhUd29UZXh0LUJvbGRJdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9TVElYVHdvVGV4dC1Cb2xkSXRhbGljLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC1kaXNwbGF5OiBzd2FwOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ1NUSVggVHdvIFRleHQnO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL1NUSVhUd29UZXh0LVNlbWlCb2xkSXRhbGljLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9TVElYVHdvVGV4dC1TZW1pQm9sZEl0YWxpYy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL1NUSVhUd29UZXh0LVNlbWlCb2xkSXRhbGljLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LWRpc3BsYXk6IHN3YXA7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnU1RJWCBUd28gVGV4dCc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvU1RJWFR3b1RleHQtQm9sZC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvU1RJWFR3b1RleHQtQm9sZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL1NUSVhUd29UZXh0LUJvbGQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnU1RJWCBUd28gVGV4dCc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvU1RJWFR3b1RleHQtSXRhbGljLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9TVElYVHdvVGV4dC1JdGFsaWMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9TVElYVHdvVGV4dC1JdGFsaWMudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtZGlzcGxheTogc3dhcDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdPcGVuLVNhbnMnO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL09wZW5TYW5zLVNlbWlib2xkSXRhbGljLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy1TZW1pYm9sZEl0YWxpYy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC1kaXNwbGF5OiBzd2FwOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ09wZW4tU2Fucyc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvT3BlblNhbnMtU2VtaWJvbGQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL09wZW5TYW5zLVNlbWlib2xkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnT3Blbi1TYW5zJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvT3BlblNhbnMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogc3dhcDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdPcGVuLVNhbnMnO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL09wZW5TYW5zLUV4dHJhYm9sZEl0YWxpYy53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvT3BlblNhbnMtRXh0cmFib2xkSXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC1kaXNwbGF5OiBzd2FwOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ09wZW4tU2Fucyc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvT3BlblNhbnNMaWdodC1JdGFsaWMud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL09wZW5TYW5zTGlnaHQtSXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LWRpc3BsYXk6IHN3YXA7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnT3Blbi1TYW5zJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy1JdGFsaWMud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL09wZW5TYW5zLUl0YWxpYy53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC1kaXNwbGF5OiBzd2FwOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ09wZW4tU2Fucyc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvT3BlblNhbnMtRXh0cmFib2xkLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy1FeHRyYWJvbGQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnT3Blbi1TYW5zJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy1MaWdodC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvT3BlblNhbnMtTGlnaHQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogc3dhcDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdPcGVuLVNhbnMnO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL09wZW5TYW5zLUJvbGQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL09wZW5TYW5zLUJvbGQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnT3Blbi1TYW5zJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy1Cb2xkSXRhbGljLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9PcGVuU2Fucy1Cb2xkSXRhbGljLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC1kaXNwbGF5OiBzd2FwOyB9XG5cbi8qb2sqL1xuLyplbmQgb2sqL1xuLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlc1xuICogVmVyc2lvbiA2LjcuNFxuICogaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5yZXZlYWwsIC5yZXZlYWwudGlueSwgLnJldmVhbC5zbWFsbCwgLnJldmVhbC5sYXJnZSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG5cbi51cHBlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlICFpbXBvcnRhbnQ7IH1cblxuLmNhcGl0YWxpemUge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuXG4uZ3JheS1mb250LWNvbG9yIHtcbiAgY29sb3I6ICM3MTcxNzE7IH1cbiAgLmdyYXktZm9udC1jb2xvciBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAgIC5ncmF5LWZvbnQtY29sb3IgYTpob3ZlciB7XG4gICAgICBjb2xvcjogIzJjOGE4MjsgfVxuXG4ucHJpbWFyeS1mb250LWNvbG9yIHtcbiAgY29sb3I6ICMyYzhhODI7IH1cblxuLmZvbnQtc2Vjb25kYXJ5LWJvbGQge1xuICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLmZvbnQtc2VtaWJvbGQge1xuICBmb250LXdlaWdodDogNjAwOyB9XG5cbnAge1xuICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjsgfVxuXG5oMyB7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7IH1cblxuLmZ0LXN6LTE0IHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuICAuYXJ0aWNsZS1pdGVtLWNvbnRlbnQgLmZ0LXN6LTE0IHtcbiAgICBsaW5lLWhlaWdodDogMS45OyB9XG5cbi5mdC1zei0xNSB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG5cbi8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyB9XG5cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDsgfVxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyB9XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyOyB9XG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTsgfVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlOyB9XG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtOyB9XG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgbWFyZ2luOiAwOyB9XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgfVxuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDsgfVxuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDsgfVxuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTsgfVxuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZGlzcGxheTogdGFibGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgfVxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogMDsgfVxuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyB9XG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgZm9udDogaW5oZXJpdDsgfVxuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgfVxuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbltkYXRhLXdoYXRpbnRlbnQ9XCJtb3VzZVwiXSAqLCBbZGF0YS13aGF0aW50ZW50PVwibW91c2VcIl0gKjpmb2N1cyxcbltkYXRhLXdoYXRpbnRlbnQ9XCJ0b3VjaFwiXSAqLFxuW2RhdGEtd2hhdGludGVudD1cInRvdWNoXCJdICo6Zm9jdXMsXG5bZGF0YS13aGF0aW5wdXQ9XCJtb3VzZVwiXSAqLFxuW2RhdGEtd2hhdGlucHV0PVwibW91c2VcIl0gKjpmb2N1cyxcbltkYXRhLXdoYXRpbnB1dD1cInRvdWNoXCJdICosXG5bZGF0YS13aGF0aW5wdXQ9XCJ0b3VjaFwiXSAqOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG5bZHJhZ2dhYmxlPWZhbHNlXSB7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsgfVxuXG4uZm91bmRhdGlvbi1tcSB7XG4gIGZvbnQtZmFtaWx5OiBcInNtYWxsPTBlbSZtZWRpdW09NDBlbSZsYXJnZT02NGVtJnhsYXJnZT03NWVtJnh4bGFyZ2U9OTBlbVwiOyB9XG5cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBmb250LXNpemU6IDEwMCU7IH1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDsgfVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiAjZTlmMmVmO1xuICBmb250LWZhbWlseTogXCJTVElYIFR3byBUZXh0XCIsIEhlbHZldGljYSBOZXVlLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG5pbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljOyB9XG5cbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiA1MHB4O1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbnNlbGVjdCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5tYXBfY2FudmFzIGltZyxcbi5tYXBfY2FudmFzIGVtYmVkLFxuLm1hcF9jYW52YXMgb2JqZWN0LFxuLm1xYS1kaXNwbGF5IGltZyxcbi5tcWEtZGlzcGxheSBlbWJlZCxcbi5tcWEtZGlzcGxheSBvYmplY3Qge1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5idXR0b24ge1xuICBwYWRkaW5nOiAwO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY3Vyc29yOiBhdXRvOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSBidXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgfVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgfVxuXG4uaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLmlzLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5bdHlwZT0ndGV4dCddLCBbdHlwZT0ncGFzc3dvcmQnXSwgW3R5cGU9J2RhdGUnXSwgW3R5cGU9J2RhdGV0aW1lJ10sIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLCBbdHlwZT0nbW9udGgnXSwgW3R5cGU9J3dlZWsnXSwgW3R5cGU9J2VtYWlsJ10sIFt0eXBlPSdudW1iZXInXSwgW3R5cGU9J3NlYXJjaCddLCBbdHlwZT0ndGVsJ10sIFt0eXBlPSd0aW1lJ10sIFt0eXBlPSd1cmwnXSwgW3R5cGU9J2NvbG9yJ10sXG50ZXh0YXJlYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyLjEzNzVyZW07XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzk1OTI5MjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuICBhcHBlYXJhbmNlOiBub25lOyB9XG4gIFt0eXBlPSd0ZXh0J106Zm9jdXMsIFt0eXBlPSdwYXNzd29yZCddOmZvY3VzLCBbdHlwZT0nZGF0ZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUnXTpmb2N1cywgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106Zm9jdXMsIFt0eXBlPSdtb250aCddOmZvY3VzLCBbdHlwZT0nd2VlayddOmZvY3VzLCBbdHlwZT0nZW1haWwnXTpmb2N1cywgW3R5cGU9J251bWJlciddOmZvY3VzLCBbdHlwZT0nc2VhcmNoJ106Zm9jdXMsIFt0eXBlPSd0ZWwnXTpmb2N1cywgW3R5cGU9J3RpbWUnXTpmb2N1cywgW3R5cGU9J3VybCddOmZvY3VzLCBbdHlwZT0nY29sb3InXTpmb2N1cyxcbiAgdGV4dGFyZWE6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzU1NTU1NTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgMCA1cHggIzk1OTI5MjtcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuXG50ZXh0YXJlYSB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuICB0ZXh0YXJlYVtyb3dzXSB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG5cbmlucHV0OmRpc2FibGVkLCBpbnB1dFtyZWFkb25seV0sXG50ZXh0YXJlYTpkaXNhYmxlZCxcbnRleHRhcmVhW3JlYWRvbmx5XSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkY2RmZGY7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuW3R5cGU9J3N1Ym1pdCddLFxuW3R5cGU9J2J1dHRvbiddIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG5pbnB1dFt0eXBlPSdzZWFyY2gnXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjOTU5MjkyOyB9XG5cblt0eXBlPSdmaWxlJ10sXG5bdHlwZT0nY2hlY2tib3gnXSxcblt0eXBlPSdyYWRpbyddIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTsgfVxuXG5bdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbFtmb3JdLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsW2Zvcl0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5sYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxubGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG5cblt0eXBlPSdmaWxlJ10ge1xuICB3aWR0aDogMTAwJTsgfVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG4gIGxhYmVsLm1pZGRsZSB7XG4gICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIHBhZGRpbmc6IDAuNTYyNXJlbSAwOyB9XG5cbi5oZWxwLXRleHQge1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzAwMDAwMDsgfVxuXG4uaW5wdXQtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cbiAgLmlucHV0LWdyb3VwID4gOmZpcnN0LWNoaWxkLCAuaW5wdXQtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuICAuaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZCwgLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuXG4uaW5wdXQtZ3JvdXAtbGFiZWwsIC5pbnB1dC1ncm91cC1maWVsZCwgLmlucHV0LWdyb3VwLWJ1dHRvbiwgLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbi5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCB7XG4gIG1hcmdpbjogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uaW5wdXQtZ3JvdXAtbGFiZWwge1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5NTkyOTI7XG4gIGJhY2tncm91bmQ6ICNkY2RmZGY7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5pbnB1dC1ncm91cC1sYWJlbDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwOyB9XG4gIC5pbnB1dC1ncm91cC1sYWJlbDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItbGVmdDogMDsgfVxuXG4uaW5wdXQtZ3JvdXAtZmllbGQge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmbGV4OiAxIDEgMHB4O1xuICBtaW4td2lkdGg6IDA7IH1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDAgYXV0bzsgfVxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGEsXG4gIC5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4gIC5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDFyZW07IH1cblxuZmllbGRzZXQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDsgfVxuXG5sZWdlbmQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG4uZmllbGRzZXQge1xuICBtYXJnaW46IDEuMTI1cmVtIDA7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5NTkyOTI7IH1cbiAgLmZpZWxkc2V0IGxlZ2VuZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4xODc1cmVtO1xuICAgIHBhZGRpbmc6IDAgMC4xODc1cmVtOyB9XG5cbnNlbGVjdCB7XG4gIGhlaWdodDogMi4xMzc1cmVtO1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5NTkyOTI7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZlcnNpb249XCIxLjFcIiB3aWR0aD1cIjMyXCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDMyIDI0XCI+PHBvbHlnb24gcG9pbnRzPVwiMCwwIDMyLDAgMTYsMjRcIiBzdHlsZT1cImZpbGw6IHJnYiUyODg1LCA4NSwgODUlMjlcIj48L3BvbHlnb24+PC9zdmc+Jyk7XG4gIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgLTFyZW0gY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCkge1xuICAgIHNlbGVjdCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09XCIpOyB9IH1cbiAgc2VsZWN0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM1NTU1NTU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBib3gtc2hhZG93OiAwIDAgNXB4ICM5NTkyOTI7XG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cbiAgc2VsZWN0OmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGNkZmRmO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHNlbGVjdFttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gIHNlbGVjdDpub3QoW211bHRpcGxlXSkge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG5cbi5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpIHtcbiAgYm9yZGVyLWNvbG9yOiAjYmQzYzJmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhlY2VhOyB9XG4gIC5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICNiZDNjMmY7IH1cblxuLmlzLWludmFsaWQtbGFiZWwge1xuICBjb2xvcjogI2JkM2MyZjsgfVxuXG4uZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjYmQzYzJmOyB9XG4gIC5mb3JtLWVycm9yLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbmRpdixcbmRsLFxuZHQsXG5kZCxcbnVsLFxub2wsXG5saSxcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbnByZSxcbmZvcm0sXG5wLFxuYmxvY2txdW90ZSxcbnRoLFxudGQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxucCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnN0cm9uZyxcbmIge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuaDEsIC5oMSxcbmgyLCAuaDIsXG5oMywgLmgzLFxuaDQsIC5oNCxcbmg1LCAuaDUsXG5oNiwgLmg2IHtcbiAgZm9udC1mYW1pbHk6IFwiU1RJWCBUd28gVGV4dFwiLCBIZWx2ZXRpY2EgTmV1ZSwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG4gIGgxIHNtYWxsLCAuaDEgc21hbGwsXG4gIGgyIHNtYWxsLCAuaDIgc21hbGwsXG4gIGgzIHNtYWxsLCAuaDMgc21hbGwsXG4gIGg0IHNtYWxsLCAuaDQgc21hbGwsXG4gIGg1IHNtYWxsLCAuaDUgc21hbGwsXG4gIGg2IHNtYWxsLCAuaDYgc21hbGwge1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIGNvbG9yOiAjOTU5MjkyOyB9XG5cbmgxLCAuaDEge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oMiwgLmgyIHtcbiAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbmgzLCAuaDMge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNCwgLmg0IHtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNSwgLmg1IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDYsIC5oNiB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBoMSwgLmgxIHtcbiAgICBmb250LXNpemU6IDIuMzc1cmVtOyB9XG4gIGgyLCAuaDIge1xuICAgIGZvbnQtc2l6ZTogMnJlbTsgfVxuICBoMywgLmgzIHtcbiAgICBmb250LXNpemU6IDEuMDYyNXJlbTsgfVxuICBoNCwgLmg0IHtcbiAgICBmb250LXNpemU6IDEuMDYyNXJlbTsgfVxuICBoNSwgLmg1IHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgaDYsIC5oNiB7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9IH1cblxuYSB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgYTpob3ZlciwgYTpmb2N1cyB7XG4gICAgY29sb3I6ICMyYzhhODI7IH1cbiAgYSBpbWcge1xuICAgIGJvcmRlcjogMDsgfVxuXG5ociB7XG4gIGNsZWFyOiBib3RoO1xuICBtYXgtd2lkdGg6IDg3LjVyZW07XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAxLjI1cmVtIGF1dG87XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5NTkyOTI7XG4gIGJvcmRlci1sZWZ0OiAwOyB9XG5cbnVsLFxub2wsXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxubGkge1xuICBmb250LXNpemU6IGluaGVyaXQ7IH1cblxudWwge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjOyB9XG5cbm9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07IH1cblxudWwgdWwsIG9sIHVsLCB1bCBvbCwgb2wgb2wge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgZGwgZHQge1xuICAgIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41NjI1cmVtIDEuMjVyZW0gMCAxLjE4NzVyZW07XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzk1OTI5MjsgfVxuICBibG9ja3F1b3RlLCBibG9ja3F1b3RlIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgY29sb3I6ICM1NTU1NTU7IH1cblxuYWJiciwgYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICMwMDAwMDA7XG4gIGN1cnNvcjogaGVscDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDsgfVxuXG5rYmQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMjVyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RjZGZkZjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi5zdWJoZWFkZXIge1xuICBtYXJnaW4tdG9wOiAwLjJyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY29sb3I6ICM1NTU1NTU7IH1cblxuLmxlYWQge1xuICBmb250LXNpemU6IDEyNSU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxuLnN0YXQge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgcCArIC5zdGF0IHtcbiAgICBtYXJnaW4tdG9wOiAtMXJlbTsgfVxuXG51bC5uby1idWxsZXQsIG9sLm5vLWJ1bGxldCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbmNpdGUsIC5jaXRlLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjNTU1NTU1O1xuICBmb250LXNpemU6IDAuODEyNXJlbTsgfVxuICBjaXRlOmJlZm9yZSwgLmNpdGUtYmxvY2s6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIuKAlCBcIjsgfVxuXG5jb2RlLCAuY29kZS1pbmxpbmUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTU5MjkyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGNkZmRmO1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMzEyNXJlbSAwLjA2MjVyZW07IH1cblxuLmNvZGUtYmxvY2sge1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTU5MjkyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGNkZmRmO1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2hpdGUtc3BhY2U6IHByZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG5cbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi50ZXh0LWp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5tZWRpdW0tdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLm1lZGl1bS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZWRpdW0tdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLmxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLnhsYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAueGxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnhsYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG4uc2hvdy1mb3ItcHJpbnQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHByaW50IHtcbiAgKiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICBjb2xvci1hZGp1c3Q6IGVjb25vbXk7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIC5oaWRlLWZvci1wcmludCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIHRhYmxlLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRoZWFkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0Ym9keS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdHIuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgdGguc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICBhLFxuICBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIGFbaHJlZl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiOyB9XG4gIC5pciBhOmFmdGVyLFxuICBhW2hyZWZePSdqYXZhc2NyaXB0OiddOmFmdGVyLFxuICBhW2hyZWZePScjJ106YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnOyB9XG4gIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7IH1cbiAgcHJlLFxuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNTU1NTU1O1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuICB0aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG4gIHRyLFxuICBpbWcge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gIEBwYWdlIHtcbiAgICBtYXJnaW46IDAuNWNtOyB9XG4gIHAsXG4gIGgyLFxuICBoMyB7XG4gICAgb3JwaGFuczogMztcbiAgICB3aWRvd3M6IDM7IH1cbiAgaDIsXG4gIGgzIHtcbiAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuICAucHJpbnQtYnJlYWstaW5zaWRlIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bzsgfSB9XG5cbi5ncmlkLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXgtd2lkdGg6IDg3LjVyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1jb250YWluZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMS4yODEyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS4yODEyNXJlbTsgfSB9XG4gIC5ncmlkLWNvbnRhaW5lci5mbHVpZCB7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ncmlkLWNvbnRhaW5lci5mbHVpZCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuMjgxMjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS4yODEyNXJlbTsgfSB9XG4gIC5ncmlkLWNvbnRhaW5lci5mdWxsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi5ncmlkLXgge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG5cbi5jZWxsIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIG1pbi1oZWlnaHQ6IDA7XG4gIG1pbi13aWR0aDogMDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmNlbGwuYXV0byB7XG4gICAgZmxleDogMSAxIDA7IH1cbiAgLmNlbGwuc2hyaW5rIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuXG4uZ3JpZC14ID4gLmF1dG8ge1xuICB3aWR0aDogYXV0bzsgfVxuXG4uZ3JpZC14ID4gLnNocmluayB7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtc2hyaW5rLCAuZ3JpZC14ID4gLnNtYWxsLWZ1bGwsIC5ncmlkLXggPiAuc21hbGwtMSwgLmdyaWQteCA+IC5zbWFsbC0yLCAuZ3JpZC14ID4gLnNtYWxsLTMsIC5ncmlkLXggPiAuc21hbGwtNCwgLmdyaWQteCA+IC5zbWFsbC01LCAuZ3JpZC14ID4gLnNtYWxsLTYsIC5ncmlkLXggPiAuc21hbGwtNywgLmdyaWQteCA+IC5zbWFsbC04LCAuZ3JpZC14ID4gLnNtYWxsLTksIC5ncmlkLXggPiAuc21hbGwtMTAsIC5ncmlkLXggPiAuc21hbGwtMTEsIC5ncmlkLXggPiAuc21hbGwtMTIge1xuICBmbGV4LWJhc2lzOiBhdXRvOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXggPiAubWVkaXVtLXNocmluaywgLmdyaWQteCA+IC5tZWRpdW0tZnVsbCwgLmdyaWQteCA+IC5tZWRpdW0tMSwgLmdyaWQteCA+IC5tZWRpdW0tMiwgLmdyaWQteCA+IC5tZWRpdW0tMywgLmdyaWQteCA+IC5tZWRpdW0tNCwgLmdyaWQteCA+IC5tZWRpdW0tNSwgLmdyaWQteCA+IC5tZWRpdW0tNiwgLmdyaWQteCA+IC5tZWRpdW0tNywgLmdyaWQteCA+IC5tZWRpdW0tOCwgLmdyaWQteCA+IC5tZWRpdW0tOSwgLmdyaWQteCA+IC5tZWRpdW0tMTAsIC5ncmlkLXggPiAubWVkaXVtLTExLCAuZ3JpZC14ID4gLm1lZGl1bS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLXggPiAubGFyZ2Utc2hyaW5rLCAuZ3JpZC14ID4gLmxhcmdlLWZ1bGwsIC5ncmlkLXggPiAubGFyZ2UtMSwgLmdyaWQteCA+IC5sYXJnZS0yLCAuZ3JpZC14ID4gLmxhcmdlLTMsIC5ncmlkLXggPiAubGFyZ2UtNCwgLmdyaWQteCA+IC5sYXJnZS01LCAuZ3JpZC14ID4gLmxhcmdlLTYsIC5ncmlkLXggPiAubGFyZ2UtNywgLmdyaWQteCA+IC5sYXJnZS04LCAuZ3JpZC14ID4gLmxhcmdlLTksIC5ncmlkLXggPiAubGFyZ2UtMTAsIC5ncmlkLXggPiAubGFyZ2UtMTEsIC5ncmlkLXggPiAubGFyZ2UtMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5ncmlkLXggPiAueGxhcmdlLXNocmluaywgLmdyaWQteCA+IC54bGFyZ2UtZnVsbCwgLmdyaWQteCA+IC54bGFyZ2UtMSwgLmdyaWQteCA+IC54bGFyZ2UtMiwgLmdyaWQteCA+IC54bGFyZ2UtMywgLmdyaWQteCA+IC54bGFyZ2UtNCwgLmdyaWQteCA+IC54bGFyZ2UtNSwgLmdyaWQteCA+IC54bGFyZ2UtNiwgLmdyaWQteCA+IC54bGFyZ2UtNywgLmdyaWQteCA+IC54bGFyZ2UtOCwgLmdyaWQteCA+IC54bGFyZ2UtOSwgLmdyaWQteCA+IC54bGFyZ2UtMTAsIC5ncmlkLXggPiAueGxhcmdlLTExLCAuZ3JpZC14ID4gLnhsYXJnZS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG5cbi5ncmlkLXggPiAuc21hbGwtMSwgLmdyaWQteCA+IC5zbWFsbC0yLCAuZ3JpZC14ID4gLnNtYWxsLTMsIC5ncmlkLXggPiAuc21hbGwtNCwgLmdyaWQteCA+IC5zbWFsbC01LCAuZ3JpZC14ID4gLnNtYWxsLTYsIC5ncmlkLXggPiAuc21hbGwtNywgLmdyaWQteCA+IC5zbWFsbC04LCAuZ3JpZC14ID4gLnNtYWxsLTksIC5ncmlkLXggPiAuc21hbGwtMTAsIC5ncmlkLXggPiAuc21hbGwtMTEsIC5ncmlkLXggPiAuc21hbGwtMTIge1xuICBmbGV4OiAwIDAgYXV0bzsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEge1xuICB3aWR0aDogOC4zMzMzMyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0yIHtcbiAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTMge1xuICB3aWR0aDogMjUlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtNCB7XG4gIHdpZHRoOiAzMy4zMzMzMyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC01IHtcbiAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTYge1xuICB3aWR0aDogNTAlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtNyB7XG4gIHdpZHRoOiA1OC4zMzMzMyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC04IHtcbiAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTkge1xuICB3aWR0aDogNzUlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMTAge1xuICB3aWR0aDogODMuMzMzMzMlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMTEge1xuICB3aWR0aDogOTEuNjY2NjclOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMTIge1xuICB3aWR0aDogMTAwJTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC14ID4gLm1lZGl1bS1hdXRvIHtcbiAgICBmbGV4OiAxIDEgMDtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS1zaHJpbmssIC5ncmlkLXggPiAubWVkaXVtLTEsIC5ncmlkLXggPiAubWVkaXVtLTIsIC5ncmlkLXggPiAubWVkaXVtLTMsIC5ncmlkLXggPiAubWVkaXVtLTQsIC5ncmlkLXggPiAubWVkaXVtLTUsIC5ncmlkLXggPiAubWVkaXVtLTYsIC5ncmlkLXggPiAubWVkaXVtLTcsIC5ncmlkLXggPiAubWVkaXVtLTgsIC5ncmlkLXggPiAubWVkaXVtLTksIC5ncmlkLXggPiAubWVkaXVtLTEwLCAuZ3JpZC14ID4gLm1lZGl1bS0xMSwgLmdyaWQteCA+IC5tZWRpdW0tMTIge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLXNocmluayB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC14ID4gLmxhcmdlLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwO1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubGFyZ2Utc2hyaW5rLCAuZ3JpZC14ID4gLmxhcmdlLTEsIC5ncmlkLXggPiAubGFyZ2UtMiwgLmdyaWQteCA+IC5sYXJnZS0zLCAuZ3JpZC14ID4gLmxhcmdlLTQsIC5ncmlkLXggPiAubGFyZ2UtNSwgLmdyaWQteCA+IC5sYXJnZS02LCAuZ3JpZC14ID4gLmxhcmdlLTcsIC5ncmlkLXggPiAubGFyZ2UtOCwgLmdyaWQteCA+IC5sYXJnZS05LCAuZ3JpZC14ID4gLmxhcmdlLTEwLCAuZ3JpZC14ID4gLmxhcmdlLTExLCAuZ3JpZC14ID4gLmxhcmdlLTEyIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLXNocmluayB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5ncmlkLXggPiAueGxhcmdlLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwO1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLXNocmluaywgLmdyaWQteCA+IC54bGFyZ2UtMSwgLmdyaWQteCA+IC54bGFyZ2UtMiwgLmdyaWQteCA+IC54bGFyZ2UtMywgLmdyaWQteCA+IC54bGFyZ2UtNCwgLmdyaWQteCA+IC54bGFyZ2UtNSwgLmdyaWQteCA+IC54bGFyZ2UtNiwgLmdyaWQteCA+IC54bGFyZ2UtNywgLmdyaWQteCA+IC54bGFyZ2UtOCwgLmdyaWQteCA+IC54bGFyZ2UtOSwgLmdyaWQteCA+IC54bGFyZ2UtMTAsIC5ncmlkLXggPiAueGxhcmdlLTExLCAuZ3JpZC14ID4gLnhsYXJnZS0xMiB7XG4gICAgZmxleDogMCAwIGF1dG87IH1cbiAgLmdyaWQteCA+IC54bGFyZ2Utc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5ncmlkLW1hcmdpbi14Om5vdCguZ3JpZC14KSA+IC5jZWxsIHtcbiAgd2lkdGg6IGF1dG87IH1cblxuLmdyaWQtbWFyZ2luLXk6bm90KC5ncmlkLXkpID4gLmNlbGwge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLmdyaWQtbWFyZ2luLXgge1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMS4yODEyNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogLTEuMjgxMjVyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5jZWxsIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyLjU2MjVyZW0pO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEuMjgxMjVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuMjgxMjVyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5hdXRvIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMi41NjI1cmVtKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMi41NjI1cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTMge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTYge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTkge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtMTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIuNTYyNXJlbSk7IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXggLmdyaWQtcGFkZGluZy14IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXggLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTEuMjgxMjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTEuMjgxMjVyZW07IH0gfVxuXG4uZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+IC5ncmlkLXBhZGRpbmcteCB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtY29udGFpbmVyOm5vdCguZnVsbCkgPiAuZ3JpZC1wYWRkaW5nLXgge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMS4yODEyNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMS4yODEyNXJlbTsgfSB9XG5cbi5ncmlkLXBhZGRpbmcteCA+IC5jZWxsIHtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXggPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI4MTI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjI4MTI1cmVtOyB9IH1cblxuLnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5zbWFsbC11cC0yID4gLmNlbGwge1xuICB3aWR0aDogNTAlOyB9XG5cbi5zbWFsbC11cC0zID4gLmNlbGwge1xuICB3aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC11cC00ID4gLmNlbGwge1xuICB3aWR0aDogMjUlOyB9XG5cbi5zbWFsbC11cC01ID4gLmNlbGwge1xuICB3aWR0aDogMjAlOyB9XG5cbi5zbWFsbC11cC02ID4gLmNlbGwge1xuICB3aWR0aDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC11cC03ID4gLmNlbGwge1xuICB3aWR0aDogMTQuMjg1NzElOyB9XG5cbi5zbWFsbC11cC04ID4gLmNlbGwge1xuICB3aWR0aDogMTIuNSU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5tZWRpdW0tdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjAlOyB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTQuMjg1NzElOyB9XG4gIC5tZWRpdW0tdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubGFyZ2UtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjAlOyB9XG4gIC5sYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAubGFyZ2UtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAueGxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueGxhcmdlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueGxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueGxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDIwJTsgfVxuICAueGxhcmdlLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAueGxhcmdlLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEyLjUlOyB9IH1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMSA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTIgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTQgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTUgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDIwJSAtIDEuMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTYgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTcgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDEuMjVyZW0pOyB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTggPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDEyLjUlIC0gMS4yNXJlbSk7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMi41NjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIuNTYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMi41NjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDIuNTYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMi41NjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMi41NjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMi41NjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAyLjU2MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMi41NjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAyLjU2MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMi41NjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDIuNTYyNXJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyLjU2MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMi41NjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAyLjU2MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMi41NjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAyLjU2MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAyLjU2MjVyZW0pOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMi41NjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAyLjU2MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMi41NjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAyLjU2MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMi41NjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDIuNTYyNXJlbSk7IH0gfVxuXG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+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+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG4uc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogMCU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDEuMjVyZW0gLyAyKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDEuMjVyZW0gLyAyKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMS4yNXJlbSAvIDIpOyB9XG5cbi5zbWFsbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAxLjI1cmVtIC8gMik7IH1cblxuLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDEuMjVyZW0gLyAyKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTUge1xuICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjclICsgMS4yNXJlbSAvIDIpOyB9XG5cbi5zbWFsbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAxLjI1cmVtIC8gMik7IH1cblxuLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDEuMjVyZW0gLyAyKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjclICsgMS4yNXJlbSAvIDIpOyB9XG5cbi5zbWFsbC1vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiA3NSU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAxLjI1cmVtIC8gMik7IH1cblxuLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMS4yNXJlbSAvIDIpOyB9XG5cbi5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSArIDEuMjVyZW0gLyAyKTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDIuNTYyNXJlbSAvIDIpOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMi41NjI1cmVtIC8gMik7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY3JSArIDIuNTYyNXJlbSAvIDIpOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMlICsgMi41NjI1cmVtIC8gMik7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY3JSArIDIuNTYyNXJlbSAvIDIpOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAubWVkaXVtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMlICsgMi41NjI1cmVtIC8gMik7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY3JSArIDIuNTYyNXJlbSAvIDIpOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAubWVkaXVtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAubWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NyUgKyAyLjU2MjVyZW0gLyAyKTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDIuNTYyNXJlbSAvIDIpOyB9XG4gIC5sYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDIuNTYyNXJlbSAvIDIpOyB9XG4gIC5sYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMi41NjI1cmVtIC8gMik7IH1cbiAgLmxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDIuNTYyNXJlbSAvIDIpOyB9XG4gIC5sYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjclICsgMi41NjI1cmVtIC8gMik7IH1cbiAgLmxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDIuNTYyNXJlbSAvIDIpOyB9XG4gIC5sYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjclICsgMi41NjI1cmVtIC8gMik7IH1cbiAgLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMi41NjI1cmVtIC8gMik7IH1cbiAgLmxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSArIDIuNTYyNXJlbSAvIDIpOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDIuNTYyNXJlbSAvIDIpOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMi41NjI1cmVtIC8gMik7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY3JSArIDIuNTYyNXJlbSAvIDIpOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAueGxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMlICsgMi41NjI1cmVtIC8gMik7IH1cbiAgLnhsYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY3JSArIDIuNTYyNXJlbSAvIDIpOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAueGxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMlICsgMi41NjI1cmVtIC8gMik7IH1cbiAgLnhsYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY3JSArIDIuNTYyNXJlbSAvIDIpOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAueGxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAueGxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NyUgKyAyLjU2MjVyZW0gLyAyKTsgfSB9XG5cbi5ncmlkLXkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7IH1cbiAgLmdyaWQteSA+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+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IDc1JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTEwIHtcbiAgICBoZWlnaHQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTExIHtcbiAgICBoZWlnaHQ6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTEyIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC15ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIGZsZXg6IDEgMSAwO1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tc2hyaW5rLCAuZ3JpZC15ID4gLm1lZGl1bS0xLCAuZ3JpZC15ID4gLm1lZGl1bS0yLCAuZ3JpZC15ID4gLm1lZGl1bS0zLCAuZ3JpZC15ID4gLm1lZGl1bS00LCAuZ3JpZC15ID4gLm1lZGl1bS01LCAuZ3JpZC15ID4gLm1lZGl1bS02LCAuZ3JpZC15ID4gLm1lZGl1bS03LCAuZ3JpZC15ID4gLm1lZGl1bS04LCAuZ3JpZC15ID4gLm1lZGl1bS05LCAuZ3JpZC15ID4gLm1lZGl1bS0xMCwgLmdyaWQteSA+IC5tZWRpdW0tMTEsIC5ncmlkLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTEge1xuICAgICAgaGVpZ2h0OiA4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTIge1xuICAgICAgaGVpZ2h0OiAxNi42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0zIHtcbiAgICAgIGhlaWdodDogMjUlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tNCB7XG4gICAgICBoZWlnaHQ6IDMzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTUge1xuICAgICAgaGVpZ2h0OiA0MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS02IHtcbiAgICAgIGhlaWdodDogNTAlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tNyB7XG4gICAgICBoZWlnaHQ6IDU4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTgge1xuICAgICAgaGVpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS05IHtcbiAgICAgIGhlaWdodDogNzUlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMTAge1xuICAgICAgaGVpZ2h0OiA4My4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0xMSB7XG4gICAgICBoZWlnaHQ6IDkxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGhlaWdodDogMTAwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQteSA+IC5sYXJnZS1hdXRvIHtcbiAgICAgIGZsZXg6IDEgMSAwO1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXkgPiAubGFyZ2UtMSwgLmdyaWQteSA+IC5sYXJnZS0yLCAuZ3JpZC15ID4gLmxhcmdlLTMsIC5ncmlkLXkgPiAubGFyZ2UtNCwgLmdyaWQteSA+IC5sYXJnZS01LCAuZ3JpZC15ID4gLmxhcmdlLTYsIC5ncmlkLXkgPiAubGFyZ2UtNywgLmdyaWQteSA+IC5sYXJnZS04LCAuZ3JpZC15ID4gLmxhcmdlLTksIC5ncmlkLXkgPiAubGFyZ2UtMTAsIC5ncmlkLXkgPiAubGFyZ2UtMTEsIC5ncmlkLXkgPiAubGFyZ2UtMTIge1xuICAgICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiA4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IDE2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IDI1JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IDMzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IDQxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IDUwJTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IDU4LjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IDY2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IDc1JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiA4My4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogOTEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtYXV0byB7XG4gICAgICBmbGV4OiAxIDEgMDtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLXNocmluaywgLmdyaWQteSA+IC54bGFyZ2UtMSwgLmdyaWQteSA+IC54bGFyZ2UtMiwgLmdyaWQteSA+IC54bGFyZ2UtMywgLmdyaWQteSA+IC54bGFyZ2UtNCwgLmdyaWQteSA+IC54bGFyZ2UtNSwgLmdyaWQteSA+IC54bGFyZ2UtNiwgLmdyaWQteSA+IC54bGFyZ2UtNywgLmdyaWQteSA+IC54bGFyZ2UtOCwgLmdyaWQteSA+IC54bGFyZ2UtOSwgLmdyaWQteSA+IC54bGFyZ2UtMTAsIC5ncmlkLXkgPiAueGxhcmdlLTExLCAuZ3JpZC15ID4gLnhsYXJnZS0xMiB7XG4gICAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS0xIHtcbiAgICAgIGhlaWdodDogOC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS0yIHtcbiAgICAgIGhlaWdodDogMTYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IDI1JTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS01IHtcbiAgICAgIGhlaWdodDogNDEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IDUwJTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS04IHtcbiAgICAgIGhlaWdodDogNjYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IDc1JTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogODMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiA5MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXkgLmdyaWQtcGFkZGluZy15IHtcbiAgbWFyZ2luLXRvcDogLTAuNjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkgLmdyaWQtcGFkZGluZy15IHtcbiAgICAgIG1hcmdpbi10b3A6IC0xLjI4MTI1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTEuMjgxMjVyZW07IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXkgPiAuY2VsbCB7XG4gIHBhZGRpbmctdG9wOiAwLjYyNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy15ID4gLmNlbGwge1xuICAgICAgcGFkZGluZy10b3A6IDEuMjgxMjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMS4yODEyNXJlbTsgfSB9XG5cbi5ncmlkLW1hcmdpbi15IHtcbiAgbWFyZ2luLXRvcDogLTAuNjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMS4yODEyNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0xLjI4MTI1cmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuY2VsbCB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tdG9wOiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyLjU2MjVyZW0pO1xuICAgICAgbWFyZ2luLXRvcDogMS4yODEyNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuMjgxMjVyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMi41NjI1cmVtKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyLjU2MjVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyLjU2MjVyZW0pOyB9IH1cblxuLmdyaWQtZnJhbWUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMHZ3OyB9XG5cbi5jZWxsIC5ncmlkLWZyYW1lIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmNlbGwtYmxvY2sge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cblxuLmNlbGwtYmxvY2steSB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cblxuLmNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAuY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgd2lkdGg6IDEwMHZ3OyB9XG4gIC5jZWxsIC5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgICAubWVkaXVtLWNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLm1lZGl1bS1jZWxsLWJsb2NrLXkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7IH1cbiAgLmNlbGwgLmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cbiAgLmxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgIC5sYXJnZS1jZWxsLWJsb2NrLWNvbnRhaW5lciA+IC5ncmlkLXgge1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrLXkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7IH1cbiAgLmNlbGwgLnhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAueGxhcmdlLWNlbGwtYmxvY2sge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuICAueGxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgIC54bGFyZ2UtY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAueGxhcmdlLWNlbGwtYmxvY2steSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9IH1cblxuLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGhlaWdodDogMTAwdmg7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXkubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgd2lkdGg6IGF1dG87IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC15LmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgd2lkdGg6IGF1dG87IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5ncmlkLXkueGxhcmdlLWdyaWQtZnJhbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgd2lkdGg6IGF1dG87IH0gfVxuXG4uY2VsbCAuZ3JpZC15LmdyaWQtZnJhbWUge1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmNlbGwgLmdyaWQteS5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNlbGwgLmdyaWQteS5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5jZWxsIC5ncmlkLXkueGxhcmdlLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbi5ncmlkLW1hcmdpbi15IHtcbiAgbWFyZ2luLXRvcDogLTAuNjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMS4yODEyNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0xLjI4MTI1cmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuY2VsbCB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tdG9wOiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyLjU2MjVyZW0pO1xuICAgICAgbWFyZ2luLXRvcDogMS4yODEyNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuMjgxMjVyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMi41NjI1cmVtKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyLjU2MjVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyLjU2MjVyZW0pOyB9IH1cblxuLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gIGhlaWdodDogY2FsYygxMDB2aCArIDEuMjVyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAyLjU2MjVyZW0pOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCArIDIuNTYyNXJlbSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAyLjU2MjVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDIuNTYyNXJlbSk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC1tYXJnaW4teS5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAyLjU2MjVyZW0pOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuZ3JpZC1tYXJnaW4teS54bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMi41NjI1cmVtKTsgfSB9XG5cbi5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMC44NWVtIDJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuYnV0dG9uIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5idXR0b24udGlueSB7XG4gICAgZm9udC1zaXplOiAwLjZyZW07IH1cbiAgLmJ1dHRvbi5zbWFsbCB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gIC5idXR0b24ubGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICAuYnV0dG9uLmV4cGFuZGVkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmJ1dHRvbiwgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJjOGE4MjtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjU3NTZmO1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5idXR0b24ucHJpbWFyeSwgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkLCAuYnV0dG9uLnByaW1hcnlbZGlzYWJsZWRdLCAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24ucHJpbWFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJjOGE4MjtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYnV0dG9uLnByaW1hcnk6aG92ZXIsIC5idXR0b24ucHJpbWFyeTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIzNmU2ODtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYnV0dG9uLnNlY29uZGFyeSwgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRkOTk4YTtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzZTdhNmU7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmJ1dHRvbi5zdWNjZXNzLCAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQsIC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF0sIC5idXR0b24uc3VjY2Vzcy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLnN1Y2Nlc3NbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5idXR0b24uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5zdWNjZXNzOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjJiYjViO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5idXR0b24ud2FybmluZywgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLndhcm5pbmdbZGlzYWJsZWRdLCAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24ud2FybmluZy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYnV0dG9uLndhcm5pbmc6aG92ZXIsIC5idXR0b24ud2FybmluZzpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjOGIwMDtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYnV0dG9uLmFsZXJ0LCAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXSwgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uYWxlcnQuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uYWxlcnRbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYmQzYzJmO1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5idXR0b24uYWxlcnQ6aG92ZXIsIC5idXR0b24uYWxlcnQ6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5NzMwMjY7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmJ1dHRvbi5ob2xsb3csIC5idXR0b24uaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cywgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmJ1dHRvbi5ob2xsb3csIC5idXR0b24uaG9sbG93LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMyYzhhODI7XG4gICAgY29sb3I6ICMyYzhhODI7IH1cbiAgLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICMxNjQ1NDE7XG4gICAgY29sb3I6ICMxNjQ1NDE7IH1cbiAgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeSwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeVtkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnByaW1hcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzJjOGE4MjtcbiAgICBjb2xvcjogIzJjOGE4MjsgfVxuICAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICMxNjQ1NDE7XG4gICAgY29sb3I6ICMxNjQ1NDE7IH1cbiAgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5LCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeVtkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnNlY29uZGFyeS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNGQ5OThhO1xuICAgIGNvbG9yOiAjNGQ5OThhOyB9XG4gIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICMyNzRkNDU7XG4gICAgY29sb3I6ICMyNzRkNDU7IH1cbiAgLmJ1dHRvbi5ob2xsb3cuc3VjY2VzcywgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzcy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzc1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnN1Y2Nlc3MuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3NbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICMxNTc1Mzk7XG4gICAgY29sb3I6ICMxNTc1Mzk7IH1cbiAgLmJ1dHRvbi5ob2xsb3cud2FybmluZywgLmJ1dHRvbi5ob2xsb3cud2FybmluZy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cud2FybmluZ1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93Lndhcm5pbmcuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93Lndhcm5pbmdbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgICBjb2xvcjogI2ZmYWUwMDsgfVxuICAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICM4MDU3MDA7XG4gICAgY29sb3I6ICM4MDU3MDA7IH1cbiAgLmJ1dHRvbi5ob2xsb3cuYWxlcnQsIC5idXR0b24uaG9sbG93LmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5hbGVydFtkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LmFsZXJ0LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydFtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LmFsZXJ0LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5hbGVydFtkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNiZDNjMmY7XG4gICAgY29sb3I6ICNiZDNjMmY7IH1cbiAgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXIsIC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICM1ZjFlMTg7XG4gICAgY29sb3I6ICM1ZjFlMTg7IH1cbiAgLmJ1dHRvbi5jbGVhciwgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpmb2N1cywgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuYnV0dG9uLmNsZWFyLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBjb2xvcjogIzJjOGE4MjsgfVxuICAuYnV0dG9uLmNsZWFyOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmZvY3VzIHtcbiAgICBjb2xvcjogIzE2NDU0MTsgfVxuICAuYnV0dG9uLmNsZWFyLnByaW1hcnksIC5idXR0b24uY2xlYXIucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIucHJpbWFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICAgIGNvbG9yOiAjMmM4YTgyOyB9XG4gIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzIHtcbiAgICBjb2xvcjogIzE2NDU0MTsgfVxuICAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgY29sb3I6ICM0ZDk5OGE7IH1cbiAgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICBjb2xvcjogIzI3NGQ0NTsgfVxuICAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3MsIC5idXR0b24uY2xlYXIuc3VjY2Vzcy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3NbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3MuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuc3VjY2Vzc1tkaXNhYmxlZF06Zm9jdXMge1xuICAgIGNvbG9yOiAjM2FkYjc2OyB9XG4gIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzIHtcbiAgICBjb2xvcjogIzE1NzUzOTsgfVxuICAuYnV0dG9uLmNsZWFyLndhcm5pbmcsIC5idXR0b24uY2xlYXIud2FybmluZy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmdbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIud2FybmluZ1tkaXNhYmxlZF06Zm9jdXMge1xuICAgIGNvbG9yOiAjZmZhZTAwOyB9XG4gIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlciwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzIHtcbiAgICBjb2xvcjogIzgwNTcwMDsgfVxuICAuYnV0dG9uLmNsZWFyLmFsZXJ0LCAuYnV0dG9uLmNsZWFyLmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydC5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5hbGVydFtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIuYWxlcnQuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuYWxlcnRbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBjb2xvcjogI2JkM2MyZjsgfVxuICAuYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzIHtcbiAgICBjb2xvcjogIzVmMWUxODsgfVxuICAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uW2Rpc2FibGVkXSB7XG4gICAgb3BhY2l0eTogMC4yNTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gIC5idXR0b24uZHJvcGRvd246OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDAuNGVtO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmZmZmIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6IDJlbTsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdzo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXI6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjMmM4YTgyOyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LnByaW1hcnk6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLnByaW1hcnk6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjMmM4YTgyOyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LnNlY29uZGFyeTo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuc2Vjb25kYXJ5OjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzRkOTk4YTsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5zdWNjZXNzOjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5zdWNjZXNzOjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzNhZGI3NjsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy53YXJuaW5nOjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci53YXJuaW5nOjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmYWUwMDsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5hbGVydDo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuYWxlcnQ6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjYmQzYzJmOyB9XG4gIC5idXR0b24uYXJyb3ctb25seTo6YWZ0ZXIge1xuICAgIHRvcDogLTAuMWVtO1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbmEuYnV0dG9uOmhvdmVyLCBhLmJ1dHRvbjpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uY2xvc2UtYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbiAgY29sb3I6ICM1NTU1NTU7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmNsb3NlLWJ1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuICAuY2xvc2UtYnV0dG9uOmhvdmVyLCAuY2xvc2UtYnV0dG9uOmZvY3VzIHtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuY2xvc2UtYnV0dG9uLnNtYWxsIHtcbiAgICByaWdodDogMC42NnJlbTtcbiAgICB0b3A6IDAuMzNlbTtcbiAgICBmb250LXNpemU6IDEuNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5jbG9zZS1idXR0b24sIC5jbG9zZS1idXR0b24ubWVkaXVtIHtcbiAgICByaWdodDogMXJlbTtcbiAgICB0b3A6IDAuNXJlbTtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuXG4ubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYmFja2dyb3VuZDogIzJjOGE4MjtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmxhYmVsLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICMyYzhhODI7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmxhYmVsLnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZDogIzRkOTk4YTtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAubGFiZWwuc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZDogIzNhZGI3NjtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAubGFiZWwud2FybmluZyB7XG4gICAgYmFja2dyb3VuZDogI2ZmYWUwMDtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAubGFiZWwuYWxlcnQge1xuICAgIGJhY2tncm91bmQ6ICNiZDNjMmY7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cblxuLnByb2dyZXNzIHtcbiAgaGVpZ2h0OiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTU5MjkyOyB9XG4gIC5wcm9ncmVzcy5wcmltYXJ5IC5wcm9ncmVzcy1tZXRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJjOGE4MjsgfVxuICAucHJvZ3Jlc3Muc2Vjb25kYXJ5IC5wcm9ncmVzcy1tZXRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRkOTk4YTsgfVxuICAucHJvZ3Jlc3Muc3VjY2VzcyAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7IH1cbiAgLnByb2dyZXNzLndhcm5pbmcgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwOyB9XG4gIC5wcm9ncmVzcy5hbGVydCAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiZDNjMmY7IH1cblxuLnByb2dyZXNzLW1ldGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyYzhhODI7IH1cblxuLnByb2dyZXNzLW1ldGVyLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgdGhlYWQsXG4gIHRib2R5LFxuICB0Zm9vdCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2YyZjJmMjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gIGNhcHRpb24ge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogI2Y5ZjlmOTtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogI2YyZjJmMjtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICB0aGVhZCB0cixcbiAgdGZvb3QgdHIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIHRoZWFkIHRoLFxuICB0aGVhZCB0ZCxcbiAgdGZvb3QgdGgsXG4gIHRmb290IHRkIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICB0Ym9keSB0aCxcbiAgdGJvZHkgdGQge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTsgfVxuICB0Ym9keSB0cjpudGgtY2hpbGQoZXZlbikge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjsgfVxuICB0YWJsZS51bnN0cmlwZWQgdGJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgICB0YWJsZS51bnN0cmlwZWQgdGJvZHkgdHIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMmYyZjI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIHRhYmxlLnN0YWNrIHRoZWFkIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHRhYmxlLnN0YWNrIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHRhYmxlLnN0YWNrIHRyLFxuICB0YWJsZS5zdGFjayB0aCxcbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIHRhYmxlLnN0YWNrIHRkIHtcbiAgICBib3JkZXItdG9wOiAwOyB9IH1cblxudGFibGUuc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvOyB9XG5cbnRhYmxlLmhvdmVyIHRoZWFkIHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDsgfVxuXG50YWJsZS5ob3ZlciB0Zm9vdCB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7IH1cblxudGFibGUuaG92ZXIgdGJvZHkgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhOyB9XG5cbnRhYmxlLmhvdmVyOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7IH1cblxuLnRhYmxlLXNjcm9sbCB7XG4gIG92ZXJmbG93LXg6IGF1dG87IH1cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6IDIuMWVtO1xuICBwYWRkaW5nOiAwLjNlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBmb250LXNpemU6IDAuNnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjMmM4YTgyO1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYmFkZ2UucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogIzJjOGE4MjtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYmFkZ2Uuc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAjNGQ5OThhO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5iYWRnZS5zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kOiAjM2FkYjc2O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5iYWRnZS53YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZhZTAwO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5iYWRnZS5hbGVydCB7XG4gICAgYmFja2dyb3VuZDogI2JkM2MyZjtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4uYnJlYWRjcnVtYnMge1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLmJyZWFkY3J1bWJzOjpiZWZvcmUsIC5icmVhZGNydW1iczo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIC5icmVhZGNydW1iczo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5icmVhZGNydW1icyBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAuYnJlYWRjcnVtYnMgbGk6bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luOiAwIDAuNzVyZW07XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgY29udGVudDogXCIvXCI7XG4gICAgICBjb2xvcjogIzk1OTI5MjsgfVxuICAuYnJlYWRjcnVtYnMgYSB7XG4gICAgY29sb3I6ICMyYzhhODI7IH1cbiAgICAuYnJlYWRjcnVtYnMgYTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAuYnJlYWRjcnVtYnMgLmRpc2FibGVkIHtcbiAgICBjb2xvcjogIzk1OTI5MjtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi5jYWxsb3V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBjb2xvcjogIzAwMDAwMDsgfVxuICAuY2FsbG91dCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAuY2FsbG91dCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5jYWxsb3V0LnByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyYzhhODI7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmNhbGxvdXQuc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNGQ5OThhO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5jYWxsb3V0LnN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmNhbGxvdXQud2FybmluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuY2FsbG91dC5hbGVydCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JkM2MyZjtcbiAgICBjb2xvcjogI2U5ZjJlZjsgfVxuICAuY2FsbG91dC5zbWFsbCB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTsgfVxuICAuY2FsbG91dC5sYXJnZSB7XG4gICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07IH1cblxuLmRyb3Bkb3duLXBhbmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMzAwcHg7XG4gIHBhZGRpbmc6IDFyZW07XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYm9yZGVyOiAxcHggc29saWQgIzk1OTI5MjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U5ZjJlZjtcbiAgZm9udC1zaXplOiAxcmVtOyB9XG4gIC5kcm9wZG93bi1wYW5lLmlzLW9wZW5pbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5kcm9wZG93bi1wYW5lLmlzLW9wZW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cblxuLmRyb3Bkb3duLXBhbmUudGlueSB7XG4gIHdpZHRoOiAxMDBweDsgfVxuXG4uZHJvcGRvd24tcGFuZS5zbWFsbCB7XG4gIHdpZHRoOiAyMDBweDsgfVxuXG4uZHJvcGRvd24tcGFuZS5sYXJnZSB7XG4gIHdpZHRoOiA0MDBweDsgfVxuXG4ucGFnaW5hdGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC5wYWdpbmF0aW9uOjpiZWZvcmUsIC5wYWdpbmF0aW9uOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnBhZ2luYXRpb246OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAucGFnaW5hdGlvbiBsaSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjA2MjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAucGFnaW5hdGlvbiBsaTpsYXN0LWNoaWxkLCAucGFnaW5hdGlvbiBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhZ2luYXRpb24gbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuICAucGFnaW5hdGlvbiBhLFxuICAucGFnaW5hdGlvbiBidXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLnBhZ2luYXRpb24gYTpob3ZlcixcbiAgICAucGFnaW5hdGlvbiBidXR0b246aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2RjZGZkZjsgfVxuICAucGFnaW5hdGlvbiAuY3VycmVudCB7XG4gICAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICAgIGJhY2tncm91bmQ6ICMyYzhhODI7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XG4gIC5wYWdpbmF0aW9uIC5kaXNhYmxlZCB7XG4gICAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICAgIGNvbG9yOiAjOTU5MjkyO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAucGFnaW5hdGlvbiAuZGlzYWJsZWQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgLnBhZ2luYXRpb24gLmVsbGlwc2lzOjphZnRlciB7XG4gICAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICAgIGNvbnRlbnQ6ICdcXDIwMjYnO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSxcbi5wYWdpbmF0aW9uLXByZXZpb3VzLmRpc2FibGVkOjpiZWZvcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICBjb250ZW50OiBcIsKrXCI7IH1cblxuLnBhZ2luYXRpb24tbmV4dCBhOjphZnRlcixcbi5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBjb250ZW50OiBcIsK7XCI7IH1cblxuLmhhcy10aXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAjNTU1NTU1O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY3Vyc29yOiBoZWxwOyB9XG5cbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwJSArIDAuNjQ5NXJlbSk7XG4gIHotaW5kZXg6IDEyMDA7XG4gIG1heC13aWR0aDogMTByZW07XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gIGZvbnQtc2l6ZTogODAlO1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuICAudG9vbHRpcDo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgLnRvb2x0aXAuYm90dG9tOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMC43NXJlbTtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzAwMDAwMDtcbiAgICBib3R0b206IDEwMCU7IH1cbiAgLnRvb2x0aXAuYm90dG9tLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9XG4gIC50b29sdGlwLnRvcDo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDAuNzVyZW07XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6ICMwMDAwMDAgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgdG9wOiAxMDAlO1xuICAgIGJvdHRvbTogYXV0bzsgfVxuICAudG9vbHRpcC50b3AuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cbiAgLnRvb2x0aXAubGVmdDo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDAuNzVyZW07XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzAwMDAwMDtcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC50b29sdGlwLmxlZnQuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgLnRvb2x0aXAucmlnaHQ6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwLjc1cmVtO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzAwMDAwMCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC50b29sdGlwLnJpZ2h0LmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICBib3R0b206IGF1dG87XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG4gIC50b29sdGlwLmFsaWduLXRvcDo6YmVmb3JlIHtcbiAgICBib3R0b206IGF1dG87XG4gICAgdG9wOiAxMCU7IH1cbiAgLnRvb2x0aXAuYWxpZ24tYm90dG9tOjpiZWZvcmUge1xuICAgIGJvdHRvbTogMTAlO1xuICAgIHRvcDogYXV0bzsgfVxuICAudG9vbHRpcC5hbGlnbi1sZWZ0OjpiZWZvcmUge1xuICAgIGxlZnQ6IDEwJTtcbiAgICByaWdodDogYXV0bzsgfVxuICAudG9vbHRpcC5hbGlnbi1yaWdodDo6YmVmb3JlIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxMCU7IH1cblxuLmFjY29yZGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cbiAgLmFjY29yZGlvbltkaXNhYmxlZF0gLmFjY29yZGlvbi10aXRsZSB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4uYWNjb3JkaW9uLWl0ZW06Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG5cbi5hY2NvcmRpb24taXRlbTpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG5cbi5hY2NvcmRpb24tdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxLjI1cmVtIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkY2RmZGY7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjMmM4YTgyOyB9XG4gIDpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+IC5hY2NvcmRpb24tdGl0bGUge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGNkZmRmO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cbiAgLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RjZGZkZjsgfVxuICAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMXJlbTtcbiAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgIGNvbnRlbnQ6IFwiK1wiOyB9XG4gIC5pcy1hY3RpdmUgPiAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi4oCTXCI7IH1cblxuLmFjY29yZGlvbi1jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RjZGZkZjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgY29sb3I6ICMwMDAwMDA7IH1cbiAgOmxhc3QtY2hpbGQgPiAuYWNjb3JkaW9uLWNvbnRlbnQ6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkY2RmZGY7IH1cblxuLm1lZGlhLW9iamVjdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gIC5tZWRpYS1vYmplY3QgaW1nIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAubWVkaWEtb2JqZWN0LnN0YWNrLWZvci1zbWFsbCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH0gfVxuXG4ubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICBmbGV4OiAwIDEgYXV0bzsgfVxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07IH1cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmxhc3QtY2hpbGQ6bm90KDpudGgtY2hpbGQoMikpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07IH1cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuc3RhY2stZm9yLXNtYWxsIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgICAuc3RhY2stZm9yLXNtYWxsIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbi5tYWluLXNlY3Rpb24ge1xuICAgIGZsZXg6IDEgMSAwcHg7IH1cblxuLnJlc3BvbnNpdmUtZW1iZWQsXG4uZmxleC12aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNzUlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5yZXNwb25zaXZlLWVtYmVkIGlmcmFtZSxcbiAgLnJlc3BvbnNpdmUtZW1iZWQgb2JqZWN0LFxuICAucmVzcG9uc2l2ZS1lbWJlZCBlbWJlZCxcbiAgLnJlc3BvbnNpdmUtZW1iZWQgdmlkZW8sXG4gIC5mbGV4LXZpZGVvIGlmcmFtZSxcbiAgLmZsZXgtdmlkZW8gb2JqZWN0LFxuICAuZmxleC12aWRlbyBlbWJlZCxcbiAgLmZsZXgtdmlkZW8gdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLnJlc3BvbnNpdmUtZW1iZWQud2lkZXNjcmVlbixcbiAgLmZsZXgtdmlkZW8ud2lkZXNjcmVlbiB7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgfVxuXG4udGFicyB7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RjZGZkZjtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG4gIC50YWJzOjpiZWZvcmUsIC50YWJzOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnRhYnM6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4udGFicy52ZXJ0aWNhbCA+IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogYXV0bzsgfVxuXG4udGFicy5zaW1wbGUgPiBsaSA+IGEge1xuICBwYWRkaW5nOiAwOyB9XG4gIC50YWJzLnNpbXBsZSA+IGxpID4gYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLnRhYnMucHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6ICMyYzhhODI7IH1cbiAgLnRhYnMucHJpbWFyeSA+IGxpID4gYSB7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAudGFicy5wcmltYXJ5ID4gbGkgPiBhOmhvdmVyLCAudGFicy5wcmltYXJ5ID4gbGkgPiBhOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6ICMzMDk2OGU7IH1cblxuLnRhYnMtdGl0bGUge1xuICBmbG9hdDogbGVmdDsgfVxuICAudGFicy10aXRsZSA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogIzJjOGE4MjsgfVxuICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAudGFicy10aXRsZSA+IGEge1xuICAgICAgb3V0bGluZTogMDsgfVxuICAgIC50YWJzLXRpdGxlID4gYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgY29sb3I6ICMyNjc3NzA7IH1cbiAgICAudGFicy10aXRsZSA+IGE6Zm9jdXMsIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgYmFja2dyb3VuZDogI2RjZGZkZjtcbiAgICAgIGNvbG9yOiAjMmM4YTgyOyB9XG5cbi50YWJzLWNvbnRlbnQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGNkZmRmO1xuICBib3JkZXItdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsgfVxuXG4udGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RjZGZkZjtcbiAgYm9yZGVyLWxlZnQ6IDA7IH1cblxuLnRhYnMtcGFuZWwge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtOyB9XG4gIC50YWJzLXBhbmVsLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLnRodW1ibmFpbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXI6IDRweCBzb2xpZCAjZmZmZmZmO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBsaW5lLWhlaWdodDogMDsgfVxuXG5hLnRodW1ibmFpbCB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7IH1cbiAgYS50aHVtYm5haWw6aG92ZXIsIGEudGh1bWJuYWlsOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgNnB4IDFweCByZ2JhKDQ0LCAxMzgsIDEzMCwgMC41KTsgfVxuICBhLnRodW1ibmFpbCBpbWFnZSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4ubWVudSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5tZW51IGxpIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5tZW51IGEsXG4gIC5tZW51IC5idXR0b24ge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwLjdyZW0gMXJlbTsgfVxuICAubWVudSBpbnB1dCxcbiAgLm1lbnUgc2VsZWN0LFxuICAubWVudSBhLFxuICAubWVudSBidXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLm1lbnUgaW5wdXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAubWVudSwgLm1lbnUuaG9yaXpvbnRhbCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLm1lbnUudmVydGljYWwge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAubWVudS52ZXJ0aWNhbC5pY29uLXRvcCBsaSBhIGltZyxcbiAgICAubWVudS52ZXJ0aWNhbC5pY29uLXRvcCBsaSBhIGksXG4gICAgLm1lbnUudmVydGljYWwuaWNvbi10b3AgbGkgYSBzdmcsIC5tZW51LnZlcnRpY2FsLmljb24tYm90dG9tIGxpIGEgaW1nLFxuICAgIC5tZW51LnZlcnRpY2FsLmljb24tYm90dG9tIGxpIGEgaSxcbiAgICAubWVudS52ZXJ0aWNhbC5pY29uLWJvdHRvbSBsaSBhIHN2ZyB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5tZW51LmV4cGFuZGVkIGxpIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9XG4gIC5tZW51LmV4cGFuZGVkLmljb24tdG9wIGxpIGEgaW1nLFxuICAubWVudS5leHBhbmRlZC5pY29uLXRvcCBsaSBhIGksXG4gIC5tZW51LmV4cGFuZGVkLmljb24tdG9wIGxpIGEgc3ZnLCAubWVudS5leHBhbmRlZC5pY29uLWJvdHRvbSBsaSBhIGltZyxcbiAgLm1lbnUuZXhwYW5kZWQuaWNvbi1ib3R0b20gbGkgYSBpLFxuICAubWVudS5leHBhbmRlZC5pY29uLWJvdHRvbSBsaSBhIHN2ZyB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubWVudS5zaW1wbGUge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAubWVudS5zaW1wbGUgbGkgKyBsaSB7XG4gICAgICBtYXJnaW4tbGVmdDogMXJlbTsgfVxuICAgIC5tZW51LnNpbXBsZSBhIHtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWVudS5tZWRpdW0taG9yaXpvbnRhbCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgLm1lbnUubWVkaXVtLXZlcnRpY2FsIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5tZW51Lm1lZGl1bS1leHBhbmRlZCBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9XG4gICAgLm1lbnUubWVkaXVtLXNpbXBsZSBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWVudS5sYXJnZS1ob3Jpem9udGFsIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAubWVudS5sYXJnZS12ZXJ0aWNhbCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAubWVudS5sYXJnZS1leHBhbmRlZCBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9XG4gICAgLm1lbnUubGFyZ2Utc2ltcGxlIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLm1lbnUueGxhcmdlLWhvcml6b250YWwge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgIC5tZW51LnhsYXJnZS12ZXJ0aWNhbCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAubWVudS54bGFyZ2UtZXhwYW5kZWQgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfVxuICAgIC5tZW51LnhsYXJnZS1zaW1wbGUgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG4gIC5tZW51Lm5lc3RlZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG4gIC5tZW51Lmljb25zIGEge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLm1lbnUuaWNvbi10b3AgYSwgLm1lbnUuaWNvbi1yaWdodCBhLCAubWVudS5pY29uLWJvdHRvbSBhLCAubWVudS5pY29uLWxlZnQgYSB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubWVudS5pY29uLWxlZnQgbGkgYSwgLm1lbnUubmVzdGVkLmljb24tbGVmdCBsaSBhIHtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7IH1cbiAgICAubWVudS5pY29uLWxlZnQgbGkgYSBpbWcsXG4gICAgLm1lbnUuaWNvbi1sZWZ0IGxpIGEgaSxcbiAgICAubWVudS5pY29uLWxlZnQgbGkgYSBzdmcsIC5tZW51Lm5lc3RlZC5pY29uLWxlZnQgbGkgYSBpbWcsXG4gICAgLm1lbnUubmVzdGVkLmljb24tbGVmdCBsaSBhIGksXG4gICAgLm1lbnUubmVzdGVkLmljb24tbGVmdCBsaSBhIHN2ZyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07IH1cbiAgLm1lbnUuaWNvbi1yaWdodCBsaSBhLCAubWVudS5uZXN0ZWQuaWNvbi1yaWdodCBsaSBhIHtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7IH1cbiAgICAubWVudS5pY29uLXJpZ2h0IGxpIGEgaW1nLFxuICAgIC5tZW51Lmljb24tcmlnaHQgbGkgYSBpLFxuICAgIC5tZW51Lmljb24tcmlnaHQgbGkgYSBzdmcsIC5tZW51Lm5lc3RlZC5pY29uLXJpZ2h0IGxpIGEgaW1nLFxuICAgIC5tZW51Lm5lc3RlZC5pY29uLXJpZ2h0IGxpIGEgaSxcbiAgICAubWVudS5uZXN0ZWQuaWNvbi1yaWdodCBsaSBhIHN2ZyB7XG4gICAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTsgfVxuICAubWVudS5pY29uLXRvcCBsaSBhLCAubWVudS5uZXN0ZWQuaWNvbi10b3AgbGkgYSB7XG4gICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwOyB9XG4gICAgLm1lbnUuaWNvbi10b3AgbGkgYSBpbWcsXG4gICAgLm1lbnUuaWNvbi10b3AgbGkgYSBpLFxuICAgIC5tZW51Lmljb24tdG9wIGxpIGEgc3ZnLCAubWVudS5uZXN0ZWQuaWNvbi10b3AgbGkgYSBpbWcsXG4gICAgLm1lbnUubmVzdGVkLmljb24tdG9wIGxpIGEgaSxcbiAgICAubWVudS5uZXN0ZWQuaWNvbi10b3AgbGkgYSBzdmcge1xuICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1lbnUuaWNvbi1ib3R0b20gbGkgYSwgLm1lbnUubmVzdGVkLmljb24tYm90dG9tIGxpIGEge1xuICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDsgfVxuICAgIC5tZW51Lmljb24tYm90dG9tIGxpIGEgaW1nLFxuICAgIC5tZW51Lmljb24tYm90dG9tIGxpIGEgaSxcbiAgICAubWVudS5pY29uLWJvdHRvbSBsaSBhIHN2ZywgLm1lbnUubmVzdGVkLmljb24tYm90dG9tIGxpIGEgaW1nLFxuICAgIC5tZW51Lm5lc3RlZC5pY29uLWJvdHRvbSBsaSBhIGksXG4gICAgLm1lbnUubmVzdGVkLmljb24tYm90dG9tIGxpIGEgc3ZnIHtcbiAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZW51IC5pcy1hY3RpdmUgPiBhIHtcbiAgICBiYWNrZ3JvdW5kOiAjMmM4YTgyO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5tZW51IC5hY3RpdmUgPiBhIHtcbiAgICBiYWNrZ3JvdW5kOiAjMmM4YTgyO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5tZW51LmFsaWduLWxlZnQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAubWVudS5hbGlnbi1yaWdodCBsaSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gICAgLm1lbnUuYWxpZ24tcmlnaHQgbGkgLnN1Ym1lbnUgbGkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC5tZW51LmFsaWduLXJpZ2h0LnZlcnRpY2FsIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIC5tZW51LmFsaWduLXJpZ2h0LnZlcnRpY2FsIGxpIC5zdWJtZW51IGxpIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5tZW51LmFsaWduLXJpZ2h0Lmljb24tdG9wIGxpIGEgaW1nLFxuICAubWVudS5hbGlnbi1yaWdodC5pY29uLXRvcCBsaSBhIGksXG4gIC5tZW51LmFsaWduLXJpZ2h0Lmljb24tdG9wIGxpIGEgc3ZnLCAubWVudS5hbGlnbi1yaWdodC5pY29uLWJvdHRvbSBsaSBhIGltZyxcbiAgLm1lbnUuYWxpZ24tcmlnaHQuaWNvbi1ib3R0b20gbGkgYSBpLFxuICAubWVudS5hbGlnbi1yaWdodC5pY29uLWJvdHRvbSBsaSBhIHN2ZyB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLm1lbnUuYWxpZ24tcmlnaHQgLm5lc3RlZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5tZW51LmFsaWduLWNlbnRlciBsaSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC5tZW51LmFsaWduLWNlbnRlciBsaSAuc3VibWVudSBsaSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLm1lbnUgLm1lbnUtdGV4dCB7XG4gICAgcGFkZGluZzogMC43cmVtIDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cblxuLm1lbnUtY2VudGVyZWQgPiAubWVudSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5tZW51LWNlbnRlcmVkID4gLm1lbnUgbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAubWVudS1jZW50ZXJlZCA+IC5tZW51IGxpIC5zdWJtZW51IGxpIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4ubm8tanMgW2RhdGEtcmVzcG9uc2l2ZS1tZW51XSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmFjY29yZGlvbi1tZW51IGxpIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmFjY29yZGlvbi1tZW51IGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTsgfVxuXG4uYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51IGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTsgfVxuXG4uYWNjb3JkaW9uLW1lbnUgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07IH1cblxuLmFjY29yZGlvbi1tZW51LmFsaWduLXJpZ2h0IC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50Om5vdCguaGFzLXN1Ym1lbnUtdG9nZ2xlKSA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ6bm90KC5oYXMtc3VibWVudS10b2dnbGUpID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiAjMmM4YTgyIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgIHJpZ2h0OiAxcmVtOyB9XG5cbi5hY2NvcmRpb24tbWVudS5hbGlnbi1sZWZ0IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIHJpZ2h0OiAxcmVtO1xuICBsZWZ0OiBhdXRvOyB9XG5cbi5hY2NvcmRpb24tbWVudS5hbGlnbi1yaWdodCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMXJlbTsgfVxuXG4uYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudFthcmlhLWV4cGFuZGVkPSd0cnVlJ10gPiBhOjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7IH1cblxuLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uaGFzLXN1Ym1lbnUtdG9nZ2xlID4gYSB7XG4gIG1hcmdpbi1yaWdodDogNDBweDsgfVxuXG4uc3VibWVudS10b2dnbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuc3VibWVudS10b2dnbGU6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogIzJjOGE4MiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbjogYXV0bzsgfVxuXG4uc3VibWVudS10b2dnbGVbYXJpYS1leHBhbmRlZD0ndHJ1ZSddOjphZnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGVZKC0xKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTsgfVxuXG4uc3VibWVudS10b2dnbGUtdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cblxuLmlzLWRyaWxsZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuaXMtZHJpbGxkb3duIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuaXMtZHJpbGxkb3duLmFuaW1hdGUtaGVpZ2h0IHtcbiAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC41czsgfVxuXG4uZHJpbGxkb3duIGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjsgfVxuXG4uZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xuICB6LWluZGV4OiAtMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7IH1cbiAgLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtYWN0aXZlIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7IH1cbiAgLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtY2xvc2luZyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpOyB9XG4gIC5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51IGEge1xuICAgIHBhZGRpbmc6IDAuN3JlbSAxcmVtOyB9XG5cbi5kcmlsbGRvd24gLm5lc3RlZC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmRyaWxsZG93biAuZHJpbGxkb3duLXN1Ym1lbnUtY292ZXItcHJldmlvdXMge1xuICBtaW4taGVpZ2h0OiAxMDAlOyB9XG5cbi5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMyYzhhODI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC02cHg7XG4gICAgcmlnaHQ6IDFyZW07IH1cblxuLmRyaWxsZG93bi5hbGlnbi1sZWZ0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMDAwMDAwO1xuICByaWdodDogMXJlbTtcbiAgbGVmdDogYXV0bzsgfVxuXG4uZHJpbGxkb3duLmFsaWduLXJpZ2h0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwMDAwMDAgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxcmVtOyB9XG5cbi5kcmlsbGRvd24gLmpzLWRyaWxsZG93bi1iYWNrID4gYTo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzJjOGE4MiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvOyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItY29sb3I6ICMwMDAwMDAgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHJpZ2h0OiA1cHg7XG4gIGxlZnQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IC0zcHg7IH1cblxuW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5kcm9wZG93bi5tZW51IGEge1xuICBvdXRsaW5lOiAwOyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkgPiBhIHtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1hY3RpdmUgPiBhIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjMmM4YTgyOyB9XG5cbi5uby1qcyAuZHJvcGRvd24ubWVudSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmRyb3Bkb3duLm1lbnUgLm5lc3RlZC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAwOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAwO1xuICByaWdodDogMTAwJTtcbiAgbGVmdDogYXV0bzsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTAwJTsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICByaWdodDogMTRweDsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwMDAwMDAgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiA1cHg7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiAnJztcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwMDAwMDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogIzAwMDAwMCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzAwMDAwMCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzAwMDAwMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogIzAwMDAwMCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4OyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwMDAwMDAgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4OyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzAwMDAwMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogIzAwMDAwMCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzAwMDAwMCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzAwMDAwMDsgfSB9XG5cbi5kcm9wZG93bi5tZW51LmFsaWduLXJpZ2h0IC5pcy1kcm9wZG93bi1zdWJtZW51LmZpcnN0LXN1YiB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87IH1cblxuLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICB3aWR0aDogMTAwcHg7IH1cbiAgLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwuYWxpZ24tcmlnaHQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IGE6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IC02cHg7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWlubmVyID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzk1OTI5MjtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjsgfVxuICAuZHJvcGRvd24gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgYSB7XG4gICAgcGFkZGluZzogMC43cmVtIDFyZW07IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4OyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzAwMDAwMCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiA1cHg7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwMDAwMDA7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIG1hcmdpbi10b3A6IC0xcHg7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgPiBsaSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuanMtZHJvcGRvd24tYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG5odG1sLmlzLXJldmVhbC1vcGVuIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteTogaGlkZGVuOyB9XG4gIGh0bWwuaXMtcmV2ZWFsLW9wZW4uemYtaGFzLXNjcm9sbCB7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgfVxuICBodG1sLmlzLXJldmVhbC1vcGVuIGJvZHkge1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjsgfVxuXG4ucmV2ZWFsLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAwNTtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQ1KTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoOyB9XG5cbi5yZXZlYWwge1xuICB6LWluZGV4OiAxMDA2O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5NTkyOTI7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAxMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAucmV2ZWFsIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbCB7XG4gICAgICBtaW4taGVpZ2h0OiAwOyB9IH1cbiAgLnJldmVhbCAuY29sdW1uIHtcbiAgICBtaW4td2lkdGg6IDA7IH1cbiAgLnJldmVhbCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbCB7XG4gICAgICB3aWR0aDogNjAwcHg7XG4gICAgICBtYXgtd2lkdGg6IDg3LjVyZW07IH0gfVxuICAucmV2ZWFsLmNvbGxhcHNlIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbC50aW55IHtcbiAgICAgIHdpZHRoOiAzMCU7XG4gICAgICBtYXgtd2lkdGg6IDg3LjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwuc21hbGwge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG1heC13aWR0aDogODcuNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbC5sYXJnZSB7XG4gICAgICB3aWR0aDogOTAlO1xuICAgICAgbWF4LXdpZHRoOiA4Ny41cmVtOyB9IH1cbiAgLnJldmVhbC5mdWxsIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnJldmVhbCB7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH0gfVxuICAucmV2ZWFsLndpdGhvdXQtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkOyB9XG5cbi5mbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuXG4uZmxvYXQtcmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsgfVxuXG4uZmxvYXQtY2VudGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cblxuLmNsZWFyZml4OjpiZWZvcmUsIC5jbGVhcmZpeDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogJyAnO1xuICBmbGV4LWJhc2lzOiAwO1xuICBvcmRlcjogMTsgfVxuXG4uY2xlYXJmaXg6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLmFsaWduLWxlZnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLXJpZ2h0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tY2VudGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmFsaWduLWp1c3RpZnkge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cblxuLmFsaWduLXNwYWNlZCB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG5cbi5hbGlnbi1sZWZ0LnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLXJpZ2h0LnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1jZW50ZXIudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi5hbGlnbi10b3Age1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tc2VsZi10b3Age1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0OyB9XG5cbi5hbGlnbi1ib3R0b20ge1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cblxuLmFsaWduLXNlbGYtYm90dG9tIHtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQ7IH1cblxuLmFsaWduLW1pZGRsZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLmFsaWduLXNlbGYtbWlkZGxlIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyOyB9XG5cbi5hbGlnbi1zdHJldGNoIHtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cblxuLmFsaWduLXNlbGYtc3RyZXRjaCB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7IH1cblxuLmFsaWduLWNlbnRlci1taWRkbGUge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYWxpZ24tY29udGVudDogY2VudGVyOyB9XG5cbi5zbWFsbC1vcmRlci0xIHtcbiAgb3JkZXI6IDE7IH1cblxuLnNtYWxsLW9yZGVyLTIge1xuICBvcmRlcjogMjsgfVxuXG4uc21hbGwtb3JkZXItMyB7XG4gIG9yZGVyOiAzOyB9XG5cbi5zbWFsbC1vcmRlci00IHtcbiAgb3JkZXI6IDQ7IH1cblxuLnNtYWxsLW9yZGVyLTUge1xuICBvcmRlcjogNTsgfVxuXG4uc21hbGwtb3JkZXItNiB7XG4gIG9yZGVyOiA2OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLm1lZGl1bS1vcmRlci0yIHtcbiAgICBvcmRlcjogMjsgfVxuICAubWVkaXVtLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC5tZWRpdW0tb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLm1lZGl1bS1vcmRlci01IHtcbiAgICBvcmRlcjogNTsgfVxuICAubWVkaXVtLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC5sYXJnZS1vcmRlci0yIHtcbiAgICBvcmRlcjogMjsgfVxuICAubGFyZ2Utb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLmxhcmdlLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC5sYXJnZS1vcmRlci01IHtcbiAgICBvcmRlcjogNTsgfVxuICAubGFyZ2Utb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnhsYXJnZS1vcmRlci0yIHtcbiAgICBvcmRlcjogMjsgfVxuICAueGxhcmdlLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC54bGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLnhsYXJnZS1vcmRlci01IHtcbiAgICBvcmRlcjogNTsgfVxuICAueGxhcmdlLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9IH1cblxuLmZsZXgtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDsgfVxuXG4uZmxleC1jaGlsZC1hdXRvIHtcbiAgZmxleDogMSAxIGF1dG87IH1cblxuLmZsZXgtY2hpbGQtZ3JvdyB7XG4gIGZsZXg6IDEgMCBhdXRvOyB9XG5cbi5mbGV4LWNoaWxkLXNocmluayB7XG4gIGZsZXg6IDAgMSBhdXRvOyB9XG5cbi5mbGV4LWRpci1yb3cge1xuICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG5cbi5mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuXG4uZmxleC1kaXItY29sdW1uIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG4uZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87IH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5tZWRpdW0tZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87IH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87IH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfVxuICAubGFyZ2UtZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5sYXJnZS1mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gIC5sYXJnZS1mbGV4LWRpci1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLmxhcmdlLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLnhsYXJnZS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gIC54bGFyZ2UtZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAueGxhcmdlLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfVxuICAueGxhcmdlLWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAueGxhcmdlLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLnhsYXJnZS1mbGV4LWRpci1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLnhsYXJnZS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9IH1cblxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4udmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDBlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc2hvdy1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0tb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhpZGUtZm9yLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5oaWRlLWZvci14bGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pIHtcbiAgLnNob3ctZm9yLXhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtYXgtd2lkdGg6IDg5Ljk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLXhsYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5zaG93LWZvci14bGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnNob3ctZm9yLXNyLFxuLnNob3ctb24tZm9jdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKSAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XG5cbi5zaG93LW9uLWZvY3VzOmFjdGl2ZSwgLnNob3ctb24tZm9jdXM6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDsgfVxuXG4uc2hvdy1mb3ItbGFuZHNjYXBlLFxuLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLmhpZGUtZm9yLWxhbmRzY2FwZSxcbi5zaG93LWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cblxuLnNob3ctZm9yLWRhcmstbW9kZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmhpZGUtZm9yLWRhcmstbW9kZSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAuc2hvdy1mb3ItZGFyay1tb2RlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIC5oaWRlLWZvci1kYXJrLW1vZGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi5zaG93LWZvci1pZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgLnNob3ctZm9yLWllIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIC5oaWRlLWZvci1pZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnNob3ctZm9yLXN0aWNreSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmlzLXN0dWNrIC5zaG93LWZvci1zdGlja3kge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uaXMtc3R1Y2sgLmhpZGUtZm9yLXN0aWNreSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmZvbnQtd2lkZSB7XG4gIGxldHRlci1zcGFjaW5nOiAwLjI1cmVtOyB9XG5cbi5mb250LW5vcm1hbCB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cblxuLmZvbnQtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5mb250LWl0YWxpYyB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tMCB7XG4gIG1hcmdpbjogMHJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tdG9wLTAge1xuICBtYXJnaW4tdG9wOiAwcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1yaWdodC0wIHtcbiAgbWFyZ2luLXJpZ2h0OiAwcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1ib3R0b20tMCB7XG4gIG1hcmdpbi1ib3R0b206IDByZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLWxlZnQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1ob3Jpem9udGFsLTAge1xuICBtYXJnaW4tcmlnaHQ6IDByZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDByZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLXZlcnRpY2FsLTAge1xuICBtYXJnaW4tdG9wOiAwcmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDByZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy0wIHtcbiAgcGFkZGluZzogMHJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLXRvcC0wIHtcbiAgcGFkZGluZy10b3A6IDByZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1yaWdodC0wIHtcbiAgcGFkZGluZy1yaWdodDogMHJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLWJvdHRvbS0wIHtcbiAgcGFkZGluZy1ib3R0b206IDByZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1sZWZ0LTAge1xuICBwYWRkaW5nLWxlZnQ6IDByZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1ob3Jpem9udGFsLTAge1xuICBwYWRkaW5nLXJpZ2h0OiAwcmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMHJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLXZlcnRpY2FsLTAge1xuICBwYWRkaW5nLXRvcDogMHJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWJvdHRvbTogMHJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tMSB7XG4gIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tdG9wLTEge1xuICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1yaWdodC0xIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1ib3R0b20tMSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLWxlZnQtMSB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1ob3Jpem9udGFsLTEge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLXZlcnRpY2FsLTEge1xuICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy0xIHtcbiAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLXRvcC0xIHtcbiAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1yaWdodC0xIHtcbiAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLWJvdHRvbS0xIHtcbiAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1sZWZ0LTEge1xuICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1ob3Jpem9udGFsLTEge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLXZlcnRpY2FsLTEge1xuICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tMiB7XG4gIG1hcmdpbjogMnJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tdG9wLTIge1xuICBtYXJnaW4tdG9wOiAycmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1yaWdodC0yIHtcbiAgbWFyZ2luLXJpZ2h0OiAycmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1ib3R0b20tMiB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLWxlZnQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAycmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1ob3Jpem9udGFsLTIge1xuICBtYXJnaW4tcmlnaHQ6IDJyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLXZlcnRpY2FsLTIge1xuICBtYXJnaW4tdG9wOiAycmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy0yIHtcbiAgcGFkZGluZzogMnJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLXRvcC0yIHtcbiAgcGFkZGluZy10b3A6IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1yaWdodC0yIHtcbiAgcGFkZGluZy1yaWdodDogMnJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLWJvdHRvbS0yIHtcbiAgcGFkZGluZy1ib3R0b206IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1sZWZ0LTIge1xuICBwYWRkaW5nLWxlZnQ6IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1ob3Jpem9udGFsLTIge1xuICBwYWRkaW5nLXJpZ2h0OiAycmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMnJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLXZlcnRpY2FsLTIge1xuICBwYWRkaW5nLXRvcDogMnJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tMyB7XG4gIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tdG9wLTMge1xuICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1yaWdodC0zIHtcbiAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1ib3R0b20tMyB7XG4gIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLWxlZnQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1ob3Jpem9udGFsLTMge1xuICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLXZlcnRpY2FsLTMge1xuICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy0zIHtcbiAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLXRvcC0zIHtcbiAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1yaWdodC0zIHtcbiAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLWJvdHRvbS0zIHtcbiAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1sZWZ0LTMge1xuICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1ob3Jpem9udGFsLTMge1xuICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLXZlcnRpY2FsLTMge1xuICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5zZXBhcmF0b3ItY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgLnNlcGFyYXRvci1jZW50ZXI6OmJlZm9yZSwgLnNlcGFyYXRvci1jZW50ZXI6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICAuc2VwYXJhdG9yLWNlbnRlcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zZXBhcmF0b3ItY2VudGVyOjphZnRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDNyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMC4xMjVyZW0gc29saWQgIzJjOGE4MjtcbiAgICBtYXJnaW46IDFyZW0gYXV0byAwOyB9XG5cbi5zZXBhcmF0b3ItbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAuc2VwYXJhdG9yLWxlZnQ6OmJlZm9yZSwgLnNlcGFyYXRvci1sZWZ0OjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnNlcGFyYXRvci1sZWZ0OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNlcGFyYXRvci1sZWZ0OjphZnRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDNyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMC4xMjVyZW0gc29saWQgIzJjOGE4MjtcbiAgICBtYXJnaW46IDFyZW0gYXV0byAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuLnNlcGFyYXRvci1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgLnNlcGFyYXRvci1yaWdodDo6YmVmb3JlLCAuc2VwYXJhdG9yLXJpZ2h0OjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnNlcGFyYXRvci1yaWdodDo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zZXBhcmF0b3ItcmlnaHQ6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBib3JkZXItYm90dG9tOiAwLjEyNXJlbSBzb2xpZCAjMmM4YTgyO1xuICAgIG1hcmdpbjogMXJlbSBhdXRvIDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTI1IHtcbiAgd2lkdGg6IDI1JSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC01MCB7XG4gIHdpZHRoOiA1MCUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtNzUge1xuICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTEwMCB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuLmhlaWdodC0yNSB7XG4gIGhlaWdodDogMjUlICFpbXBvcnRhbnQ7IH1cblxuLmhlaWdodC01MCB7XG4gIGhlaWdodDogNTAlICFpbXBvcnRhbnQ7IH1cblxuLmhlaWdodC03NSB7XG4gIGhlaWdodDogNzUlICFpbXBvcnRhbnQ7IH1cblxuLmhlaWdodC0xMDAge1xuICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4ubWF4LXdpZHRoLTEwMCB7XG4gIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi5tYXgtaGVpZ2h0LTEwMCB7XG4gIG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4ucG9zaXRpb24tc3RhdGljIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50OyB9XG5cbi5wb3NpdGlvbi1yZWxhdGl2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50OyB9XG5cbi5wb3NpdGlvbi1hYnNvbHV0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50OyB9XG5cbi5wb3NpdGlvbi1maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50OyB9XG5cbi5wb3NpdGlvbi1maXhlZC10b3Age1xuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbiAgdG9wOiAwcmVtICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiAwcmVtICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDByZW0gIWltcG9ydGFudDtcbiAgei1pbmRleDogOTc1OyB9XG5cbi5wb3NpdGlvbi1maXhlZC1ib3R0b20ge1xuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbiAgcmlnaHQ6IDByZW0gIWltcG9ydGFudDtcbiAgYm90dG9tOiAwcmVtICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDByZW0gIWltcG9ydGFudDtcbiAgei1pbmRleDogOTc1OyB9XG5cbi8qIVxuICogU2xpZGViYXJzIC0gQSBqUXVlcnkgRnJhbWV3b3JrIGZvciBPZmYtQ2FudmFzIE1lbnVzIGFuZCBTaWRlYmFyc1xuICogVmVyc2lvbjogMi4wLjJcbiAqIFVybDogaHR0cDovL3d3dy5hZGNoc20uY29tL3NsaWRlYmFycy9cbiAqIEF1dGhvcjogQWRhbSBDaGFybGVzIFNtaXRoXG4gKiBBdXRob3IgdXJsOiBodHRwOi8vd3d3LmFkY2hzbS5jb20vXG4gKiBMaWNlbnNlOiBNSVRcbiAqIExpY2Vuc2UgdXJsOiBodHRwOi8vd3d3LmFkY2hzbS5jb20vc2xpZGViYXJzL2xpY2Vuc2UvXG4gKi9cbi8qKlxuICogQm94IE1vZGVsLCBIdG1sICYgQm9keVxuICovXG5odG1sLCBib2R5LCBbY2FudmFzPWNvbnRhaW5lcl0sIFtvZmYtY2FudmFzXSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuaHRtbCwgYm9keSB7XG4gIHdpZHRoOiAxMDAlO1xuICAvKmhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuOyovIH1cblxuLyoqXG4gKiBDYW52YXNcbiAqL1xuW2NhbnZhc10ge1xuICB6LWluZGV4OiAxOyB9XG5cbltjYW52YXM9Y29udGFpbmVyXSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8qIEJhc2ljIGJhY2tncm91bmQgY29sb3IsIG92ZXJ3cml0ZSB0aGlzIGluIHlvdXIgb3duIGNzcy4gKi9cbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAvKiBFbmFibGVzIG1vbWVudHVtIHNjcm9sbGluZyBvbiBpT1MgZGV2aWNlcywgbWF5IGJlIHJlbW92ZWQgYnkgc2V0dGluZyB0byAnYXV0bycgaW4geW91ciBvd24gQ1NTLiAqLyB9XG5cbltjYW52YXM9Y29udGFpbmVyXTpiZWZvcmUsIFtjYW52YXM9Y29udGFpbmVyXTphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogdGFibGU7IH1cblxuLyoqXG4gKiBPZmYtQ2FuYXZzXG4gKi9cbltvZmYtY2FudmFzXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI1M2MzYTtcbiAgLyogQmFzaWMgYmFja2dyb3VuZCBjb2xvciwgb3ZlcndyaXRlIHRoaXMgaW4geW91ciBvd24gY3NzLiAqL1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgLyogQmFzaWMgY29sb3JzLCBvdmVyd3JpdGUgdGhpcyBpbiB5b3VyIG93biBjc3MuICovXG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLyogRW5hYmxlcyBtb21lbnR1bSBzY3JvbGxpbmcgb24gaU9TIGRldmljZXMsIG1heSBiZSByZW1vdmVkIGJ5IHNldHRpbmcgdG8gJ2F1dG8nIGluIHlvdXIgb3duIENTUy4gKi8gfVxuXG5bb2ZmLWNhbnZhcyo9dG9wXSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDI1NXB4O1xuICB0b3A6IDA7IH1cblxuW29mZi1jYW52YXMqPXJpZ2h0XSB7XG4gIHdpZHRoOiAyNTVweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwOyB9XG5cbltvZmYtY2FudmFzKj1ib3R0b21dIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMjU1cHg7XG4gIGJvdHRvbTogMDsgfVxuXG5bb2ZmLWNhbnZhcyo9bGVmdF0ge1xuICB3aWR0aDogMjU1cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwOyB9XG5cbltvZmYtY2FudmFzKj1yZXZlYWxdIHtcbiAgei1pbmRleDogMDsgfVxuXG5bb2ZmLWNhbnZhcyo9cHVzaF0ge1xuICB6LWluZGV4OiAxOyB9XG5cbltvZmYtY2FudmFzKj1vdmVybGF5XSB7XG4gIHotaW5kZXg6IDk5OTk7IH1cblxuW29mZi1jYW52YXMqPXNoaWZ0XSB7XG4gIHotaW5kZXg6IDA7IH1cblxuLyoqXG4gKiBBbmltYXRpb25cbiAqL1xuW29mZi1jYW52YXNdIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIDBweCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIDBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KTsgfVxuXG5bY2FudmFzXSwgW29mZi1jYW52YXNdIHtcbiAgLypAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAzMDBtcztcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzAwbXM7XG4gIH0qL1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDMwMG1zO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzAwbXM7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAvKiBQcmV2ZW50cyBmbGlja2VyaW5nLCBtYXkgYmUgcmVtb3ZlZCBpZiBleHBlcmllbmNpbmcgcHJvYmxlbXMgd2l0aCBmaXhlZCBiYWNrZ3JvdW5kIGltYWdlcyBpbiBDaHJvbWUuICovIH1cblxuW29mZi1jYW52YXMqPXNoaWZ0XVtvZmYtY2FudmFzKj10b3BdIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIDUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgNTAlKTsgfVxuXG5bb2ZmLWNhbnZhcyo9c2hpZnRdW29mZi1jYW52YXMqPXJpZ2h0XSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMHB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMHB4KTsgfVxuXG5bb2ZmLWNhbnZhcyo9c2hpZnRdW29mZi1jYW52YXMqPWJvdHRvbV0ge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgLTUwJSk7IH1cblxuW29mZi1jYW52YXMqPXNoaWZ0XVtvZmYtY2FudmFzKj1sZWZ0XSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIDBweCk7IH1cblxuI3NiLWJsb2NrZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IGJsYWNrO1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogOTk7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGVhc2UgMHM7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAjc2ItYmxvY2tlciB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4uc2Itb3BlbmluZyAjc2ItYmxvY2tlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zYi1vcGVuZWQgI3NiLWJsb2NrZXIge1xuICBvcGFjaXR5OiAwLjY7IH1cblxuLmN1c3RvbS1mbHVpZC13aWR0aCB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5jdXN0b20tZHVyYXRpb24tNDAwIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAuNHM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IC40czsgfVxuXG4vKipcbiAqIFByaW50XG4gKi9cbkBtZWRpYSBwcmludCB7XG4gIFtjYW52YXNdIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KSAhaW1wb3J0YW50O1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIDBweCkgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIDBweCkgIWltcG9ydGFudDsgfVxuICBbb2ZmLWNhbnZhc10ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi8qIFNsaWRlciAqL1xuLyogSWNvbnMgKi9cbi8qIEFycm93cyAqL1xuLnNsaWNrLXByZXYsXG4uc2xpY2stbmV4dCB7XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiA2OHB4O1xuICB3aWR0aDogNDhweDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGZvbnQtc2l6ZTogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xuICBvdXRsaW5lOiBub25lO1xuICB6LWluZGV4OiAyOyB9XG4gIC5zbGljay1wcmV2OmhvdmVyLCAuc2xpY2stcHJldjpmb2N1cyxcbiAgLnNsaWNrLW5leHQ6aG92ZXIsXG4gIC5zbGljay1uZXh0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5zbGljay1wcmV2OmhvdmVyOmJlZm9yZSwgLnNsaWNrLXByZXY6Zm9jdXM6YmVmb3JlLFxuICAgIC5zbGljay1uZXh0OmhvdmVyOmJlZm9yZSxcbiAgICAuc2xpY2stbmV4dDpmb2N1czpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGNvbG9yOiAjMmM4YTgyOyB9XG4gIC5zbGljay1wcmV2LnNsaWNrLWRpc2FibGVkOmJlZm9yZSxcbiAgLnNsaWNrLW5leHQuc2xpY2stZGlzYWJsZWQ6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiAwLjU7IH1cbiAgLnNsaWNrLXByZXY6YmVmb3JlLFxuICAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgIHRleHQtc2hhZG93OiAwcHggMnB4IHJnYmEoMCwgNTEsIDEwMiwgMC40KTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgZm9udC1zaXplOiAzLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbi5zbGljay1wcmV2IHtcbiAgbGVmdDogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDRweDsgfVxuICBbZGlyPVwicnRsXCJdIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwOyB9XG4gIC5zbGljay1wcmV2OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29udGVudDogXCLupIJcIjsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnNsaWNrLXByZXY6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgY29udGVudDogXCLupINcIjsgfVxuXG4uc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiAwO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDsgfVxuICBbZGlyPVwicnRsXCJdIC5zbGljay1uZXh0IHtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29udGVudDogXCLupINcIjsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgY29udGVudDogXCLupIJcIjsgfVxuXG4vKiBEb3RzICovXG4uc2xpY2stZG90cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAtMjVweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTsgfVxuICAuc2xpY2stZG90cyBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgbWFyZ2luOiAwIDVweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbiB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgbGluZS1oZWlnaHQ6IDBweDtcbiAgICAgIGZvbnQtc2l6ZTogMHB4O1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAuc2xpY2stZG90cyBsaSBidXR0b246aG92ZXIsIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgICAgICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmhvdmVyOmJlZm9yZSwgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmZvY3VzOmJlZm9yZSB7XG4gICAgICAgICAgb3BhY2l0eTogMTsgfVxuICAgICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBjb250ZW50OiBcIu6klFwiO1xuICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY29sb3I6ICNFOEU4RTg7XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cbiAgICAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG4gICAgICBjb2xvcjogIzI1M0MzQTtcbiAgICAgIG9wYWNpdHk6IDE7IH1cblxuLyogU2xpZGVyICovXG4uc2xpY2stc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5zbGljay1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5zbGljay1saXN0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5zbGljay1saXN0LmRyYWdnaW5nIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY3Vyc29yOiBoYW5kOyB9XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4uc2xpY2stdHJhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLnNsaWNrLXRyYWNrOmJlZm9yZSwgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5zbGljay10cmFjazphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXRyYWNrIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBkaXNwbGF5OiBub25lOyB9XG4gIFtkaXI9XCJydGxcIl0gLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLnNsaWNrLXNsaWRlIGltZyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5zbGljay1zbGlkZS5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuc2xpY2stc2xpZGUuZHJhZ2dpbmcgaW1nIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLXNsaWRlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2xpY2stbG9hZGluZyAuc2xpY2stc2xpZGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAuc2xpY2stdmVydGljYWwgLnNsaWNrLXNsaWRlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cblxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLypcbj09IG1hbGlodSBqcXVlcnkgY3VzdG9tIHNjcm9sbGJhciBwbHVnaW4gPT1cblBsdWdpbiBVUkk6IGh0dHA6Ly9tYW5vcy5tYWxpaHUuZ3IvanF1ZXJ5LWN1c3RvbS1jb250ZW50LXNjcm9sbGVyXG4qL1xuLypcbkNPTlRFTlRTOiBcblx0MS4gQkFTSUMgU1RZTEUgLSBQbHVnaW4ncyBiYXNpYy9lc3NlbnRpYWwgQ1NTIHByb3BlcnRpZXMgKG5vcm1hbGx5LCBzaG91bGQgbm90IGJlIGVkaXRlZCkuIFxuXHQyLiBWRVJUSUNBTCBTQ1JPTExCQVIgLSBQb3NpdGlvbmluZyBhbmQgZGltZW5zaW9ucyBvZiB2ZXJ0aWNhbCBzY3JvbGxiYXIuIFxuXHQzLiBIT1JJWk9OVEFMIFNDUk9MTEJBUiAtIFBvc2l0aW9uaW5nIGFuZCBkaW1lbnNpb25zIG9mIGhvcml6b250YWwgc2Nyb2xsYmFyLlxuXHQ0LiBWRVJUSUNBTCBBTkQgSE9SSVpPTlRBTCBTQ1JPTExCQVJTIC0gUG9zaXRpb25pbmcgYW5kIGRpbWVuc2lvbnMgb2YgMi1heGlzIHNjcm9sbGJhcnMuIFxuXHQ1LiBUUkFOU0lUSU9OUyAtIENTUzMgdHJhbnNpdGlvbnMgZm9yIGhvdmVyIGV2ZW50cywgYXV0by1leHBhbmRlZCBhbmQgYXV0by1oaWRkZW4gc2Nyb2xsYmFycy4gXG5cdDYuIFNDUk9MTEJBUiBDT0xPUlMsIE9QQUNJVFkgQU5EIEJBQ0tHUk9VTkRTIFxuXHRcdDYuMSBUSEVNRVMgLSBTY3JvbGxiYXIgY29sb3JzLCBvcGFjaXR5LCBkaW1lbnNpb25zLCBiYWNrZ3JvdW5kcyBldGMuIHZpYSByZWFkeS10by11c2UgdGhlbWVzLlxuKi9cbi8qIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLiBCQVNJQyBTVFlMRSAgXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG4ubUN1c3RvbVNjcm9sbGJhciB7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBpbmNoLXpvb207XG4gIHRvdWNoLWFjdGlvbjogcGluY2gtem9vbTtcbiAgLyogZGlyZWN0IHBvaW50ZXIgZXZlbnRzIHRvIGpzICovIH1cblxuLm1DdXN0b21TY3JvbGxiYXIubUNTX25vX3Njcm9sbGJhciwgLm1DdXN0b21TY3JvbGxiYXIubUNTX3RvdWNoX2FjdGlvbiB7XG4gIC1tcy10b3VjaC1hY3Rpb246IGF1dG87XG4gIHRvdWNoLWFjdGlvbjogYXV0bzsgfVxuXG4ubUN1c3RvbVNjcm9sbEJveCB7XG4gIC8qIGNvbnRhaW5zIHBsdWdpbidzIG1hcmt1cCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvdXRsaW5lOiBub25lO1xuICBkaXJlY3Rpb246IGx0cjsgfVxuXG4ubUNTQl9jb250YWluZXIge1xuICAvKiBjb250YWlucyB0aGUgb3JpZ2luYWwgY29udGVudCAqL1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4yLiBWRVJUSUNBTCBTQ1JPTExCQVIgXG55LWF4aXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lciB7XG4gIG1hcmdpbi1yaWdodDogMzBweDsgfVxuXG4ubUNTQl9jb250YWluZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbiB7XG4gIG1hcmdpbi1yaWdodDogMDsgfVxuXG4vKiBub24tdmlzaWJsZSBzY3JvbGxiYXIgKi9cbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lciB7XG4gIC8qIFJUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAzMHB4OyB9XG5cbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lci5tQ1Nfbm9fc2Nyb2xsYmFyX3kubUNTX3lfaGlkZGVuIHtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLyogUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXG4ubUNTQl9zY3JvbGxUb29scyB7XG4gIC8qIGNvbnRhaW5zIHNjcm9sbGJhciBtYXJrdXAgKGRyYWdnYWJsZSBlbGVtZW50LCBkcmFnZ2VyIHJhaWwsIGJ1dHRvbnMgZXRjLikgKi9cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7IH1cblxuLm1DU0Jfb3V0c2lkZSArIC5tQ1NCX3Njcm9sbFRvb2xzIHtcbiAgcmlnaHQ6IC0yNnB4OyB9XG5cbi8qIHNjcm9sbGJhciBwb3NpdGlvbjogb3V0c2lkZSAqL1xuLm1DUy1kaXItcnRsID4gLm1DU0JfaW5zaWRlID4gLm1DU0Jfc2Nyb2xsVG9vbHMsXG4ubUNTLWRpci1ydGwgPiAubUNTQl9vdXRzaWRlICsgLm1DU0Jfc2Nyb2xsVG9vbHMge1xuICAvKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7IH1cblxuLm1DUy1kaXItcnRsID4gLm1DU0Jfb3V0c2lkZSArIC5tQ1NCX3Njcm9sbFRvb2xzIHtcbiAgbGVmdDogLTI2cHg7IH1cblxuLyogUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyIChzY3JvbGxiYXIgcG9zaXRpb246IG91dHNpZGUpICovXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyQ29udGFpbmVyIHtcbiAgLyogY29udGFpbnMgdGhlIGRyYWdnYWJsZSBlbGVtZW50IGFuZCBkcmFnZ2VyIHJhaWwgbWFya3VwICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgYSArIC5tQ1NCX2RyYWdnZXJDb250YWluZXIge1xuICBtYXJnaW46IDIwcHggMDsgfVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIHdpZHRoOiAycHg7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTZweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAxNnB4O1xuICBib3JkZXItcmFkaXVzOiAxNnB4OyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIge1xuICAvKiB0aGUgZHJhZ2dhYmxlIGVsZW1lbnQgKi9cbiAgY3Vyc29yOiBwb2ludGVyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzMHB4O1xuICAvKiBtaW5pbXVtIGRyYWdnZXIgaGVpZ2h0ICovXG4gIHotaW5kZXg6IDE7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIC8qIHRoZSBkcmFnZ2VyIGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogNHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMTZweDtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgd2lkdGg6IDEycHg7XG4gIC8qIGF1dG8tZXhwYW5kZWQgc2Nyb2xsYmFyICovIH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCArIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWwge1xuICB3aWR0aDogOHB4O1xuICAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqLyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMjBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMCBhdXRvO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biB7XG4gIGJvdHRvbTogMDsgfVxuXG4vKiBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMy4gSE9SSVpPTlRBTCBTQ1JPTExCQVIgXG54LWF4aXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi5tQ1NCX2hvcml6b250YWwubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXIge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLm1DU0JfaG9yaXpvbnRhbC5tQ1NCX291dHNpZGUgPiAubUNTQl9jb250YWluZXIge1xuICBtaW4taGVpZ2h0OiAxMDAlOyB9XG5cbi5tQ1NCX2hvcml6b250YWwgPiAubUNTQl9jb250YWluZXIubUNTX25vX3Njcm9sbGJhcl94Lm1DU194X2hpZGRlbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLyogbm9uLXZpc2libGUgc2Nyb2xsYmFyICovXG4ubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwge1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiAxNnB4O1xuICB0b3A6IGF1dG87XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7IH1cblxuLm1DdXN0b21TY3JvbGxCb3ggKyAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwsXG4ubUN1c3RvbVNjcm9sbEJveCArIC5tQ1NCX3Njcm9sbFRvb2xzICsgLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIHtcbiAgYm90dG9tOiAtMjZweDsgfVxuXG4vKiBzY3JvbGxiYXIgcG9zaXRpb246IG91dHNpZGUgKi9cbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCBhICsgLm1DU0JfZHJhZ2dlckNvbnRhaW5lciB7XG4gIG1hcmdpbjogMCAyMHB4OyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDRweDtcbiAgbWFyZ2luOiA2cHggMDsgfVxuXG4ubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciB7XG4gIHdpZHRoOiAzMHB4O1xuICAvKiBtaW5pbXVtIGRyYWdnZXIgd2lkdGggKi9cbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNHB4O1xuICBtYXJnaW46IDZweCBhdXRvOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGhlaWdodDogMTJweDtcbiAgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi9cbiAgbWFyZ2luOiAycHggYXV0bzsgfVxuXG4ubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBoZWlnaHQ6IDhweDtcbiAgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi9cbiAgbWFyZ2luOiA0cHggMDsgfVxuXG4ubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfYnV0dG9uTGVmdCxcbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9idXR0b25SaWdodCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMCBhdXRvO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2J1dHRvbkxlZnQge1xuICBsZWZ0OiAwOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9idXR0b25SaWdodCB7XG4gIHJpZ2h0OiAwOyB9XG5cbi8qIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG40LiBWRVJUSUNBTCBBTkQgSE9SSVpPTlRBTCBTQ1JPTExCQVJTIFxueXgtYXhpcyBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIG1hcmdpbi1yaWdodDogMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuXG4ubUNTQl9jb250YWluZXJfd3JhcHBlciA+IC5tQ1NCX2NvbnRhaW5lciB7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4ubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsID4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCB7XG4gIGJvdHRvbTogMjBweDsgfVxuXG4ubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsID4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIHtcbiAgcmlnaHQ6IDIwcHg7IH1cblxuLyogbm9uLXZpc2libGUgaG9yaXpvbnRhbCBzY3JvbGxiYXIgKi9cbi5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyLm1DU19ub19zY3JvbGxiYXJfeC5tQ1NfeF9oaWRkZW4gKyAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsIHtcbiAgYm90dG9tOiAwOyB9XG5cbi8qIG5vbi12aXNpYmxlIHZlcnRpY2FsIHNjcm9sbGJhci9SVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cbi5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyLm1DU19ub19zY3JvbGxiYXJfeS5tQ1NfeV9oaWRkZW4gKyAubUNTQl9zY3JvbGxUb29scyB+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCxcbi5tQ1MtZGlyLXJ0bCA+IC5tQ3VzdG9tU2Nyb2xsQm94Lm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbC5tQ1NCX2luc2lkZSA+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCB7XG4gIHJpZ2h0OiAwOyB9XG5cbi8qIFJUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xuLm1DUy1kaXItcnRsID4gLm1DdXN0b21TY3JvbGxCb3gubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIHtcbiAgbGVmdDogMjBweDsgfVxuXG4vKiBub24tdmlzaWJsZSBzY3JvbGxiYXIvUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXG4ubUNTLWRpci1ydGwgPiAubUN1c3RvbVNjcm9sbEJveC5tQ1NCX3ZlcnRpY2FsX2hvcml6b250YWwubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3kubUNTX3lfaGlkZGVuICsgLm1DU0Jfc2Nyb2xsVG9vbHMgfiAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwge1xuICBsZWZ0OiAwOyB9XG5cbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyIHtcbiAgLyogUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cblxuLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbiA+IC5tQ1NCX2NvbnRhaW5lciB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl94Lm1DU194X2hpZGRlbiA+IC5tQ1NCX2NvbnRhaW5lciB7XG4gIHBhZGRpbmctYm90dG9tOiAwOyB9XG5cbi5tQ3VzdG9tU2Nyb2xsQm94Lm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyLm1DU19ub19zY3JvbGxiYXJfeS5tQ1NfeV9oaWRkZW4ge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIC8qIG5vbi12aXNpYmxlIHNjcm9sbGJhciAqL1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4vKiBub24tdmlzaWJsZSBob3Jpem9udGFsIHNjcm9sbGJhciAqL1xuLm1DdXN0b21TY3JvbGxCb3gubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl94Lm1DU194X2hpZGRlbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLyogXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjUuIFRSQU5TSVRJT05TICBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi5tQ1NCX3Njcm9sbFRvb2xzLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bixcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDtcbiAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogd2lkdGggLjJzIGVhc2Utb3V0IC4ycywgaGVpZ2h0IC4ycyBlYXNlLW91dCAuMnMsICBtYXJnaW4tbGVmdCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tcmlnaHQgLjJzIGVhc2Utb3V0IC4ycywgIG1hcmdpbi10b3AgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLWJvdHRvbSAuMnMgZWFzZS1vdXQgLjJzLCBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogd2lkdGggLjJzIGVhc2Utb3V0IC4ycywgaGVpZ2h0IC4ycyBlYXNlLW91dCAuMnMsICBtYXJnaW4tbGVmdCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tcmlnaHQgLjJzIGVhc2Utb3V0IC4ycywgIG1hcmdpbi10b3AgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLWJvdHRvbSAuMnMgZWFzZS1vdXQgLjJzLCBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IHdpZHRoIC4ycyBlYXNlLW91dCAuMnMsIGhlaWdodCAuMnMgZWFzZS1vdXQgLjJzLCAgbWFyZ2luLWxlZnQgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLXJpZ2h0IC4ycyBlYXNlLW91dCAuMnMsICBtYXJnaW4tdG9wIC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1ib3R0b20gLjJzIGVhc2Utb3V0IC4ycywgb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiB3aWR0aCAuMnMgZWFzZS1vdXQgLjJzLCBoZWlnaHQgLjJzIGVhc2Utb3V0IC4ycywgIG1hcmdpbi1sZWZ0IC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1yaWdodCAuMnMgZWFzZS1vdXQgLjJzLCAgbWFyZ2luLXRvcCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tYm90dG9tIC4ycyBlYXNlLW91dCAuMnMsIG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDsgfVxuXG4vKiBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuNi4gU0NST0xMQkFSIENPTE9SUywgT1BBQ0lUWSBBTkQgQkFDS0dST1VORFMgIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLyogXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG42LjEgVEhFTUVTIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi8qIGRlZmF1bHQgdGhlbWUgKFwibGlnaHRcIikgKi9cbi5tQ1NCX3Njcm9sbFRvb2xzIHtcbiAgb3BhY2l0eTogMC43NTtcbiAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NzUpXCI7XG4gIC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjsgfVxuXG4ubUNTLWF1dG9IaWRlID4gLm1DdXN0b21TY3JvbGxCb3ggPiAubUNTQl9zY3JvbGxUb29scyxcbi5tQ1MtYXV0b0hpZGUgPiAubUN1c3RvbVNjcm9sbEJveCB+IC5tQ1NCX3Njcm9sbFRvb2xzIHtcbiAgb3BhY2l0eTogMDtcbiAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MClcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTApXCI7IH1cblxuLm1DdXN0b21TY3JvbGxiYXIgPiAubUN1c3RvbVNjcm9sbEJveCA+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnLFxuLm1DdXN0b21TY3JvbGxiYXIgPiAubUN1c3RvbVNjcm9sbEJveCB+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnLFxuLm1DdXN0b21TY3JvbGxCb3g6aG92ZXIgPiAubUNTQl9zY3JvbGxUb29scyxcbi5tQ3VzdG9tU2Nyb2xsQm94OmhvdmVyIH4gLm1DU0Jfc2Nyb2xsVG9vbHMsXG4ubUNTLWF1dG9IaWRlOmhvdmVyID4gLm1DdXN0b21TY3JvbGxCb3ggPiAubUNTQl9zY3JvbGxUb29scyxcbi5tQ1MtYXV0b0hpZGU6aG92ZXIgPiAubUN1c3RvbVNjcm9sbEJveCB+IC5tQ1NCX3Njcm9sbFRvb2xzIHtcbiAgb3BhY2l0eTogMTtcbiAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MTAwKVwiO1xuICAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MTAwKVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT00MClcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTQwKVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTc1KVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT04NSlcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTg1KVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT05MClcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTkwKVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bixcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChtQ1NCX2J1dHRvbnMucG5nKTtcbiAgLyogY3NzIHNwcml0ZXMgKi9cbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgb3BhY2l0eTogMC40O1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT00MClcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTQwKVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xuICAvKiBcbiAgICBzcHJpdGVzIGxvY2F0aW9ucyBcbiAgICBsaWdodDogMCAwLCAtMTZweCAwLCAtMzJweCAwLCAtNDhweCAwLCAwIC03MnB4LCAtMTZweCAtNzJweCwgLTMycHggLTcycHhcbiAgICBkYXJrOiAtODBweCAwLCAtOTZweCAwLCAtMTEycHggMCwgLTEyOHB4IDAsIC04MHB4IC03MnB4LCAtOTZweCAtNzJweCwgLTExMnB4IC03MnB4XG4gICAgKi8gfVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjBweDtcbiAgLyogXG4gICAgc3ByaXRlcyBsb2NhdGlvbnNcbiAgICBsaWdodDogMCAtMjBweCwgLTE2cHggLTIwcHgsIC0zMnB4IC0yMHB4LCAtNDhweCAtMjBweCwgMCAtOTJweCwgLTE2cHggLTkycHgsIC0zMnB4IC05MnB4XG4gICAgZGFyazogLTgwcHggLTIwcHgsIC05NnB4IC0yMHB4LCAtMTEycHggLTIwcHgsIC0xMjhweCAtMjBweCwgLTgwcHggLTkycHgsIC05NnB4IC05MnB4LCAtMTEyIC05MnB4XG4gICAgKi8gfVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNDBweDtcbiAgLyogXG4gICAgc3ByaXRlcyBsb2NhdGlvbnMgXG4gICAgbGlnaHQ6IDAgLTQwcHgsIC0yMHB4IC00MHB4LCAtNDBweCAtNDBweCwgLTYwcHggLTQwcHgsIDAgLTExMnB4LCAtMjBweCAtMTEycHgsIC00MHB4IC0xMTJweFxuICAgIGRhcms6IC04MHB4IC00MHB4LCAtMTAwcHggLTQwcHgsIC0xMjBweCAtNDBweCwgLTE0MHB4IC00MHB4LCAtODBweCAtMTEycHgsIC0xMDBweCAtMTEycHgsIC0xMjBweCAtMTEycHhcbiAgICAqLyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNTZweDtcbiAgLyogXG4gICAgc3ByaXRlcyBsb2NhdGlvbnMgXG4gICAgbGlnaHQ6IDAgLTU2cHgsIC0yMHB4IC01NnB4LCAtNDBweCAtNTZweCwgLTYwcHggLTU2cHgsIDAgLTEyOHB4LCAtMjBweCAtMTI4cHgsIC00MHB4IC0xMjhweFxuICAgIGRhcms6IC04MHB4IC01NnB4LCAtMTAwcHggLTU2cHgsIC0xMjBweCAtNTZweCwgLTE0MHB4IC01NnB4LCAtODBweCAtMTI4cHgsIC0xMDBweCAtMTI4cHgsIC0xMjBweCAtMTI4cHhcbiAgICAqLyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwOmhvdmVyLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bjpob3Zlcixcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQ6aG92ZXIsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodDpob3ZlciB7XG4gIG9wYWNpdHk6IDAuNzU7XG4gIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTc1KVwiO1xuICAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NzUpXCI7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXA6YWN0aXZlLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bjphY3RpdmUsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0OmFjdGl2ZSxcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0OmFjdGl2ZSB7XG4gIG9wYWNpdHk6IDAuOTtcbiAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9OTApXCI7XG4gIC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT05MClcIjsgfVxuXG4vKiB0aGVtZTogXCJkYXJrXCIgKi9cbi5tQ1MtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjE1KTsgfVxuXG4ubUNTLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTsgfVxuXG4ubUNTLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTsgfVxuXG4ubUNTLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTsgfVxuXG4ubUNTLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IDA7IH1cblxuLm1DUy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0yMHB4OyB9XG5cbi5tQ1MtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtNDBweDsgfVxuXG4ubUNTLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC01NnB4OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIHRoZW1lOiBcImxpZ2h0LTJcIiwgXCJkYXJrLTJcIiAqL1xuLm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWRhcmstMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgd2lkdGg6IDRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDFweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAxcHg7XG4gIGJvcmRlci1yYWRpdXM6IDFweDsgfVxuXG4ubUNTLWxpZ2h0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgd2lkdGg6IDRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxcHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMXB4O1xuICBib3JkZXItcmFkaXVzOiAxcHg7IH1cblxuLm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtbGlnaHQtMi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNHB4O1xuICBtYXJnaW46IDZweCBhdXRvOyB9XG5cbi5tQ1MtbGlnaHQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpOyB9XG5cbi5tQ1MtbGlnaHQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpOyB9XG5cbi5tQ1MtbGlnaHQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggMDsgfVxuXG4ubUNTLWxpZ2h0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTIwcHg7IH1cblxuLm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC00MHB4IC00MHB4OyB9XG5cbi5tQ1MtbGlnaHQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggLTU2cHg7IH1cblxuLyogdGhlbWU6IFwiZGFyay0yXCIgKi9cbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMXB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDFweDtcbiAgYm9yZGVyLXJhZGl1czogMXB4OyB9XG5cbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMXB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDFweDtcbiAgYm9yZGVyLXJhZGl1czogMXB4OyB9XG5cbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSk7IH1cblxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpOyB9XG5cbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggMDsgfVxuXG4ubUNTLWRhcmstMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTIwcHg7IH1cblxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC00MHB4OyB9XG5cbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTU2cHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogdGhlbWU6IFwibGlnaHQtdGhpY2tcIiwgXCJkYXJrLXRoaWNrXCIgKi9cbi5tQ1MtbGlnaHQtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgd2lkdGg6IDRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDJweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICB3aWR0aDogNnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDJweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0cHg7XG4gIG1hcmdpbjogNnB4IDA7IH1cblxuLm1DUy1saWdodC10aGljay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDZweDtcbiAgbWFyZ2luOiA1cHggYXV0bzsgfVxuXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7IH1cblxuLm1DUy1saWdodC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1saWdodC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTsgfVxuXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAwOyB9XG5cbi5tQ1MtbGlnaHQtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTIwcHg7IH1cblxuLm1DUy1saWdodC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjBweCAtNDBweDsgfVxuXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjBweCAtNTZweDsgfVxuXG4vKiB0aGVtZTogXCJkYXJrLXRoaWNrXCIgKi9cbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDJweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4ubUNTLWRhcmstdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAycHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSk7IH1cblxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWRhcmstdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7IH1cblxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAwOyB9XG5cbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMjBweDsgfVxuXG4ubUNTLWRhcmstdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMHB4IC00MHB4OyB9XG5cbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMHB4IC01NnB4OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIHRoZW1lOiBcImxpZ2h0LXRoaW5cIiwgXCJkYXJrLXRoaW5cIiAqL1xuLm1DUy1saWdodC10aGluLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7IH1cblxuLm1DUy1saWdodC10aGluLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtZGFyay10aGluLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIHdpZHRoOiA0cHg7IH1cblxuLm1DUy1saWdodC10aGluLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtZGFyay10aGluLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5tQ1MtbGlnaHQtdGhpbi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtZGFyay10aGluLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNHB4O1xuICBtYXJnaW46IDZweCBhdXRvOyB9XG5cbi8qIHRoZW1lIFwiZGFyay10aGluXCIgKi9cbi5tQ1MtZGFyay10aGluLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNDM0MzQzM7IH1cblxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIC8qIGJhY2tncm91bmQtY29sb3I6ICMwMDA7ICovXG4gIGJhY2tncm91bmQtY29sb3I6ICNGN0ZBRkE7IH1cblxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTsgfVxuXG4ubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7IH1cblxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IDA7IH1cblxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTIwcHg7IH1cblxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTQwcHg7IH1cblxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC01NnB4OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIHRoZW1lIFwicm91bmRlZFwiLCBcInJvdW5kZWQtZGFya1wiLCBcInJvdW5kZWQtZG90c1wiLCBcInJvdW5kZWQtZG90cy1kYXJrXCIgKi9cbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTsgfVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLFxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLFxuLm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIge1xuICBoZWlnaHQ6IDE0cHg7IH1cblxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgd2lkdGg6IDE0cHg7XG4gIG1hcmdpbjogMCAxcHg7IH1cblxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyLFxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIsXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlcixcbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIge1xuICB3aWR0aDogMTRweDsgfVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGhlaWdodDogMTRweDtcbiAgbWFyZ2luOiAxcHggMDsgfVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIHdpZHRoOiAxNnB4O1xuICAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqL1xuICBoZWlnaHQ6IDE2cHg7XG4gIG1hcmdpbjogLTFweCAwOyB9XG5cbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkICsgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgd2lkdGg6IDRweDtcbiAgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi8gfVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgaGVpZ2h0OiAxNnB4O1xuICAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqL1xuICB3aWR0aDogMTZweDtcbiAgbWFyZ2luOiAwIC0xcHg7IH1cblxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkICsgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIGhlaWdodDogNHB4O1xuICAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqL1xuICBtYXJnaW46IDZweCAwOyB9XG5cbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNzJweDsgfVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtOTJweDsgfVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTEycHg7IH1cblxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMjhweDsgfVxuXG4vKiB0aGVtZSBcInJvdW5kZWQtZGFya1wiLCBcInJvdW5kZWQtZG90cy1kYXJrXCIgKi9cbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTsgfVxuXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjE1KTsgfVxuXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSk7IH1cblxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTsgfVxuXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTcycHg7IH1cblxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTkycHg7IH1cblxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTExMnB4OyB9XG5cbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMTI4cHg7IH1cblxuLyogdGhlbWUgXCJyb3VuZGVkLWRvdHNcIiwgXCJyb3VuZGVkLWRvdHMtZGFya1wiICovXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgd2lkdGg6IDRweDsgfVxuXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyB9XG5cbi5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFnQUFBQUlDQVlBQUFERUQ3NkxBQUFBTkVsRVFWUVlWMk5rSUFBWWlWYncvLzkvWTZEaU0xQU5Kb3lNakdkQmJMZ0pRQVgva1UwREtnRExrYVFBdnhXNEhFdlFGd0NSY3hJSksxWHpuQUFBQUFCSlJVNUVya0pnZ2c9PVwiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15O1xuICBvcGFjaXR5OiAwLjM7XG4gIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTMwKVwiO1xuICAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MzApXCI7IH1cblxuLm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBoZWlnaHQ6IDRweDtcbiAgbWFyZ2luOiA2cHggMDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14OyB9XG5cbi5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtNzJweDsgfVxuXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtOTJweDsgfVxuXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjBweCAtMTEycHg7IH1cblxuLm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0yMHB4IC0xMjhweDsgfVxuXG4vKiB0aGVtZSBcInJvdW5kZWQtZG90cy1kYXJrXCIgKi9cbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQWdBQUFBSUNBWUFBQURFRDc2TEFBQUFMRWxFUVZRWVYyTmtJQUFZU1ZGZ0RGUjhCcXJCQkVpZkJiR1JUZmlQWmhwWWppUUZCSzNBNmw2Q3ZnQUFFOWtHQ2QxbXZnRUFBQUFBU1VWT1JLNUNZSUk9XCIpOyB9XG5cbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC03MnB4OyB9XG5cbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTkycHg7IH1cblxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTAwcHggLTExMnB4OyB9XG5cbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDBweCAtMTI4cHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogdGhlbWUgXCIzZFwiLCBcIjNkLWRhcmtcIiwgXCIzZC10aGlja1wiLCBcIjNkLXRoaWNrLWRhcmtcIiAqL1xuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15O1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBjb2xvci1zdG9wKDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkpLCBjb2xvci1zdG9wKDEwMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7IH1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkpLCBjb2xvci1zdG9wKDEwMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpOyB9XG5cbi8qIHRoZW1lIFwiM2RcIiwgXCIzZC1kYXJrXCIgKi9cbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCAubUNTQl9kcmFnZ2VyLFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwgLm1DU0JfZHJhZ2dlciB7XG4gIGhlaWdodDogNzBweDsgfVxuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyLFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIHtcbiAgd2lkdGg6IDcwcHg7IH1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzLFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMge1xuICBvcGFjaXR5OiAxO1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0zMClcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTMwKVwiOyB9XG5cbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxNnB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7IH1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICB3aWR0aDogOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGJveC1zaGFkb3c6IGluc2V0IDFweCAwIDFweCByZ2JhKDAsIDAsIDAsIDAuNSksIGluc2V0IC0xcHggMCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpOyB9XG5cbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NTU7IH1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgd2lkdGg6IDhweDsgfVxuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA4cHg7XG4gIG1hcmdpbjogNHB4IDA7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuNSksIGluc2V0IDAgLTFweCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpOyB9XG5cbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA4cHg7XG4gIG1hcmdpbjogNHB4IGF1dG87IH1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTcycHg7IH1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtOTJweDsgfVxuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC00MHB4IC0xMTJweDsgfVxuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtMTI4cHg7IH1cblxuLyogdGhlbWUgXCIzZC1kYXJrXCIgKi9cbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3gtc2hhZG93OiBpbnNldCAxcHggMCAxcHggcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC03MnB4OyB9XG5cbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTkycHg7IH1cblxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjBweCAtMTEycHg7IH1cblxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTEyOHB4OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIHRoZW1lOiBcIjNkLXRoaWNrXCIsIFwiM2QtdGhpY2stZGFya1wiICovXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMsXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyB7XG4gIG9wYWNpdHk6IDE7XG4gIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTMwKVwiO1xuICAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MzApXCI7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzLFxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMsXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcixcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJDb250YWluZXIge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDdweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA3cHg7XG4gIGJvcmRlci1yYWRpdXM6IDdweDsgfVxuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuXG4ubUNTQl9pbnNpZGUgKyAubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwsXG4ubUNTQl9pbnNpZGUgKyAubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCB7XG4gIHJpZ2h0OiAxcHg7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLFxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwge1xuICBib3gtc2hhZG93OiBpbnNldCAxcHggMCAxcHggcmdiYSgwLCAwLCAwLCAwLjEpLCBpbnNldCAwIDAgMTRweCByZ2JhKDAsIDAsIDAsIDAuNSk7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwsXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIHtcbiAgYm90dG9tOiAxcHg7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMSksIGluc2V0IDAgMCAxNHB4IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBib3gtc2hhZG93OiBpbnNldCAxcHggMCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbiAgd2lkdGg6IDEycHg7XG4gIG1hcmdpbjogMnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogYXV0bztcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwOyB9XG5cbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTsgfVxuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NTU7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGhlaWdodDogMTJweDtcbiAgd2lkdGg6IGF1dG87IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJDb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBib3gtc2hhZG93OiBpbnNldCAxcHggMXB4IDE2cHggcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC03MnB4OyB9XG5cbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTkycHg7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtMTEycHg7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggLTEyOHB4OyB9XG5cbi8qIHRoZW1lOiBcIjNkLXRoaWNrLWRhcmtcIiAqL1xuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMTRweCByZ2JhKDAsIDAsIDAsIDAuMik7IH1cblxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMSksIGluc2V0IDAgMCAxNHB4IHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMXB4IDAgMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCksIGluc2V0IC0xcHggMCAwIHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KSwgaW5zZXQgMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG5cbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzc3OyB9XG5cbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJDb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBib3gtc2hhZG93OiBpbnNldCAxcHggMXB4IDE2cHggcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTcycHg7IH1cblxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtOTJweDsgfVxuXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC0xMTJweDsgfVxuXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjBweCAtMTI4cHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogdGhlbWU6IFwibWluaW1hbFwiLCBcIm1pbmltYWwtZGFya1wiICovXG4ubUNTQl9vdXRzaWRlICsgLm1DUy1taW5pbWFsLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwsXG4ubUNTQl9vdXRzaWRlICsgLm1DUy1taW5pbWFsLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCB7XG4gIHJpZ2h0OiAwO1xuICBtYXJnaW46IDEycHggMDsgfVxuXG4ubUN1c3RvbVNjcm9sbEJveC5tQ1MtbWluaW1hbCArIC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCxcbi5tQ3VzdG9tU2Nyb2xsQm94Lm1DUy1taW5pbWFsICsgLm1DU0Jfc2Nyb2xsVG9vbHMgKyAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwsXG4ubUN1c3RvbVNjcm9sbEJveC5tQ1MtbWluaW1hbC1kYXJrICsgLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLFxuLm1DdXN0b21TY3JvbGxCb3gubUNTLW1pbmltYWwtZGFyayArIC5tQ1NCX3Njcm9sbFRvb2xzICsgLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIHtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW46IDAgMTJweDsgfVxuXG4vKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX291dHNpZGUgKyAubUNTLW1pbmltYWwubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCxcbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX291dHNpZGUgKyAubUNTLW1pbmltYWwtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsIHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87IH1cblxuLm1DUy1taW5pbWFsLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLW1pbmltYWwtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLm1DUy1taW5pbWFsLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwgLm1DU0JfZHJhZ2dlcixcbi5tQ1MtbWluaW1hbC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwgLm1DU0JfZHJhZ2dlciB7XG4gIGhlaWdodDogNTBweDsgfVxuXG4ubUNTLW1pbmltYWwubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIsXG4ubUNTLW1pbmltYWwtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciB7XG4gIHdpZHRoOiA1MHB4OyB9XG5cbi5tQ1MtbWluaW1hbC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTIwKVwiO1xuICAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MjApXCI7IH1cblxuLm1DUy1taW5pbWFsLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLW1pbmltYWwubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTUwKVwiO1xuICAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NTApXCI7IH1cblxuLyogdGhlbWU6IFwibWluaW1hbC1kYXJrXCIgKi9cbi5tQ1MtbWluaW1hbC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MjApXCI7XG4gIC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0yMClcIjsgfVxuXG4ubUNTLW1pbmltYWwtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1taW5pbWFsLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTUwKVwiO1xuICAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NTApXCI7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogdGhlbWUgXCJsaWdodC0zXCIsIFwiZGFyay0zXCIgKi9cbi5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIHdpZHRoOiA2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuXG4ubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgd2lkdGg6IDZweDsgfVxuXG4ubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA2cHg7XG4gIG1hcmdpbjogNXB4IDA7IH1cblxuLm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCArIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWwge1xuICB3aWR0aDogMTJweDsgfVxuXG4ubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCArIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgaGVpZ2h0OiAxMnB4O1xuICBtYXJnaW46IDJweCAwOyB9XG5cbi5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTcycHg7IH1cblxuLm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC05MnB4OyB9XG5cbi5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtMTEycHg7IH1cblxuLm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtMTI4cHg7IH1cblxuLyogdGhlbWUgXCJkYXJrLTNcIiAqL1xuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTsgfVxuXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpOyB9XG5cbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTsgfVxuXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTcycHg7IH1cblxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC05MnB4OyB9XG5cbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjBweCAtMTEycHg7IH1cblxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjBweCAtMTI4cHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogdGhlbWUgXCJpbnNldFwiLCBcImluc2V0LWRhcmtcIiwgXCJpbnNldC0yXCIsIFwiaW5zZXQtMi1kYXJrXCIsIFwiaW5zZXQtM1wiLCBcImluc2V0LTMtZGFya1wiICovXG4ubUNTLWluc2V0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtaW5zZXQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIHdpZHRoOiAxMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7IH1cblxuLm1DUy1pbnNldC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICB3aWR0aDogNnB4O1xuICBtYXJnaW46IDNweCA1cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiBhdXRvO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7IH1cblxuLm1DUy1pbnNldC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtMi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBoZWlnaHQ6IDZweDtcbiAgbWFyZ2luOiA1cHggM3B4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiBhdXRvO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7IH1cblxuLm1DUy1pbnNldC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1pbnNldC0yLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMnB4O1xuICBtYXJnaW46IDJweCAwOyB9XG5cbi5tQ1MtaW5zZXQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCxcbi5tQ1MtaW5zZXQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLFxuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtNzJweDsgfVxuXG4ubUNTLWluc2V0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bixcbi5tQ1MtaW5zZXQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24sXG4ubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTkycHg7IH1cblxuLm1DUy1pbnNldC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQsXG4ubUNTLWluc2V0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0LFxuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC00MHB4IC0xMTJweDsgfVxuXG4ubUNTLWluc2V0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQsXG4ubUNTLWluc2V0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCxcbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggLTEyOHB4OyB9XG5cbi8qIHRoZW1lIFwiaW5zZXQtZGFya1wiLCBcImluc2V0LTItZGFya1wiLCBcImluc2V0LTMtZGFya1wiICovXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTsgfVxuXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTsgfVxuXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTsgfVxuXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCxcbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTcycHg7IH1cblxuLm1DUy1pbnNldC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bixcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bixcbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtOTJweDsgfVxuXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0LFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0LFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC0xMTJweDsgfVxuXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCxcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQsXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC0xMjhweDsgfVxuXG4vKiB0aGVtZSBcImluc2V0LTJcIiwgXCJpbnNldC0yLWRhcmtcIiAqL1xuLm1DUy1pbnNldC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMXB4O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDAwO1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuXG4vKiB0aGVtZSBcImluc2V0LTNcIiwgXCJpbnNldC0zLWRhcmtcIiAqL1xuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7IH1cblxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTsgfVxuXG4ubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTsgfVxuXG4ubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTsgfVxuXG4ubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTsgfVxuXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpOyB9XG5cbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7IH1cblxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qKlxuICogT3dsIENhcm91c2VsIHYyLjMuNFxuICogQ29weXJpZ2h0IDIwMTMtMjAxOCBEYXZpZCBEZXV0c2NoXG4gKiBMaWNlbnNlZCB1bmRlcjogU0VFIExJQ0VOU0UgSU4gaHR0cHM6Ly9naXRodWIuY29tL093bENhcm91c2VsMi9Pd2xDYXJvdXNlbDIvYmxvYi9tYXN0ZXIvTElDRU5TRVxuICovXG4ub3dsLWNhcm91c2VsLCAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSB7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ub3dsLWNhcm91c2VsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDE7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4tWTtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG4gIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiLlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGhlaWdodDogMDsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2Utb3V0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSwgLm93bC1jYXJvdXNlbCAub3dsLXdyYXBwZXIge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSB7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1kb3RzLmRpc2FibGVkLCAub3dsLWNhcm91c2VsIC5vd2wtbmF2LmRpc2FibGVkIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubm8tanMgLm93bC1jYXJvdXNlbCwgLm93bC1jYXJvdXNlbC5vd2wtbG9hZGVkIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWRvdCwgLm93bC1jYXJvdXNlbCAub3dsLW5hdiAub3dsLW5leHQsIC5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgLm93bC1wcmV2IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLW5hdiBidXR0b24ub3dsLW5leHQsIC5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgYnV0dG9uLm93bC1wcmV2LCAub3dsLWNhcm91c2VsIGJ1dHRvbi5vd2wtZG90IHtcbiAgYmFja2dyb3VuZDogMCAwO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIGZvbnQ6IGluaGVyaXQ7IH1cblxuLm93bC1jYXJvdXNlbC5vd2wtbG9hZGluZyB7XG4gIG9wYWNpdHk6IDA7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLWhpZGRlbiB7XG4gIG9wYWNpdHk6IDA7IH1cblxuLm93bC1jYXJvdXNlbC5vd2wtcmVmcmVzaCAub3dsLWl0ZW0ge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLm93bC1jYXJvdXNlbC5vd2wtZHJhZyAub3dsLWl0ZW0ge1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG4ub3dsLWNhcm91c2VsLm93bC1ncmFiIHtcbiAgY3Vyc29yOiBtb3ZlO1xuICBjdXJzb3I6IGdyYWI7IH1cblxuLm93bC1jYXJvdXNlbC5vd2wtcnRsIHtcbiAgZGlyZWN0aW9uOiBydGw7IH1cblxuLm93bC1jYXJvdXNlbC5vd2wtcnRsIC5vd2wtaXRlbSB7XG4gIGZsb2F0OiByaWdodDsgfVxuXG4ub3dsLWNhcm91c2VsIC5hbmltYXRlZCB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWFuaW1hdGVkLWluIHtcbiAgei1pbmRleDogMDsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtYW5pbWF0ZWQtb3V0IHtcbiAgei1pbmRleDogMTsgfVxuXG4ub3dsLWNhcm91c2VsIC5mYWRlT3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7IH1cblxuQGtleWZyYW1lcyBmYWRlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbi5vd2wtaGVpZ2h0IHtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IC41cyBlYXNlLWluLW91dDsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenkge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC40cyBlYXNlOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIC5vd2wtbGF6eTpub3QoW3NyY10pLCAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenlbc3JjXj1cIlwiXSB7XG4gIG1heC1oZWlnaHQ6IDA7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nLm93bC1sYXp5IHtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjMDAwOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5LWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogODBweDtcbiAgd2lkdGg6IDgwcHg7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtNDBweDtcbiAgbWFyZ2luLXRvcDogLTQwcHg7XG4gIGJhY2tncm91bmQ6IHVybChvd2wudmlkZW8ucGxheS5wbmcpIG5vLXJlcGVhdDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiAxO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4xcyBlYXNlOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5LWljb246aG92ZXIge1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjMsIDEuMyk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4zLCAxLjMpOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5aW5nIC5vd2wtdmlkZW8tcGxheS1pY29uLCAub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheWluZyAub3dsLXZpZGVvLXRuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tdG4ge1xuICBvcGFjaXR5OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNHMgZWFzZTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tZnJhbWUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLyoqXG4gKiBPd2wgQ2Fyb3VzZWwgdjIuMy40XG4gKiBDb3B5cmlnaHQgMjAxMy0yMDE4IERhdmlkIERldXRzY2hcbiAqIExpY2Vuc2VkIHVuZGVyOiBTRUUgTElDRU5TRSBJTiBodHRwczovL2dpdGh1Yi5jb20vT3dsQ2Fyb3VzZWwyL093bENhcm91c2VsMi9ibG9iL21hc3Rlci9MSUNFTlNFXG4gKi9cbi5vd2wtdGhlbWUgLm93bC1kb3RzLCAub3dsLXRoZW1lIC5vd2wtbmF2IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5vd2wtdGhlbWUgLm93bC1uYXYge1xuICBtYXJnaW4tdG9wOiAxMHB4OyB9XG5cbi5vd2wtdGhlbWUgLm93bC1uYXYgW2NsYXNzKj1vd2wtXSB7XG4gIGNvbG9yOiAjRkZGO1xuICBmb250LXNpemU6IDE0cHg7XG4gIG1hcmdpbjogNXB4O1xuICBwYWRkaW5nOiA0cHggN3B4O1xuICBiYWNrZ3JvdW5kOiAjRDZENkQ2O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogM3B4OyB9XG5cbi5vd2wtdGhlbWUgLm93bC1uYXYgW2NsYXNzKj1vd2wtXTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICM4Njk3OTE7XG4gIGNvbG9yOiAjRkZGO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLm93bC10aGVtZSAub3dsLW5hdiAuZGlzYWJsZWQge1xuICBvcGFjaXR5OiAuNTtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbi5vd2wtdGhlbWUgLm93bC1uYXYuZGlzYWJsZWQgKyAub3dsLWRvdHMge1xuICBtYXJnaW4tdG9wOiAxMHB4OyB9XG5cbi5vd2wtdGhlbWUgLm93bC1kb3RzIC5vd2wtZG90IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB6b29tOiAxOyB9XG5cbi5vd2wtdGhlbWUgLm93bC1kb3RzIC5vd2wtZG90IHNwYW4ge1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4O1xuICBtYXJnaW46IDVweCA3cHg7XG4gIGJhY2tncm91bmQ6ICNENkQ2RDY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2U7XG4gIGJvcmRlci1yYWRpdXM6IDMwcHg7IH1cblxuLm93bC10aGVtZSAub3dsLWRvdHMgLm93bC1kb3QuYWN0aXZlIHNwYW4sIC5vd2wtdGhlbWUgLm93bC1kb3RzIC5vd2wtZG90OmhvdmVyIHNwYW4ge1xuICBiYWNrZ3JvdW5kOiAjODY5NzkxOyB9XG5cbi8qXG4gKiBTbWFyVGlja2VyIFZlcnNpb24gMS41XG4gKiBodHRwOi8vcG93ZXJ1cC5pci9wcm9qZWN0cy9zbWFydGlja2VyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTQgTWVnaGRhZCBIYWRpZGlcbiAqL1xuLnNtYXJ0aWNrZXIge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXJlY3Rpb246IGx0cjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5ib3gge1xuICBtaW4taGVpZ2h0OiAzMHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4uYm9yZGVyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYzsgfVxuXG4ucm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7IH1cblxuLnNoYWRvdyB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggNXB4ICM5OTk7IH1cblxuLnNpemUxIHtcbiAgaGVpZ2h0OiAzMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5zbWFydGlja2VyIC5zZWMxLCAuc21hcnRpY2tlciAuc2VjMS0yLCAuc21hcnRpY2tlciAuc2VjMiwgLnNtYXJ0aWNrZXIgLnNlYzMsIC5zbWFydGlja2VyIC5zZWM0LCAuc21hcnRpY2tlciAuc2VjNSwgLnNtYXJ0aWNrZXIgLnNlYzYsIC5zbWFydGlja2VyIC5zZWM3IHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYXJ0aWNrZXIgLnNlYzEge1xuICBtaW4td2lkdGg6IDEwJTsgfVxuXG4uc21hcnRpY2tlciAuc2VjMiB7XG4gIG1pbi13aWR0aDogMjAlOyB9XG5cbi5zbWFydGlja2VyIC5zZWMzIHtcbiAgbWluLXdpZHRoOiAzMy4zMzMlOyB9XG5cbi5zbWFydGlja2VyIC5zZWM0IHtcbiAgbWluLXdpZHRoOiAyNSU7IH1cblxuLnNtYXJ0aWNrZXIgLnNlYzUge1xuICBtaW4td2lkdGg6IDUwJTsgfVxuXG4uc21hcnRpY2tlciAuc2VjNiB7XG4gIG1pbi13aWR0aDogNjAlOyB9XG5cbi5zbWFydGlja2VyIC5zZWM3IHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5zbWFydGlja2VyIC5uZXdzaG9sZGVyLCAucy1ydGwuc21hcnRpY2tlciAubmV3c2hvbGRlciB7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogYXV0bzsgfVxuXG4uc21hcnRpY2tlciB1bCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4uc21hcnRpY2tlciAuc21hcnRpY2tlci1jYXRzLCAuc21hcnRpY2tlci1jYXRzIC5jYXRsaXN0LCAuc21hcnRpY2tlciAuc21hcnRpY2tlci1jYXRlZ29yeSwgLnNtYXJ0aWNrZXIgLnNtYXJ0aWNrZXItbmV3cyB7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uc21hcnRpY2tlciAuc21hcnRpY2tlci1jYXRzLCAuc21hcnRpY2tlciAuc21hcnRpY2tlci1jYXRlZ29yeSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLnNtYXJ0aWNrZXIgbGkge1xuICBoZWlnaHQ6IDMwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyOHB4OyB9XG5cbi5zbWFydGlja2VyIGEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLnNtYXJ0aWNrZXIgLnNtYXJ0aWNrZXItbmV3cyB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uc21hcnRpY2tlciAuc21hcnRpY2tlci1uZXdzIHVsIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnNtYXJ0aWNrZXIgLnNtYXJ0aWNrZXItbmV3cyB1bCBsaSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDBweDtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLnNtYXJ0aWNrZXIgLnNtYXJ0aWNrZXItbmV3cyB1bCBsaSBhIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uc21hcnRpY2tlci1jYXRlZ29yeSBhIHtcbiAgZm9udC1mYW1pbHk6IFwiU1RJWCBUd28gVGV4dFwiO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwYWRkaW5nOiAwOyB9XG5cbi5jb3ZlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgei1pbmRleDogMjtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5sdHIgLmZsYXNoZXIge1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsaW5lLWhlaWdodDogMjhweDtcbiAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5ydGwgLmZsYXNoZXIge1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsaW5lLWhlaWdodDogMjhweDtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLnNtYXJ0LWNvbnRyb2xsZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwcHg7XG4gIHRvcDogMHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDM7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnMtcnRsIC5zbWFydC1jb250cm9sbGVyIHtcbiAgbGVmdDogMHB4O1xuICByaWdodDogYXV0bzsgfVxuXG4uc21hcnRpY2tlci1uZXdzIGEge1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC1zaXplOiAxM3B4OyB9XG5cbi5zbWFydGlja2VyLWNhdHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6ICM5OTk7IH1cblxuLnNtYXJ0aWNrZXItY2F0cyBhIHtcbiAgY29sb3I6ICMyYzhhODI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgcGFkZGluZzogMCAxMHB4O1xuICBmb250LWZhbWlseTogXCJTVElYIFR3byBUZXh0XCI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5zbWFydGlja2VyLWNhdGVnb3J5IGEge1xuICBjb2xvcjogIzk5OTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4vKiAtLS0tLS0tLS0tIFRoZW1lIDEgLS0tLS0tLS0tLS0gKi9cbi50aGVtZTEge1xuICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG5cbi50aGVtZTEgLnNtYXJ0aWNrZXItY2F0cyAubGVmdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMHB4O1xuICB3aWR0aDogMjAlO1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLnRoZW1lMSAuc21hcnRpY2tlci1jYXRzIC5yaWdodCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDBweDtcbiAgdG9wOiAwcHg7XG4gIHotaW5kZXg6IDE7XG4gIHdpZHRoOiAyMCU7XG4gIGhlaWdodDogMTAwJTsgfVxuXG4ubm8tY2F0ZWdvcnkgLnNtYXJ0aWNrZXItY2F0cyAubGVmdCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnRoZW1lMSAuZmxhc2hlciB7XG4gIGNvbG9yOiAjNjY2OyB9XG5cbi5zbWFydGlja2VyLWNhdHMgbGkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4udGhlbWUxIC5zbWFydGlja2VyLWNhdHMgdWwgYSBpbWcge1xuICBtYXJnaW46IDAgNXB4IDAgMjBweDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tIFRoZW1lIDIgLS0tLS0tLS0tLS0tICovXG4udGhlbWUyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLnRoZW1lMiAuc21hcnRpY2tlci1uZXdzIGEge1xuICBjb2xvcjogIzFhMWExYTtcbiAgZm9udC1zaXplOiAxMnB4OyB9XG5cbi50aGVtZTIgLnNtYXJ0aWNrZXItY2F0cyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nLWxlZnQ6IDE2cHg7IH1cbiAgLnRoZW1lMiAuc21hcnRpY2tlci1jYXRzOmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogJ3wnO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBjb2xvcjogIzJjOGE4MjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogOHB4O1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIG1hcmdpbjogYXV0byBhdXRvO1xuICAgIGZvbnQtZmFtaWx5OiBcIlNUSVggVHdvIFRleHRcIjtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4udGhlbWUyIC5zbWFydGlja2VyLWNhdHMgLmxlZnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDBweDtcbiAgd2lkdGg6IDIwJTtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi50aGVtZTIgLnNtYXJ0aWNrZXItY2F0cyAucmlnaHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwcHg7XG4gIHRvcDogMHB4O1xuICB6LWluZGV4OiAxO1xuICB3aWR0aDogMjAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm5vLWNhdGVnb3J5IC5zbWFydGlja2VyLWNhdHMgLmxlZnQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi50aGVtZTIgLnNtYXJ0aWNrZXItY2F0cyB1bCBhIHtcbiAgY29sb3I6ICMyYzhhODI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAudGhlbWUyIC5zbWFydGlja2VyLWNhdHMgdWwgYTpmaXJzdC1jaGlsZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4udGhlbWUyIC5zbWFydGlja2VyLWNhdGVnb3J5IGEge1xuICBjb2xvcjogIzY2NjY2NjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi50aGVtZTIgLmZsYXNoZXIge1xuICBjb2xvcjogIzZjNmM2YzsgfVxuXG4udGhlbWUyIC50aWNrZXJ0aXRsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0NTc1ZDQ7IH1cblxuLnRoZW1lMiAuc21hcnRpY2tlci1jYXRzIHVsIGEgaW1nIHtcbiAgbWFyZ2luOiAwIDVweCAwIDIwcHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLSBUaGVtZSAzIC0tLS0tLS0tLS0tLSAqL1xuLnRoZW1lMyB7XG4gIGJhY2tncm91bmQ6ICMzMzM7IH1cblxuLnRoZW1lMyAuc21hcnRpY2tlci1uZXdzIGEge1xuICBjb2xvcjogI2ZmZjsgfVxuXG4udGhlbWUzIC5zbWFydGlja2VyLWNhdHMge1xuICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG5cbi50aGVtZTMgLnNtYXJ0aWNrZXItY2F0cyAubGVmdCwgLnRoZW1lMyAuc21hcnRpY2tlci1jYXRzIC5yaWdodCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnRoZW1lMyAuc21hcnRpY2tlci1jYXRzIGEge1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi50aGVtZTMgLnNtYXJ0aWNrZXItY2F0ZWdvcnkgYSB7XG4gIGNvbG9yOiAjY2NjO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLnRoZW1lMyAuZmxhc2hlciB7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbi50aGVtZTMgLnRpY2tlcnRpdGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NkMDA3NDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tIFRoZW1lIDQgLS0tLS0tLS0tLS0tICovXG4udGhlbWU0IHtcbiAgYmFja2dyb3VuZDogI2ZmZjsgfVxuXG4udGhlbWU0IC5zbWFydGlja2VyLW5ld3MgYSB7XG4gIGNvbG9yOiAjNjY2OyB9XG5cbi50aGVtZTQgLnNtYXJ0aWNrZXItY2F0cyB7XG4gIGJhY2tncm91bmQ6ICM5OTk7IH1cblxuLnRoZW1lNCAuc21hcnRpY2tlci1jYXRzIC5sZWZ0LCAudGhlbWU0IC5zbWFydGlja2VyLWNhdHMgLnJpZ2h0IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4udGhlbWU0IC5zbWFydGlja2VyLWNhdHMgYSB7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLnRoZW1lNCAuc21hcnRpY2tlci1jYXRlZ29yeSBhIHtcbiAgY29sb3I6ICM5OTk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4udGhlbWU0IC5mbGFzaGVyIHtcbiAgY29sb3I6ICM2NjY7IH1cblxuLnRoZW1lNCAudGlja2VydGl0bGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBiNjRmOyB9XG5cbi8qIC0tLS0tLS0tLS0tIFRleHQgQ29udHJvbGxlciAtLS0tLS0tLS0tLS0gKi9cbi5jMSAuc21hcnQtY29udHJvbGxlciBzcGFuIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogI2NjYztcbiAgZm9udC1zaXplOiAxMXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMHB4IDlweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2VlZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgMHM7IH1cblxuLmMxIC5zbWFydC1jb250cm9sbGVyIHNwYW46aG92ZXIge1xuICBjb2xvcjogI2JiYjtcbiAgYmFja2dyb3VuZDogI2VmZWZlZjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgMHM7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzOyB9XG5cbi5jMSAuc21hcnQtY29udHJvbGxlciBzcGFuOmFjdGl2ZSB7XG4gIGNvbG9yOiAjOTk5O1xuICBiYWNrZ3JvdW5kOiAjZGZkZmRmO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW4tb3V0IDBzO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW4tb3V0IDBzO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dCAwcztcbiAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQgMHM7IH1cblxuLyogLS0tLS0tLS0tLS0gQzIgQ29udHJvbGxlciA9IEljb25zIC0tLS0tLS0tLS0tLSAqL1xuLmMyIC5zbWFydC1jb250cm9sbGVyIHNwYW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICBmb250LXNpemU6IDEwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogIzk5OTk5OTtcbiAgdGV4dC1pbmRlbnQ6IC0xMDAwMDBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIGZsb2F0OiBsZWZ0O1xuICBib3JkZXItbGVmdDogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgMHM7IH1cblxuLnMtcnRsLmMyIC5zbWFydC1jb250cm9sbGVyIHNwYW4ge1xuICBib3JkZXItbGVmdDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2VlZTtcbiAgZGlyZWN0aW9uOiBsdHI7IH1cblxuLnRoZW1lMy5jMiAuc21hcnQtY29udHJvbGxlciBzcGFuLCAudGhlbWUyLmMyIC5zbWFydC1jb250cm9sbGVyIHNwYW4ge1xuICBib3JkZXItbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAudGhlbWUzLmMyIC5zbWFydC1jb250cm9sbGVyIHNwYW46YmVmb3JlLCAudGhlbWUyLmMyIC5zbWFydC1jb250cm9sbGVyIHNwYW46YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDRweDsgfVxuXG4udGhlbWUxLmMyIC5zbWFydC1jb250cm9sbGVyIHNwYW4sIC50aGVtZTQuYzIgLnNtYXJ0LWNvbnRyb2xsZXIgc3BhbiB7XG4gIGhlaWdodDogMTAwJTsgfVxuXG4uYzIgLnNtYXJ0LWNvbnRyb2xsZXIgc3Bhbjpob3ZlciB7XG4gIGNvbG9yOiAjYmJiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgMHM7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzOyB9XG5cbi5jMiAuc21hcnQtY29udHJvbGxlciBzcGFuOmFjdGl2ZSB7XG4gIGNvbG9yOiAjOTk5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dCAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dCAwcztcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQgMHM7XG4gIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW4tb3V0IDBzOyB9XG5cbi5jMiAubmV4dC1uZXdzLCAuYzIgLm5leHQtbmV3czphY3RpdmUsIC5jMiAubmV4dC1uZXdzOmhvdmVyIHtcbiAgLypiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvc21hcnRpY2tlci9jb250cm9sbGVyLnBuZycpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7Ki8gfVxuXG4uYzIgLnBhdXNlLW5ld3MsIC5jMiAucGF1c2UtbmV3czphY3RpdmUsIC5jMiAucGF1c2UtbmV3czpob3ZlciB7XG4gIC8qYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvc21hcnRpY2tlci9jb250cm9sbGVyMS5wbmcnKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyovIH1cblxuLmMyIC5wbGF5LW5ld3MsIC5jMiAucGxheS1uZXdzOmFjdGl2ZSwgLmMyIC5wbGF5LW5ld3M6aG92ZXIge1xuICAvKmJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9zbWFydGlja2VyL2NvbnRyb2xsZXIxLnBuZycpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7Ki8gfVxuXG4uYzIgLnBhdXNlLW5ld3M6YmVmb3JlIHtcbiAgY29udGVudDogJ3x8JztcbiAgdGV4dC1pbmRlbnQ6IDA7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5jMiAucGxheS1uZXdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGU5MWEnO1xuICB0ZXh0LWluZGVudDogMDtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLmMyIC5wcmV2LW5ld3M6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZTkxNyc7XG4gIHRleHQtaW5kZW50OiAwO1xuICBmbG9hdDogbGVmdDsgfVxuXG4uYzIgLm5leHQtbmV3czpiZWZvcmUge1xuICBjb250ZW50OiAnXFxlOTE2JztcbiAgdGV4dC1pbmRlbnQ6IDA7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5wcm9ncmVzcy1iYXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgei1pbmRleDogMzsgfVxuXG4ubm8tc3ViY2F0ZWdvcnkgLnNtYXJ0aWNrZXItY2F0ZWdvcnkge1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjY2NjO1xuICBiYWNrZ3JvdW5kOiAjZWVlOyB9XG5cbi50aWNrZXJ0aXRsZSB7XG4gIGhlaWdodDogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMjAwNDg7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAwIDEwcHg7IH1cblxuLnRoZW1lMi5jMiAuc21hcnQtY29udHJvbGxlciBzcGFuOmhvdmVyLCAudGhlbWUzLmMyIC5zbWFydC1jb250cm9sbGVyIHNwYW46aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTU1OyB9XG5cbi50aGVtZTIuYzIgLnNtYXJ0LWNvbnRyb2xsZXIgc3BhbjphY3RpdmUsIC50aGVtZTMuYzIgLnNtYXJ0LWNvbnRyb2xsZXIgc3BhbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzc3OyB9XG5cbi5zbWFydGlja2VyIC5pdGVtLWRhdGUge1xuICBmb250LXNpemU6IDEwcHg7XG4gIG1hcmdpbjogMCA1cHg7XG4gIGNvbG9yOiAjOTk5OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLSAgUlRMIFN1cHBvcnQgLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5zLXJ0bCB7XG4gIGRpcmVjdGlvbjogcnRsOyB9XG5cbi5zLXJ0bCAuc2VjMSwgLnMtcnRsIC5zZWMxLTIsIC5zLXJ0bCAuc2VjMiwgLnMtcnRsIC5zZWMzLCAucy1ydGwgLnNlYzQsIC5zLXJ0bCAuc2VjNSwgLnMtcnRsIC5zZWM2LCAucy1ydGwgLnNlYzcge1xuICBmbG9hdDogbGVmdDsgfVxuXG4ucy1ydGwgLnNtYXJ0aWNrZXItbmV3cyB1bCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDE1cHg7IH1cblxuLnMtcnRsIC5zbWFydGlja2VyLWNhdHMgYSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuXG4ucy1ydGwgLnNtYXJ0aWNrZXItY2F0ZWdvcnkgYSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgcGFkZGluZzogMCA1cHg7XG4gIGNvbG9yOiAjMjUzQzNBO1xuICBmb250LWZhbWlseTogXCJTVElYIFR3byBUZXh0XCI7IH1cblxuLnMtcnRsIC5zbWFydGlja2VyLW5ld3MgYSB7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgZm9udC1mYW1pbHk6IFwiT3Blbi1TYW5zXCI7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tICBSZXNwb25zaXZlIFN1cHBvcnQgLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODUwcHgpIHtcbiAgLnJpZ2h0LCAubGVmdCB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi8qIC0tLS0tLSBuYXZpZ2F0aW9uLCBwYW5lbCBhbmQgc3RpY2t5IGhlYWRlciAtLS0tLS0gU1RBUlQgLS0tLS0tICovXG5oZWFkZXIgLnNvY2lhbHMtYXJlYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgei1pbmRleDogMTtcbiAgbWFyZ2luOiAwLjVyZW0gMCAwOyB9XG5cbmhlYWRlciAjc3RpY2t5LWhlYWRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgei1pbmRleDogMTtcbiAgbWFyZ2luOiAwLjVyZW0gMCAxLjVyZW07IH1cblxuLm5hdi1jb250YWluZXIgPiB1bCA+IGxpIHtcbiAgcGFkZGluZzogMCAwLjYyNXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY2LjI1ZW0pIHtcbiAgICAubmF2LWNvbnRhaW5lciA+IHVsID4gbGkge1xuICAgICAgcGFkZGluZzogMCAwLjg1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzEuODc1ZW0pIHtcbiAgICAubmF2LWNvbnRhaW5lciA+IHVsID4gbGkge1xuICAgICAgcGFkZGluZzogMCAwLjhyZW07IH0gfVxuICAubmF2LWNvbnRhaW5lciA+IHVsID4gbGkgPiBhIHtcbiAgICBwYWRkaW5nOiAwLjhyZW0gMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IDAuODc1cmVtOyB9XG4gICAgLm5hdi1jb250YWluZXIgPiB1bCA+IGxpID4gYTpob3ZlciB7XG4gICAgICBjb2xvcjogIzJjOGE4MjtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC5uYXYtY29udGFpbmVyID4gdWwgPiBsaTpob3ZlciA+IGEge1xuICAgIGNvbG9yOiAjMmM4YTgyO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC5uYXYtY29udGFpbmVyID4gdWwgPiBsaTpob3ZlciA+IC5zdWJtZW51IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLm5hdi1jb250YWluZXIgPiB1bCA+IGxpLmFjdGl2ZSA+IGEge1xuICAgIGNvbG9yOiAjNGQ5OThhO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5uYXYtY29udGFpbmVyID4gdWwgPiBsaS5hY3RpdmUgPiBhOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCAjMmM4YTgyOyB9XG5cbi5uYXYtY29udGFpbmVyIC5zdWJtZW51IHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMjBweCAtMXB4IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDIwcHggLTFweCByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIC1tb3otYm94LXNoYWRvdzogMHB4IDBweCAyMHB4IC0xcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xuICB3aWR0aDogYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiA0O1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIGJvcmRlcjogMDtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICBmb250LXNpemU6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluLW91dDtcbiAgcGFkZGluZzogMzVweCA1MHB4O1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5uYXYtY29udGFpbmVyIC5zdWJtZW51IC5zdWJtZW51LWxpc3Qge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAxLjVyZW0gYXV0byAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoNCwgYXV0byk7XG4gICAgZ3JpZC1hdXRvLWNvbHVtbnM6IDFmcjtcbiAgICBncmlkLWF1dG8tZmxvdzogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAubmF2LWNvbnRhaW5lciAuc3VibWVudSAuc3VibWVudS1saXN0IGxpIHtcbiAgICAgIG1pbi13aWR0aDogMTQwcHg7XG4gICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLm5hdi1jb250YWluZXIgLnN1Ym1lbnUgLnN1Ym1lbnUtbGlzdCBsaSBhIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjdmNjtcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgIHBhZGRpbmc6IDAuNzVyZW07IH1cbiAgICAgICAgLm5hdi1jb250YWluZXIgLnN1Ym1lbnUgLnN1Ym1lbnUtbGlzdCBsaSBhOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjUzYzNhO1xuICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC5uYXYtY29udGFpbmVyIC5zdWJtZW51IGxpIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgIC5uYXYtY29udGFpbmVyIC5zdWJtZW51IGxpLmFjdGl2ZSA+IGEge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogIzJjOGE4MjsgfVxuICAgIC5uYXYtY29udGFpbmVyIC5zdWJtZW51IGxpIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgY29sb3I6IHJnYmEoMjYsIDI2LCAyNiwgMC44KTtcbiAgICAgIHBhZGRpbmc6IDE0cHggMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAgICAgLm5hdi1jb250YWluZXIgLnN1Ym1lbnUgbGkgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjMmM4YTgyOyB9XG5cbi5uYXYtY29udGFpbmVyIC5tZW51IHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLnN0aWNreSAubmF2LWNvbnRhaW5lciAubWVudSB7XG4gICAganVzdGlmeS1jb250ZW50OiBsZWZ0OyB9XG5cbi5zdWJtZW51LnN0eWxlLTEge1xuICBoZWlnaHQ6IGF1dG87IH1cbiAgLnN1Ym1lbnUuc3R5bGUtMTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICB0b3A6IC01cHg7XG4gICAgbGVmdDogMnJlbTtcbiAgICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItbGVmdDogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCAjZmZmZmZmOyB9XG4gIC5zdWJtZW51LnN0eWxlLTEgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5zdWJtZW51LnN0eWxlLTEgPiBkaXY6Zmlyc3QtY2hpbGQ6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkY2RmZGY7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJyZW0pO1xuICAgICAgd2lkdGg6IDFweDtcbiAgICAgIHRvcDogMnJlbTtcbiAgICAgIHJpZ2h0OiAtNDVweDsgfVxuICAuc3VibWVudS5zdHlsZS0xIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtOyB9XG5cbi5tZW51LWNhdGVnb3J5IHtcbiAgbWFyZ2luLXJpZ2h0OiAxMDBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4ubWVudS1oaWdobGlnaHRzIC5tZWRpYS1vYmplY3QtaW1nIHtcbiAgd2lkdGg6IDM2cHg7XG4gIGhlaWdodDogMzZweDsgfVxuICAubWVudS1oaWdobGlnaHRzIC5tZWRpYS1vYmplY3QtaW1nIGEge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZGlzcGxheTogaW5saW5lOyB9XG4gIC5tZW51LWhpZ2hsaWdodHMgLm1lZGlhLW9iamVjdC1pbWcgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7IH1cblxuLm1lbnUtaGlnaGxpZ2h0cyBoNiB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG4gIFtkaXI9XCJsdHJcIl0gLm1lbnUtaGlnaGxpZ2h0cyBoNiB7XG4gICAgZm9udC1mYW1pbHk6IFwiT3Blbi1TYW5zXCI7IH1cbiAgLm1lbnUtaGlnaGxpZ2h0cyBoNiBhIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgIC5tZW51LWhpZ2hsaWdodHMgaDYgYTpob3ZlciB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4ubWVudS1oaWdobGlnaHRzIC5vYmplY3RzLWxpc3Qge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDQsIGF1dG8pO1xuICBncmlkLWF1dG8tY29sdW1uczogMWZyO1xuICBncmlkLWF1dG8tZmxvdzogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi5tZW51LWhpZ2hsaWdodHMgLm9iamVjdC1pdGVtIHtcbiAgbWluLXdpZHRoOiAxMTBweDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLm1lbnUtaGlnaGxpZ2h0cyAub2JqZWN0cy1saXN0Lmhhcy1zZXBhcmF0b3IgLm9iamVjdC1pdGVtOmxhc3QtY2hpbGQge1xuICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4uaGlnaGxpZ2h0cy10aXRsZSB7XG4gIGNvbG9yOiAjMmM4YTgyO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5tYWluLWhlYWRlci1iZWZvcmUge1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RjZGZkZjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5tYWluLWhlYWRlci1iZWZvcmUge1xuICAgICAgei1pbmRleDogOTk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgY29sb3I6ICMyNTNjM2E7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tYWluLWhlYWRlci1iZWZvcmUge1xuICAgICAgcGFkZGluZy10b3A6IDFyZW07IH0gfVxuICBbbGFuZz1cImVuXCJdIC5tYWluLWhlYWRlci1iZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiBcIk9wZW4tU2Fuc1wiOyB9XG4gIC5tYWluLWhlYWRlci1iZWZvcmUgLnRvcC1sYW5ndWFnZXMge1xuICAgIGNvbG9yOiAjOTU5MjkyOyB9XG4gICAgLm1haW4taGVhZGVyLWJlZm9yZSAudG9wLWxhbmd1YWdlcyBhIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgbWFyZ2luOiAwLjVyZW07XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIGFuZCAobWF4LXdpZHRoOiAxMzY4cHgpIHtcbiAgICAgICAgLm1haW4taGVhZGVyLWJlZm9yZSAudG9wLWxhbmd1YWdlcyBhIHtcbiAgICAgICAgICBtYXJnaW46IDdweDsgfSB9XG4gICAgICAubWFpbi1oZWFkZXItYmVmb3JlIC50b3AtbGFuZ3VhZ2VzIGE6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgLm1haW4taGVhZGVyLWJlZm9yZSAudG9wLWxhbmd1YWdlcyBhLmFjdGl2ZSwgLm1haW4taGVhZGVyLWJlZm9yZSAudG9wLWxhbmd1YWdlcyBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICMyYzhhODI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1haW4taGVhZGVyLWJlZm9yZS0tcmlnaHQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH0gfVxuICAubWFpbi1oZWFkZXItYmVmb3JlLS1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubWFpbi1oZWFkZXItYmVmb3JlLS1sZWZ0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAud2VhdGhlci1hcmVhIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgY29sb3I6ICM5NTkyOTI7XG4gICAgbWFyZ2luLWJvdHRvbTogMTJweDsgfSB9XG5cbi53ZWF0aGVyLWFyZWEgYSB7XG4gIGNvbG9yOiBpbmhlcml0OyB9XG4gIC53ZWF0aGVyLWFyZWEgYTpob3ZlciB7XG4gICAgY29sb3I6ICMyYzhhODI7IH1cblxuLndlYXRoZXItYXJlYSBzcGFuIHtcbiAgcGFkZGluZzogMCAzcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAud2VhdGhlci1hcmVhIHNwYW4ge1xuICAgICAgcGFkZGluZzogMC41cmVtIDNweDsgfSB9XG4gIC53ZWF0aGVyLWFyZWEgc3BhbjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi53ZWF0aGVyLWFyZWEgPiBzcGFuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLndlYXRoZXItYXJlYSAud2VhdGhlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC53ZWF0aGVyLWFyZWEgLndlYXRoZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnd0ZW1wIHtcbiAgICBjb2xvcjogIzc5YmZiOTsgfSB9XG5cbi5tYWluLWhlYWRlci1hZnRlcixcbi5tYWluLWhlYWRlci1pbm5lciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGNkZmRmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmRhcmstdGhlbWUgLm1haW4taGVhZGVyLWFmdGVyLCAuZGFyay10aGVtZVxuICAubWFpbi1oZWFkZXItaW5uZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLm1haW4taGVhZGVyLWlubmVyLmhlYWRlci1zdGlja3kge1xuICB6LWluZGV4OiA5O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIC8qIE1vYmlsZSBQb3J0cmF0ZSAtIExhbmRzY2FwZSAqLyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDMyMHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDg5NnB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMikge1xuICAgIC5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5IHtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgIGJvcmRlcjogdHJhbnNwYXJlbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLm1haW4taGVhZGVyLWlubmVyLmhlYWRlci1zdGlja3kge1xuICAgICAgcGFkZGluZzogMXJlbSAwOyB9IH1cbiAgLm1haW4taGVhZGVyLWlubmVyLmhlYWRlci1zdGlja3kgLmxvZ28td2hpdGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreSAubG9nbyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreSAuZm9yLXN0aWNreSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreSAuZm9yLXN0aWNreSA+IGEge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTVweDsgfVxuICAgICAgLm1haW4taGVhZGVyLWlubmVyLmhlYWRlci1zdGlja3kgLmZvci1zdGlja3kgPiBkaXYgPiBhIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7IH0gfVxuICAubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreS5zdGlja3kge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgYm9yZGVyLXRvcDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogdHJhbnNwYXJlbnQ7IH1cbiAgICAubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreS5zdGlja3kgLmxvZ28ge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5hdXRvLWRhcmstdGhlbWUgLm1haW4taGVhZGVyLWlubmVyLmhlYWRlci1zdGlja3kuc3RpY2t5IC5sb2dvOm5vdCgubG9nby0tZGFyay1tb2RlKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5LnN0aWNreSAubG9nby0tZGFyay1tb2RlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAuYXV0by1kYXJrLXRoZW1lIC5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5LnN0aWNreSAubG9nby0tZGFyay1tb2RlIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreS5zdGlja3kgLmljby1zZWFyY2gge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgLm1haW4taGVhZGVyLWlubmVyLmhlYWRlci1zdGlja3kuc3RpY2t5IC5sb2dvLXdoaXRlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreS5zdGlja3kgLmZvci1zdGlja3kge1xuICAgICAgZGlzcGxheTogZmxleDsgfVxuICAgIC5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5LnN0aWNreSA+IGE6aG92ZXIge1xuICAgICAgY29sb3I6ICMyNTNjM2E7IH1cblxuLnNlYXJjaC1idG4ge1xuICBmb250LXNpemU6IDFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2VhcmNoLWJ0biB7XG4gICAgICBoZWlnaHQ6IDMwcHg7IH0gfVxuXG4uaG9sZGVyLXdyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuaG9sZGVyLXdyYXAgLmljby11c2VyIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDsgfSB9XG5cbmhlYWRlciNtYWluLWhlYWRlciB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4tU2Fuc1wiO1xuICB6LWluZGV4OiA5OTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5mcm9udCBoZWFkZXIjbWFpbi1oZWFkZXIsXG4gICAgLmRhcmstdGhlbWUgaGVhZGVyI21haW4taGVhZGVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4ubG9nbyxcbi5sb2dvLXdoaXRlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmxvZ28sXG4gICAgLmxvZ28td2hpdGUge1xuICAgICAgcGFkZGluZzogMC41cmVtOyB9IH1cbiAgLm1haW4taGVhZGVyLWlubmVyIC5sb2dvLCAubWFpbi1oZWFkZXItaW5uZXJcbiAgLmxvZ28td2hpdGUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5zdGlja3kgLmxvZ28sIC5zdGlja3lcbiAgLmxvZ28td2hpdGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgICAuc3RpY2t5IC5sb2dvIGltZywgLnN0aWNreVxuICAgIC5sb2dvLXdoaXRlIGltZyB7XG4gICAgICB3aWR0aDogMTM0cHg7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICAuc3RpY2t5IC5sb2dvIGltZywgLnN0aWNreVxuICAgICAgICAubG9nby13aGl0ZSBpbWcge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2U7IH0gfVxuXG4ubG9nbyBpbWcge1xuICBjb2xvci1zY2hlbWU6IG9ubHkgbGlnaHQ7XG4gIHdpZHRoOiAxNjZweDtcbiAgcGFkZGluZy10b3A6IDEycHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxvZ28gaW1nIHtcbiAgICAgIHdpZHRoOiAyOTBweDsgfSB9XG5cbi5hdXRvLWRhcmstdGhlbWUgLmxvZ286bm90KC5sb2dvLS1kYXJrLW1vZGUpIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubG9nby0tZGFyay1tb2RlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICAuYXV0by1kYXJrLXRoZW1lIC5sb2dvLS1kYXJrLW1vZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5ob2xkZXItYXJlYSB7XG4gICAgbGluZS1oZWlnaHQ6IDA7IH0gfVxuXG5oZWFkZXIgLmhvbGRlci1hcmVhID4gZGl2LFxuI3N0aWNreS1hcmVhIC5ob2xkZXItYXJlYSA+IGRpdixcbi5ob2xkZXItYXJlYSAuaGVhZGVyLXN0aWNreSA+IGRpdiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4ucGRmLWJ0biBzcGFuIHtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cblxuLnBkZi1idG46aG92ZXIgaW1nIHtcbiAgZmlsdGVyOiBicmlnaHRuZXNzKDIwMCUpIGNvbnRyYXN0KDE0MCUpOyB9XG5cbi5sb2dpbi1idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICBsaW5lLWhlaWdodDogMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKG1heC13aWR0aDogMTM2OHB4KSB7XG4gICAgLmxvZ2luLWJ0biBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAubG9naW4tYnRuIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgY29sb3I6ICMyNTNjM2E7XG4gICAgcGFkZGluZzogMCAxcmVtO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKG1heC13aWR0aDogMTM2OHB4KSB7XG4gICAgICAubG9naW4tYnRuIGEge1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDFyZW07IH0gfVxuICAgIC5sb2dpbi1idG4gYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjUzYzNhO1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmxvZ2luLWJ0biBpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtYXgtd2lkdGg6IDEzNjhweCkge1xuICAgICAgLmxvZ2luLWJ0biBpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuLm1haW4taGVhZGVyLWFmdGVyIC5zaG93LXN1Ym1lbnUge1xuICBtYXJnaW4tYm90dG9tOiAzcmVtOyB9XG4gIC5tYWluLWhlYWRlci1hZnRlciAuc2hvdy1zdWJtZW51IGxpLmFjdGl2ZSAuc3VibWVudSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDEzOCwgNTYsIDU2LCAwLjIpOyB9XG5cbi5tZW51LXBhbmVsIHVsIHtcbiAgcGFkZGluZzogMC41cmVtIDAuMnJlbSAxcmVtOyB9XG4gIC5tZW51LXBhbmVsIHVsIGxpIGEge1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMDtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4ubWVudS1wYW5lbCBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAubWVudS1wYW5lbCBsaS5hY3RpdmUgPiBhLFxuICAubWVudS1wYW5lbCBsaS5hY3RpdmUgc3BhbiBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogIzJjOGE4MjsgfVxuICAubWVudS1wYW5lbCBsaS5hY3RpdmUuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50W2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdID4gYSB7XG4gICAgY29sb3I6ICMyYzhhODI7IH1cbiAgLm1lbnUtcGFuZWwgbGk6aG92ZXIgc3BhbiBhIHtcbiAgICBjb2xvcjogIzJjOGE4MjsgfVxuICAubWVudS1wYW5lbCBsaSBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAubWVudS1wYW5lbCBsaSBhIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDAuODVyZW0gMCAxcmVtIDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLm1lbnUtcGFuZWwgbGkgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gICAgLm1lbnUtcGFuZWwgbGkgYTpob3ZlciB7XG4gICAgICBjb2xvcjogIzJjOGE4MjsgfVxuICAgIC5tZW51LXBhbmVsIGxpIGEgaW1nIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuXG4ucGFuZWwtbGFuZ3VhZ2VzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cbiAgLnBhbmVsLWxhbmd1YWdlcyBhIHtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5wYW5lbC1sYW5ndWFnZXMge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cblxuLm1lbnUtcGFuZWwgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tZW51LXBhbmVsIC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOmhvdmVyOmJlZm9yZSB7XG4gIGNvbG9yOiAjMmM4YTgyOyB9XG5cbi5tZW51LXBhbmVsIC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOmJlZm9yZSB7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICBjb250ZW50OiBcIlxcZTkxNlwiO1xuICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgbGluZS1oZWlnaHQ6IDM4cHg7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDE7IH1cblxuLm1lbnUtcGFuZWwgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudFthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSA+IGE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTdcIjsgfVxuXG5Aa2V5ZnJhbWVzIGZhZGVvdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTsgfVxuICA0MCUge1xuICAgIG9wYWNpdHk6IDAuNTsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVvdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTsgfVxuICA0MCUge1xuICAgIG9wYWNpdHk6IDAuNTsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuLm1lbnUtcGFuZWwgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCAuc3VibWVudSB7XG4gIHotaW5kZXg6IDI7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5tZW51LXBhbmVsIC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgLnN1Ym1lbnVbYXJpYS1oaWRkZW49XCJ0cnVlXCJdIHtcbiAgICBhbmltYXRpb246IDAuNXMgZWFzZS1vdXQgbm9ybWFsIGZvcndhcmRzIDEgZmFkZW91dDsgfVxuICAubWVudS1wYW5lbCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50IC5zdWJtZW51IGxpIGEge1xuICAgIGNvbG9yOiAjYjNjN2M1O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cbiAgICAubWVudS1wYW5lbCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50IC5zdWJtZW51IGxpIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICMyYzhhODI7XG4gICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAubWVudS1wYW5lbCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50IC5zdWJtZW51IC5zdWJtZW51IHtcbiAgICBwYWRkaW5nOiAwIDFyZW07IH1cblxuLm1lbnUtcGFuZWwgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCAubWVudS5zdWJtZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgYTo6YmVmb3JlIHtcbiAgbGVmdDogMTBweDsgfVxuXG4uc3RpY2t5LWhlYWRlci1zcGFjZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IGF1dG87XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4ubG9nby13aGl0ZSxcbi5pY28tcGRmLFxuLmljby1zZWFyY2gge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbiNhcmVhLXRvLXN0aWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA5OTk5OTk5O1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgI2FyZWEtdG8tc3RpY2sgLmdyaWQteCB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICNhcmVhLXRvLXN0aWNrIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi5vcGVuZWQge1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDsgfVxuICAub3BlbmVkICNhcmVhLXRvLXN0aWNrLFxuICAub3BlbmVkIC5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5vcGVuZWQgI2FyZWEtdG8tc3RpY2ssXG4gICAgICAub3BlbmVkIC5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7IH0gfVxuICAgIC5vcGVuZWQgI2FyZWEtdG8tc3RpY2sgLmxvZ28sXG4gICAgLm9wZW5lZCAubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreSAubG9nbyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAuYXV0by1kYXJrLXRoZW1lIC5vcGVuZWQgI2FyZWEtdG8tc3RpY2sgLmxvZ286bm90KC5sb2dvLS1kYXJrLW1vZGUpLCAuYXV0by1kYXJrLXRoZW1lXG4gICAgICAub3BlbmVkIC5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5IC5sb2dvOm5vdCgubG9nby0tZGFyay1tb2RlKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5vcGVuZWQgI2FyZWEtdG8tc3RpY2sgLmxvZ28tLWRhcmstbW9kZSxcbiAgICAgIC5vcGVuZWQgLm1haW4taGVhZGVyLWlubmVyLmhlYWRlci1zdGlja3kgLmxvZ28tLWRhcmstbW9kZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgLmF1dG8tZGFyay10aGVtZSAub3BlbmVkICNhcmVhLXRvLXN0aWNrIC5sb2dvLS1kYXJrLW1vZGUsIC5hdXRvLWRhcmstdGhlbWVcbiAgICAgICAgLm9wZW5lZCAubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreSAubG9nby0tZGFyay1tb2RlIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5vcGVuZWQgI2FyZWEtdG8tc3RpY2sgLmxvZ28td2hpdGUsXG4gICAgLm9wZW5lZCAubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreSAubG9nby13aGl0ZSB7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZSAwcztcbiAgICAgIHdpZHRoOiAxNDBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gICAgLm9wZW5lZCAjYXJlYS10by1zdGljayAubG9nby13aGl0ZSxcbiAgICAub3BlbmVkICNhcmVhLXRvLXN0aWNrIC5pY28tcGRmLFxuICAgIC5vcGVuZWQgLm1haW4taGVhZGVyLWlubmVyLmhlYWRlci1zdGlja3kgLmxvZ28td2hpdGUsXG4gICAgLm9wZW5lZCAubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreSAuaWNvLXBkZiB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5vcGVuZWQgI2FyZWEtdG8tc3RpY2sgLnRvZ2dsZS1uYXYtcGFuZWwsXG4gICAgLm9wZW5lZCAubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreSAudG9nZ2xlLW5hdi1wYW5lbCB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5vcGVuZWQgI2FyZWEtdG8tc3RpY2sgLmljby11c2VyLFxuICAgIC5vcGVuZWQgI2FyZWEtdG8tc3RpY2sgLmFjY291bnQtbWVudSxcbiAgICAub3BlbmVkICNhcmVhLXRvLXN0aWNrIC5pY28tc2VhcmNoLFxuICAgIC5vcGVuZWQgLm1haW4taGVhZGVyLWlubmVyLmhlYWRlci1zdGlja3kgLmljby11c2VyLFxuICAgIC5vcGVuZWQgLm1haW4taGVhZGVyLWlubmVyLmhlYWRlci1zdGlja3kgLmFjY291bnQtbWVudSxcbiAgICAub3BlbmVkIC5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5IC5pY28tc2VhcmNoIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm9wZW5lZCAubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreSB7XG4gICAgcGFkZGluZzogMC41cmVtIDNyZW0gMC41cmVtO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNjQ3ZTdjO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyNTNjM2E7IH1cblxuaHRtbC5vcGVuZWQge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi50b2dnbGUtbmF2LXBhbmVsLFxuLnRvZ2dsZS1zZWFyY2gtcGFuZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnRvZ2dsZS1uYXYtcGFuZWwsXG4gICAgLnRvZ2dsZS1zZWFyY2gtcGFuZWwge1xuICAgICAgZm9udC1zaXplOiAxNHB4OyB9IH1cbiAgLnRvZ2dsZS1uYXYtcGFuZWw6aG92ZXIsXG4gIC50b2dnbGUtc2VhcmNoLXBhbmVsOmhvdmVyIHtcbiAgICBjb2xvcjogIzJjOGE4MjsgfVxuICAudG9nZ2xlLW5hdi1wYW5lbC5pcy1hY3RpdmUsXG4gIC50b2dnbGUtc2VhcmNoLXBhbmVsLmlzLWFjdGl2ZSB7XG4gICAgZm9udC1zaXplOiAxLjJyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuc3R1Y2staGVhZGVyIC50b2dnbGUtbmF2LXBhbmVsLCAuc3R1Y2staGVhZGVyXG4gICAgLnRvZ2dsZS1zZWFyY2gtcGFuZWwge1xuICAgICAgZm9udC1zaXplOiAxcmVtOyB9IH1cblxuW2Rpcj1cImx0clwiXSAudG9nZ2xlLW5hdi1wYW5lbCB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKC0xKTsgfVxuXG4uY2FudmFzLXBhbmVsIHtcbiAgcGFkZGluZzogNTBweCA2MHB4O1xuICB0b3A6IDUwcHg7XG4gIGJvdHRvbTogMDtcbiAgaGVpZ2h0OiBhdXRvOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNhbnZhcy1wYW5lbCB7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICBvcGFjaXR5OiAwOyB9IH1cbiAgLmNhbnZhcy1wYW5lbC5zZWFyY2gtY2FudmFzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmNhbnZhcy1wYW5lbCAuc29jaWFscy1hcmVhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxLjI1cmVtIDAgMnJlbTsgfVxuXG4uY2xvc2UtcGFuZWwge1xuICBoZWlnaHQ6IDRyZW07IH1cbiAgLmNsb3NlLXBhbmVsIHNwYW4ge1xuICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBmb250LXNpemU6IDIuMjVyZW07IH1cbiAgICAuY2xvc2UtcGFuZWwgc3Bhbjpob3ZlciB7XG4gICAgICBjb2xvcjogIzJjOGE4MjsgfVxuXG4ucHJpbnQtZWRpdGlvbi1hcmVhIHtcbiAgZm9udC1mYW1pbHk6IFwiT3Blbi1TYW5zXCI7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgcGFkZGluZzogMnJlbSAwO1xuICBib3JkZXItYm90dG9tOiAzcHggZG91YmxlICNkNmQ2ZDY7IH1cbiAgLnByaW50LWVkaXRpb24tYXJlYSBoNiB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgLnByaW50LWVkaXRpb24tYXJlYSBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5wcmludC1lZGl0aW9uLWFyZWEgc3BhbiBhIHtcbiAgICAgIGNvbG9yOiAjNDY0NjQ2OyB9XG4gICAgICAucHJpbnQtZWRpdGlvbi1hcmVhIHNwYW4gYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjMmM4YTgyOyB9XG4gIC5wcmludC1lZGl0aW9uLWFyZWEgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgY29sb3I6ICNhYmFiYWI7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtOyB9XG4gICAgLnByaW50LWVkaXRpb24tYXJlYSBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMmM4YTgyOyB9XG5cbiNzY3JvbGwtY2F0IHtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICAvKiBJbnRlcm5ldCBFeHBsb3JlciAxMCsgKi9cbiAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAvKiBGaXJlZm94ICovXG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAjc2Nyb2xsLWNhdCB7XG4gICAgICB3aWR0aDogMTAwdnc7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH0gfVxuICAjc2Nyb2xsLWNhdDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgLyogU2FmYXJpIGFuZCBDaHJvbWUgKi8gfVxuICAjc2Nyb2xsLWNhdCAubUN1c3RvbVNjcm9sbEJveCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAjc2Nyb2xsLWNhdC5oZWFkZXItdGFnLXdyYXAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbi5oZWFkZXItdGFnLXdyYXAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBtYXJnaW4tYm90dG9tOiAwLjhyZW07IH1cblxuLmhlYWRlci10YWcge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgLyogTW9iaWxlIFBvcnRyYXRlIC0gTGFuZHNjYXBlICovIH1cbiAgLmhlYWRlci10YWcgYSB7XG4gICAgY29sb3I6ICM3MTcxNzE7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGZvbnQtZmFtaWx5OiBcIk9wZW4tU2Fuc1wiO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgcGFkZGluZzogMC41cmVtIDAuOHJlbTsgfVxuICAgIC5oZWFkZXItdGFnIGEuYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAjMmM4YTgyOyB9XG4gICAgICAuZGFyay10aGVtZSAuaGVhZGVyLXRhZyBhLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAjMmM4YTgyOyB9XG4gICAgLmRhcmstdGhlbWUgLmhlYWRlci10YWcgYSB7XG4gICAgICBjb2xvcjogIzcxNzE3MTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA4OTZweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIHtcbiAgICAuaGVhZGVyLXRhZyB7XG4gICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IH0gfVxuXG4ubmF2cGFuZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNTNjM2E7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogOTk7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5uYXZwYW5lbCB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7IH0gfVxuICAubmF2cGFuZWxfX2Zvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogYXV0bzsgfVxuXG4udG9nZ2xlLW1lZ2EtbWVudSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLnRvZ2dsZS1tZWdhLW1lbnU6aG92ZXIge1xuICAgIGNvbG9yOiAjMmM4YTgyOyB9XG5cbi5tZWdhLW1lbnUge1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTcyZjJmO1xuICBwYWRkaW5nOiAxNXB4IDE1cHggNjhweDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogOTsgfVxuICBAbWVkaWEgKG1heC1oZWlnaHQ6IDgwMHB4KSB7XG4gICAgLnN0aWNreSAubWVnYS1tZW51IHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG92ZXJmbG93LXk6IGF1dG87IH0gfVxuICAubWVnYS1tZW51X19jbG9zZSB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtc2l6ZTogMjNweDtcbiAgICBtYXJnaW4tYm90dG9tOiA0MnB4OyB9XG4gIC5tZWdhLW1lbnUgLm1lbnUgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAubWVnYS1tZW51IC5tZW51IGxpIGEge1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gICAgICAubWVnYS1tZW51IC5tZW51IGxpIGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogI2Q5ZWRlYjsgfVxuICAgIC5tZWdhLW1lbnUgLm1lbnUgbGkubWVudV9fbWFpbi1jYXRlZ29yeSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICAgIC5tZWdhLW1lbnUgLm1lbnUgbGkubWVudV9fbWFpbi1jYXRlZ29yeSA+IGEge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q5ZWRlYjsgfVxuICAgIC5tZWdhLW1lbnUgLm1lbnUgbGkubWVudV9fc3ViLWNhdGVnb3J5IHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIk9wZW4tU2Fuc1wiOyB9XG4gICAgLm1lZ2EtbWVudSAubWVudSBsaS5tZW51X19jaGlsZC1jYXRlZ29yeSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNnB4OyB9XG4gICAgICAubWVnYS1tZW51IC5tZW51IGxpLm1lbnVfX2NoaWxkLWNhdGVnb3J5IGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgICAubWVnYS1tZW51IC5tZW51IGxpLm1lbnVfX2NoaWxkLWNhdGVnb3J5IGxpIGEge1xuICAgICAgICAgIGNvbG9yOiAjYWVkN2M2OyB9XG5cbi5ncm91cC1tZW51IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcm93LWdhcDogMzBweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncm91cC1tZW51IHtcbiAgICAgIHBhZGRpbmc6IDAgMS41cmVtOyB9IH1cbiAgLmdyb3VwLW1lbnVfX2l0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogMzBweDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjNweCkgYW5kIChtYXgtd2lkdGg6IDEwMzBweCkge1xuICAgIC5ncm91cC1tZW51IC5tZW51LnZlcnRpY2FsIHtcbiAgICAgIHdpZHRoOiBjYWxjKDM5MHB4IC8gNSkgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyb3VwLW1lbnUgLm1lbnUudmVydGljYWwge1xuICAgICAgd2lkdGg6IGNhbGMoNDkwcHggLyA1KTsgfSB9XG5cbi8qIC0tLS0tLSBuYXZpZ2F0aW9uLCBwYW5lbCBhbmQgc3RpY2t5IGhlYWRlciAtLS0tLS0gRU5EIC0tLS0tLSAqL1xuLyogRm9vdGVyIEFyZWEgU3R5bGVzIC0tLS0tLS0gU1RBUlQgLS0tLS0gKi9cbiNtYWluLWZvb3RlciB7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMCAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgI21haW4tZm9vdGVyIHtcbiAgICAgIHBhZGRpbmc6IDIuNXJlbSAwIDA7IH0gfVxuICAuYWJvdXQtcGFnZSAjbWFpbi1mb290ZXIge1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gIC5ub3QtZm91bmQgI21haW4tZm9vdGVyLFxuICAucGF0aC1qb3VybmV5ICNtYWluLWZvb3RlciB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cbiAgLm11bHRpbWVkaWEtZ2FsbGVyeSAjbWFpbi1mb290ZXIge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgI21haW4tZm9vdGVyIC5zb2NpYWwtbGJsIHtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LWZhbWlseTogXCJTVElYIFR3byBUZXh0XCI7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgICBbZGlyPVwibHRyXCJdICNtYWluLWZvb3RlciAuc29jaWFsLWxibCB7XG4gICAgICBmb250LWZhbWlseTogXCJTVElYIFR3byBUZXh0XCI7IH1cbiAgLmRhcmstdGhlbWUgI21haW4tZm9vdGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAubWFpbi1mb290ZXItY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyOyB9IH1cblxuLm1haW4tZm9vdGVyLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTAxZjFkO1xuICBwYWRkaW5nOiA0MHB4IDAgMjBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5tYWluLWZvb3Rlci1jb250ZW50IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9IH1cbiAgLm1haW4tZm9vdGVyLWNvbnRlbnQgaHIge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICMyNTNjM2E7IH1cblxuLm1haW4tZm9vdGVyLWJlZm9yZSB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5tYWluLWZvb3Rlci1iZWZvcmUge1xuICAgICAgb3JkZXI6IDI7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tYWluLWZvb3Rlci1iZWZvcmUge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMyNTNjM2E7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5tYWluLWZvb3Rlci1hZnRlci1pbm5lciB7XG4gICAgb3JkZXI6IDE7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMyNTNjM2E7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWFpbi1mb290ZXItYWZ0ZXItaW5uZXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMjUzYzNhO1xuICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5tYWluLWZvb3Rlci1hZnRlci1pbm5lciAubWVudSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB3aWR0aDogMzgwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuXG4ubWFpbi1mb290ZXItYWZ0ZXItaW5uZXIgdWwgbGkgYSB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGZvbnQtZmFtaWx5OiBcIlNUSVggVHdvIFRleHRcIjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5tYWluLWZvb3Rlci1hZnRlci1pbm5lciB1bCBsaSBhIHtcbiAgICAgIGNvbG9yOiAjN2M5YTk0OyB9IH1cbiAgLm1haW4tZm9vdGVyLWFmdGVyLWlubmVyIHVsIGxpIGE6aG92ZXIge1xuICAgIGNvbG9yOiAjMmM4YTgyOyB9XG5cbi5tYWluLWZvb3Rlci1pbm5lciB7XG4gIHBhZGRpbmc6IDAgMi41cmVtIDA7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4tU2Fuc1wiOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLm1haW4tZm9vdGVyLWlubmVyIHtcbiAgICAgIG9yZGVyOiAzOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWFpbi1mb290ZXItaW5uZXIge1xuICAgICAgcGFkZGluZzogMDsgfSB9XG4gIC5tYWluLWZvb3Rlci1pbm5lciAuc29jaWFsLWxibCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTsgfVxuXG4ubWFpbi1mb290ZXItYWZ0ZXIge1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTAxZjFkO1xuICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5tYWluLWZvb3Rlci1hZnRlciB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgbWFyZ2luLXRvcDogLTVweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1haW4tZm9vdGVyLWFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyNTNjM2E7IH0gfVxuICAubWFpbi1mb290ZXItYWZ0ZXIuc3R5bGUtdjIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAubWFpbi1mb290ZXItYWZ0ZXIuc3R5bGUtdjIgLmdyaWQtY29udGFpbmVyIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDFkNWQ1O1xuICAgICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgIC5tYWluLWZvb3Rlci1hZnRlci5zdHlsZS12MiAuZ3JpZC1jb250YWluZXIgLmdyaWQteCAuY2VsbDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgb3JkZXI6IDI7IH0gfVxuICAgIC5tYWluLWZvb3Rlci1hZnRlci5zdHlsZS12MiAuY29weXJpZ2h0IHtcbiAgICAgIGNvbG9yOiAjMjUzYzNhO1xuICAgICAgZm9udC1zaXplOiAxMHB4OyB9XG4gICAgLm1haW4tZm9vdGVyLWFmdGVyLnN0eWxlLXYyIC5tZW51IGEge1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgcGFkZGluZzogMTVweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubG9nby1mb290ZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmxvZ28tZm9vdGVyIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4OyB9IH1cblxuLmxvZ28tZm9vdGVyIGltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIG1heC13aWR0aDogMTkwcHg7XG4gIGNvbG9yLXNjaGVtZTogb25seSBsaWdodDsgfVxuXG4uY29weXJpZ2h0IHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5jb3B5cmlnaHQge1xuICAgICAgcGFkZGluZzogMXJlbTsgfSB9XG4gIC5jYW52YXMtcGFuZWwgLmNvcHlyaWdodCB7XG4gICAgcGFkZGluZzogMCAxLjVyZW0gMnJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5tYWluLWZvb3Rlci1hZnRlciAuY29weXJpZ2h0IHtcbiAgICAgIGNvbG9yOiAjODA5MDhlOyB9IH1cbiAgLmNvcHlyaWdodCBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5mb290ZXItbWVudSAubWVudSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9IH1cblxuLmZvb3Rlci1tZW51IC5tZW51IGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4uZm9vdGVyLW1lbnUgLm1lbnUgPiBsaSB7XG4gIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAuZm9vdGVyLW1lbnUgLm1lbnUgPiBsaTpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICBbZGlyPVwibHRyXCJdIC5mb290ZXItbWVudSAubWVudSA+IGxpIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtOyB9XG4gIFtsYW5nPVwidHJcIl0gLmZvb3Rlci1tZW51IC5tZW51ID4gbGkge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cbiAgLmZvb3Rlci1tZW51IC5tZW51ID4gbGkgYSB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgcGFkZGluZzogMC41cmVtIDA7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuICAgIC5mb290ZXItbWVudSAubWVudSA+IGxpIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICMyYzhhODI7IH1cbiAgICAuZm9vdGVyLW1lbnUgLm1lbnUgPiBsaSBhIHN0cm9uZyB7XG4gICAgICBmb250LWZhbWlseTogXCJTVElYIFR3byBUZXh0XCI7IH1cblxuLmZvb3Rlci1tZW51ID4gLmdyaWQteCB7XG4gIC8qIG5ldGJvb2sgb25seSAqLyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIC5mb290ZXItbWVudSA+IC5ncmlkLXgge1xuICAgICAgZ2FwOiAyMHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZm9vdGVyLW1lbnUgPiAuZ3JpZC14IHtcbiAgICAgIGdhcDogMjBweDsgfVxuICAgICAgLmZvb3Rlci1tZW51ID4gLmdyaWQteCA+IC5jZWxsIHtcbiAgICAgICAgd2lkdGg6IDEwMHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmRvd25sb2FkLWFwcCB7XG4gICAgbWFyZ2luOiAxLjVyZW0gLTAuNXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI1M2MzYTtcbiAgICBwYWRkaW5nOiAxcmVtOyB9IH1cblxuLmRvd25sb2FkLWFwcCBhIHtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuZG93bmxvYWQtYXBwIGEge1xuICAgICAgbWFyZ2luOiAwIDAuMnJlbTsgfSB9XG5cbi5kb3dubG9hZC1hcHAgaW1nIHtcbiAgd2lkdGg6IDEzMHB4O1xuICBjb2xvci1zY2hlbWU6IG9ubHkgbGlnaHQ7IH1cblxuLmZvb3Rlci1zb2NpYWxzIHtcbiAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5mb290ZXItc29jaWFscyAuc29jaWFscy1idG5zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG5cbi8qIEZvb3RlciBBcmVhIFN0eWxlcyAtLS0tLS0tIEVORCAtLS0tLSAqL1xuLyoqKlxuKmh0dHBzOi8vd3d3LmpxdWVyeXNjcmlwdC5uZXQvYW5pbWF0aW9uL25ld3MtdGlja2VyLWNvbnRyb2xzLWFjbWUuaHRtbFxuKmh0dHBzOi8vd3d3LmpxdWVyeXNjcmlwdC5uZXQvZGVtby9uZXdzLXRpY2tlci1jb250cm9scy1hY21lL1xuKiovXG4vKkVESVRFRCBUTyBGSVQgQUFXU0FUIExBWU9VVCovXG4qIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbiosXG46OmFmdGVyLFxuOjpiZWZvcmUge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dCAwcztcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQgMHM7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0IDBzOyB9XG5cbmE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHROZXdzIFRpY2tlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5hY21lLW5ld3MtdGlja2VyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDQ1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxOTc0ZDI7XG4gIG1hcmdpbi10b3A6IDQ1cHg7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5hY21lLW5ld3MtdGlja2VyIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9IH1cblxuLmFjbWUtbmV3cy10aWNrZXItbGFiZWwge1xuICBiYWNrZ3JvdW5kOiAjMTk3NGQyO1xuICBwYWRkaW5nOiAxMHB4O1xuICB3aWR0aDogYXV0bztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogMTVweDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBjb2xvcjogI2ZmZjsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgLmFjbWUtbmV3cy10aWNrZXItbGFiZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC00NXB4OyB9IH1cblxuLmFjbWUtbmV3cy10aWNrZXItYm94IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgLmFjbWUtbmV3cy10aWNrZXItYm94IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTIwcHg7IH0gfVxuXG4uYWNtZS1uZXdzLXRpY2tlci1ib3ggdWwge1xuICB3aWR0aDogMTAwJTtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDsgfVxuXG4uYWNtZS1uZXdzLXRpY2tlci1ib3ggdWwgbGkgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uYWNtZS1uZXdzLXRpY2tlci1jb250cm9scyB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7IH1cblxuLmFjbWUtbmV3cy10aWNrZXItY29udHJvbHMgYnV0dG9uIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogNDBweDtcbiAgYm9yZGVyLWNvbG9yOiAjZWVlZWVlO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAgMCAwIDFweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLmFjbWUtbmV3cy10aWNrZXItY29udHJvbHMgYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2VlZWVlZTsgfVxuXG4uYWNtZS1uZXdzLXRpY2tlci1jb250cm9scyBidXR0b24uYWNtZS1uZXdzLXRpY2tlci1hcnJvdyB7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmFjbWUtbmV3cy10aWNrZXItY29udHJvbHMgYnV0dG9uLmFjbWUtbmV3cy10aWNrZXItYXJyb3c6YWZ0ZXIge1xuICBib3JkZXItY29sb3I6ICM5OTk7XG4gIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMnB4O1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDhweDtcbiAgbGVmdDogNTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogOHB4OyB9XG5cbi5hY21lLW5ld3MtdGlja2VyLWNvbnRyb2xzIGJ1dHRvbi5hY21lLW5ld3MtdGlja2VyLXBhdXNlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLmFjbWUtbmV3cy10aWNrZXItY29udHJvbHMgYnV0dG9uLmFjbWUtbmV3cy10aWNrZXItcGF1c2U6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4O1xuICBib3JkZXItY29sb3I6ICM5OTk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMCAycHggMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTsgfVxuXG4uYWNtZS1uZXdzLXRpY2tlci1jb250cm9scy5hY21lLW5ld3MtdGlja2VyLWhvcml6b250YWwtY29udHJvbHMgYnV0dG9uLmFjbWUtbmV3cy10aWNrZXItcHJldjphZnRlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDEzNWRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMTM1ZGVnKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDEzNWRlZyk7IH1cblxuLmFjbWUtbmV3cy10aWNrZXItY29udHJvbHMuYWNtZS1uZXdzLXRpY2tlci1ob3Jpem9udGFsLWNvbnRyb2xzIGJ1dHRvbi5hY21lLW5ld3MtdGlja2VyLW5leHQ6YWZ0ZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgzMTVkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDMxNWRlZyk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgzMTVkZWcpOyB9XG5cbi5hY21lLW5ld3MtdGlja2VyLWNvbnRyb2xzLmFjbWUtbmV3cy10aWNrZXItdmVydGljYWwtY29udHJvbHMgYnV0dG9uLmFjbWUtbmV3cy10aWNrZXItcHJldjphZnRlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDIyNWRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMjI1ZGVnKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDIyNWRlZyk7IH1cblxuLmFjbWUtbmV3cy10aWNrZXItY29udHJvbHMuYWNtZS1uZXdzLXRpY2tlci12ZXJ0aWNhbC1jb250cm9scyBidXR0b24uYWNtZS1uZXdzLXRpY2tlci1uZXh0OmFmdGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoNDA1ZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSg0MDVkZWcpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoNDA1ZGVnKTsgfVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1zdHlsZS5jc3MubWFwICovXG4vKiAtLS0tLS0tIEFVRElPIFBMQVlFUiBXSURHRVQgLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuLmF1ZGlvLXBsYXllcjpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAub3Bpbmlvbi1hdXRob3JzLWxpc3QgLmF1ZGlvLXBsYXllcjpob3ZlciAucG9kY2FzdC1sYWJlbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4uYXVkaW8tcGxheWVyIC5qdy1yaWdodGNsaWNrIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5vcGluaW9uLWF1dGhvcnMtbGlzdCAuYXVkaW8tcGxheWVyLFxuLm9waW5pb24td3JhcCAuYXVkaW8tcGxheWVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uYmxvY2std3JhcHBlciAuYXVkaW8tcGxheWVyIC5wb2RjYXN0LWxhYmVsIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uYXVkaW8tcGxheWVyIC5qdy13cmFwcGVyLmp3LXJlc2V0LFxuLmF1ZGlvLXBsYXllciAuanctY29udHJvbHMuanctcmVzZXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAub3Bpbmlvbi1hdXRob3JzLWxpc3QgLmF1ZGlvLXBsYXllciAuanctd3JhcHBlci5qdy1yZXNldCxcbiAgLm9waW5pb24td3JhcCAuYXVkaW8tcGxheWVyIC5qdy13cmFwcGVyLmp3LXJlc2V0LCAub3Bpbmlvbi1hdXRob3JzLWxpc3RcbiAgLmF1ZGlvLXBsYXllciAuanctY29udHJvbHMuanctcmVzZXQsXG4gIC5vcGluaW9uLXdyYXBcbiAgLmF1ZGlvLXBsYXllciAuanctY29udHJvbHMuanctcmVzZXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5hdWRpby1wbGF5ZXIgLmp3cGxheWVyLmp3LXN0YXRlLWNvbXBsZXRlIC5qdy1jb250cm9scy5qdy1yZXNldCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi5hdWRpby1wbGF5ZXIgLmp3LWNvbnRyb2xzLWJhY2tkcm9wLmp3LXJlc2V0IHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLmF1ZGlvLXBsYXllciAuandwbGF5ZXIuanctcmVzZXQge1xuICBoZWlnaHQ6IDM1cHggIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLm9waW5pb24tYXV0aG9ycy1saXN0IC5hdWRpby1wbGF5ZXIgLmp3cGxheWVyLmp3LXJlc2V0LFxuICAub3Bpbmlvbi13cmFwIC5hdWRpby1wbGF5ZXIgLmp3cGxheWVyLmp3LXJlc2V0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB3aWR0aDogMzVweDtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnBvZGNhc3QtZmxvYXRlciAuYXVkaW8tcGxheWVyIC5qd3BsYXllci5qdy1yZXNldCB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5wb2RjYXN0LWZsb2F0ZXIgLmF1ZGlvLXBsYXllciAuanctY29udHJvbHMuanctYnVmZmVyLmp3LXJlc2V0LCAucG9kY2FzdC1mbG9hdGVyXG4gIC5hdWRpby1wbGF5ZXIgLmp3LWNvbnRyb2xzLmp3LXJlc2V0IHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgfSB9XG5cbi5hdWRpby1wbGF5ZXIgLmp3LXNsaWRlci10aW1lLmp3LXJlc2V0IHtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi5hdWRpby1wbGF5ZXIgLmp3LWNvbnRyb2xiYXIuanctcmVzZXQgLmp3LXJlc2V0Lmp3LWljb24tdm9sdW1lIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uYXVkaW8tcGxheWVyIC5qdy1mbGFnLWF1ZGlvLXBsYXllciAuanctY29udHJvbGJhciAuanctaWNvbi1pbmxpbmUuanctdGV4dC1jb3VudGRvd24uanctcmVzZXQge1xuICBjb2xvcjogIzkyOTg5ODtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMWVtO1xuICBvcmRlcjogMTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmF1ZGlvLXBsYXllciAuanctZmxhZy1hdWRpby1wbGF5ZXIgLmp3LWNvbnRyb2xiYXIgLmp3LWljb24taW5saW5lLmp3LXRleHQtY291bnRkb3duLmp3LXJlc2V0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnBvZGNhc3QtZmxvYXRlciAuYXVkaW8tcGxheWVyIC5qdy1mbGFnLWF1ZGlvLXBsYXllciAuanctY29udHJvbGJhciAuanctaWNvbi1pbmxpbmUuanctdGV4dC1jb3VudGRvd24uanctcmVzZXQge1xuICAgICAgbGVmdDogLTRyZW07XG4gICAgICB0b3A6IDEwcHg7IH0gfVxuICAuYXVkaW8tcG9kY2FzdC0tbm8tYmFyIC5hdWRpby1wbGF5ZXIgLmp3LWZsYWctYXVkaW8tcGxheWVyIC5qdy1jb250cm9sYmFyIC5qdy1pY29uLWlubGluZS5qdy10ZXh0LWNvdW50ZG93bi5qdy1yZXNldCB7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuXG4uYXVkaW8tcGxheWVyIC5qdy1pY29uLmp3LWljb24taW5saW5lLmp3LWJ1dHRvbi1jb2xvci5qdy1yZXNldC5qdy1pY29uLXJld2luZCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmF1ZGlvLXBsYXllciAuanctaWNvbi5qdy1pY29uLXRvb2x0aXAuanctaWNvbi12b2x1bWUuanctYnV0dG9uLWNvbG9yLmp3LXJlc2V0Lmp3LWZsYWctaG9yaXpvbnRhbC1zbGlkZXIuanctZnVsbCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmF1ZGlvLXBsYXllciAuanctaWNvbi5qdy1pY29uLXRvb2x0aXAuanctaWNvbi12b2x1bWUuanctYnV0dG9uLWNvbG9yLmp3LXJlc2V0Lmp3LWZsYWctaG9yaXpvbnRhbC1zbGlkZXIuanctb2ZmIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uYXVkaW8tcGxheWVyIC5qdy1pY29uLmp3LWljb24taW5saW5lLmp3LXRleHQuanctcmVzZXQuanctdGV4dC1lbGFwc2VkIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXVkaW8tcGxheWVyIC5qdy1pY29uLmp3LWljb24taW5saW5lLmp3LXRleHQuanctcmVzZXQuanctdGV4dC1kdXJhdGlvbiB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5hdWRpby1wbGF5ZXIgLmp3cGxheWVyOm5vdCguanctYnJlYWtwb2ludC0tMSkgLmp3LXRleHQtZHVyYXRpb246YmVmb3JlLFxuICAuYXVkaW8tcGxheWVyIC5qd3BsYXllcjpub3QoLmp3LWJyZWFrcG9pbnQtMCkgLmp3LXRleHQtZHVyYXRpb246YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiOyB9IH1cblxuLmF1ZGlvLXBsYXllciAuanctc3ZnLWljb24uanctc3ZnLWljb24tcGxheSB7XG4gIGNvbG9yOiAjMmM4YTgyOyB9XG5cbi5hdWRpby1wbGF5ZXIgLmp3LWJ1ZmZlci5qdy1yZXNldCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyYzhhODI7IH1cblxuLmF1ZGlvLXBsYXllciAuanctaWNvbi5qdy1pY29uLWlubGluZS5qdy1idXR0b24tY29sb3IuanctcmVzZXQuanctaWNvbi1wbGF5YmFjayB7XG4gIGNvbG9yOiAjMmM4YTgyO1xuICBoZWlnaHQ6IDM1cHg7XG4gIHdpZHRoOiAzNXB4O1xuICBiYWNrZ3JvdW5kOiAjZWNmNGYzO1xuICBib3JkZXItcmFkaXVzOiA1MCU7IH1cbiAgLm9waW5pb24tYXV0aG9ycy1saXN0IC5hdWRpby1wbGF5ZXIgLmp3LWljb24uanctaWNvbi1pbmxpbmUuanctYnV0dG9uLWNvbG9yLmp3LXJlc2V0Lmp3LWljb24tcGxheWJhY2ssXG4gIC5vcGluaW9uLXdyYXAgLmF1ZGlvLXBsYXllciAuanctaWNvbi5qdy1pY29uLWlubGluZS5qdy1idXR0b24tY29sb3IuanctcmVzZXQuanctaWNvbi1wbGF5YmFjayB7XG4gICAgYmFja2dyb3VuZDogI2VjZjRmMzsgfVxuICAuYXVkaW8tcG9kY2FzdC0tbm8tYmFyIC5hdWRpby1wbGF5ZXIgLmp3LWljb24uanctaWNvbi1pbmxpbmUuanctYnV0dG9uLWNvbG9yLmp3LXJlc2V0Lmp3LWljb24tcGxheWJhY2sge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMjBweDsgfVxuXG4uYXVkaW8tcGxheWVyIC5qdy1wcm9ncmVzcy5qdy1yZXNldCB7XG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrOyB9XG5cbi5hdWRpby1wbGF5ZXIgLmp3LXNsaWRlci1jb250YWluZXIuanctcmVzZXQge1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBoZWlnaHQ6IDMuNXB4OyB9XG5cbi5hdWRpby1wbGF5ZXIgLmp3LXNsaWRlci1ob3Jpem9udGFsLmp3LWNoYXB0ZXItc2xpZGVyLXRpbWUgLmp3LXNsaWRlci1jb250YWluZXIgLmp3LXRpbWVzZWdtZW50Lmp3LXJlc2V0IHtcbiAgZmxleC1ncm93OiAxOyB9XG5cbi5hdWRpby1wbGF5ZXIgLmp3LXRpbWVzZWdtZW50LWJhci5qdy1yYWlsLmp3LXRpbWVzZWdtZW50LWJhY2tncm91bmQuanctcmVzZXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlZmVlICFpbXBvcnRhbnQ7IH1cblxuLmF1ZGlvLXBsYXllciAuanctdGltZXNlZ21lbnQtYmFyLmp3LXByb2dyZXNzLmp3LXRpbWVzZWdtZW50LXByb2dyZXNzLmp3LXJlc2V0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJjODk4MTsgfVxuXG4uYXVkaW8tcGxheWVyIC5qdy1yZXNldC5qdy1idXR0b24tY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLm9waW5pb24tYXV0aG9ycy1saXN0IC5hdWRpby1wbGF5ZXIgLmp3LXJlc2V0Lmp3LWJ1dHRvbi1jb250YWluZXIsXG4gIC5vcGluaW9uLXdyYXAgLmF1ZGlvLXBsYXllciAuanctcmVzZXQuanctYnV0dG9uLWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLmF1ZGlvLXBsYXllciAuancta25vYi5qdy1yZXNldCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyYzhhODI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDAuOCk7XG4gIGJveC1zaGFkb3c6IGluaGVyaXQ7XG4gIGhlaWdodDogMTBweDtcbiAgd2lkdGg6IDEwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAucG9kY2FzdC1mbG9hdGVyIC5hdWRpby1wbGF5ZXIgLmp3LWtub2IuanctcmVzZXQge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5hdWRpby1wbGF5ZXIgLmp3LWhvcml6b250YWwtdm9sdW1lLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmxvY2std3JhcHBlciAuYXVkaW8tcGxheWVyIHtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW07IH0gfVxuXG4ucG9kY2FzdC1mbG9hdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgei1pbmRleDogOTtcbiAgcGFkZGluZzogMCAwIDIuMTVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLyogTW9iaWxlIExhbmRzY2FwZSAqLyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDMyMHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDg5NnB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMikgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLnBvZGNhc3QtZmxvYXRlciB7XG4gICAgICBwYWRkaW5nOiAxcmVtIDAgMnJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBvZGNhc3QtZmxvYXRlciB7XG4gICAgICBwYWRkaW5nOiAxcmVtIDRyZW07IH0gfVxuICAucG9kY2FzdC1mbG9hdGVyIC5idG4tc2hhcmUtd3JhcCAuYnRuLXNoYXJlIHtcbiAgICBtYXJnaW46IDAgMTBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5wb2RjYXN0LWZsb2F0ZXIgLmp3cGxheWVyLmp3LXJlc2V0IHtcbiAgICAgIGhlaWdodDogNzBweCAhaW1wb3J0YW50OyB9IH1cbiAgLnBvZGNhc3QtZmxvYXRlciAuY2xvc2UtYnRuIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLnBvZGNhc3QtZmxvYXRlciAuY2xvc2UtYnRuIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgICAgIGNvbG9yOiAjOTBhM2EyOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAucG9kY2FzdC1mbG9hdGVyIC5qdy1zbGlkZXItdGltZS5qdy1yZXNldCB7XG4gICAgICB3aWR0aDogMTAwdnc7XG4gICAgICB6LWluZGV4OiA5OTk5OTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IC00Ljg1cmVtO1xuICAgICAgdG9wOiAwO1xuICAgICAgaGVpZ2h0OiA1cHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5wb2RjYXN0LWZsb2F0ZXIgLmp3cGxheWVyOm5vdCguanctZmxhZy1hZHMpOm5vdCguanctZmxhZy1saXZlKS5qdy1icmVha3BvaW50LTAgLmp3LXRleHQtY291bnRkb3duLmp3LXJlc2V0IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIGxlZnQ6IC00cmVtO1xuICAgICAgZm9udC1zaXplOiAxMHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAucG9kY2FzdC1mbG9hdGVyIC5qdy1mbGFnLWF1ZGlvLXBsYXllci5qdy1mbGFnLXNtYWxsLXBsYXllciAuanctcmVzZXQuanctdGV4dC1kdXJhdGlvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICM5Mjk4OTg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwcHg7XG4gICAgICBsZWZ0OiBpbml0aWFsO1xuICAgICAgcmlnaHQ6IC0yMHJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnBvZGNhc3QtZmxvYXRlciAuanctaWNvbi5qdy1pY29uLWlubGluZS5qdy1idXR0b24tY29sb3IuanctcmVzZXQuanctaWNvbi1wbGF5YmFjayB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDIuMnJlbTtcbiAgICAgIGxlZnQ6IC0xLjNyZW07XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfSB9XG5cbi5wb2RjYXN0LWZsb2F0ZXItaXRlbSBpbWcge1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiAzNXB4O1xuICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuXG4ucG9kY2FzdC1mbG9hdGVyLWl0ZW0gaDYge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5wbGF5ZXIgI3BvZGNhc3RUb2RheSB7XG4gICAgbWFyZ2luLXRvcDogMi4zcmVtOyB9IH1cblxuLnBsYXllciAucGxheWVyLXNvbmcgLnRpbWVzdGFtcHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgY29sb3I6ICNiZmJmYmY7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpcmVjdGlvbjogbHRyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnBvZGNhc3QtZmxvYXRlciAucGxheWVyIC5wbGF5ZXItc29uZyAudGltZXN0YW1wcyBpbnB1dFt0eXBlPVwicmFuZ2VcIl0ge1xuICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgei1pbmRleDogOTk5OTk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAucG9kY2FzdC1mbG9hdGVyIC5wbGF5ZXIgLnBsYXllci1zb25nIC50aW1lc3RhbXBzIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcGFkZGluZzogN3B4IDFyZW0gMDtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDsgfSB9XG5cbi5wbGF5ZXIgLnBsYXllci1zb25nIC50aW1lLW5vdyB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBsYXllciAucGxheWVyLXNvbmcgLnRpbWUtbm93IHtcbiAgICAgIHdpZHRoOiA1NXB4OyB9IH1cblxuLnBsYXllciAucGxheWVyLXNvbmcgLnRpbWUtZmluaXNoIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9XG5cbi5wbGF5ZXIgLnBsYXllci1zb25nIC5hY3Rpb25zIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzBweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLnBsYXllciAucGxheWVyLXNvbmcgLmFjdGlvbnMgaSB7XG4gICAgY29sb3I6ICMyYzhhODI7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuICAgIC5wbGF5ZXIgLnBsYXllci1zb25nIC5hY3Rpb25zIGkuaWNvbi1wYXVzZSB7XG4gICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgLnBsYXllciAucGxheWVyLXNvbmcgLmFjdGlvbnMgLm5leHQsXG4gIC5wbGF5ZXIgLnBsYXllci1zb25nIC5hY3Rpb25zIC5wcmV2IHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLnBsYXllciAucGxheWVyLXNvbmcgLmFjdGlvbnMgLnBsYXkge1xuICAgIG1hcmdpbjogMCAxcmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5wb2RjYXN0LWZsb2F0ZXIgLnBsYXllciAucGxheWVyLXNvbmcgLmFjdGlvbnMgLnBsYXkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjVyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuXG4uYXVkaW8tcGxheWVyLWZsb2F0ZXIuYXVkaW8tcGxheWVyIHtcbiAgLyogTW9iaWxlIExhbmRzY2FwZSAqLyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDMyMHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDg5NnB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMikgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLmF1ZGlvLXBsYXllci1mbG9hdGVyLmF1ZGlvLXBsYXllciB7XG4gICAgICB3aWR0aDogMzQwcHg7IH0gfVxuICAuYXVkaW8tcGxheWVyLWZsb2F0ZXIuYXVkaW8tcGxheWVyIGlucHV0W3R5cGU9XCJyYW5nZVwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzJjOGE4MiAwJSwgI2RjZWJlOSAwJSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzcHg7XG4gICAgYm90dG9tOiB1bnNldDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3AgMDtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4OyB9XG4gIC5hdWRpby1wbGF5ZXItZmxvYXRlci5hdWRpby1wbGF5ZXIgaW5wdXRbdHlwZT1cInJhbmdlXCJdOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGhlaWdodDogMTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGN1cnNvcjogZXctcmVzaXplO1xuICAgIGJhY2tncm91bmQ6ICMyYzhhODI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLnBvZGNhc3QtZmxvYXRlciAuYXVkaW8tcGxheWVyLWZsb2F0ZXIuYXVkaW8tcGxheWVyIGlucHV0W3R5cGU9XCJyYW5nZVwiXTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICBoZWlnaHQ6IDFweDsgfSB9XG5cbi5ub3QtcGxheWluZyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmF1ZGlvLXBsYXllci1wbGF5IHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5hdWRpby1wbGF5ZXItdGltZSB7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4OyB9XG4gIC5hdWRpby1wbGF5ZXItdGltZSAuaWNvbi1wbGF5LWdyZWVuIHtcbiAgICBjb2xvcjogIzJjOGE4MjtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgLnBsYXlpbmcgLmF1ZGlvLXBsYXllci10aW1lIC5pY29uLXBsYXktZ3JlZW4ge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgICAgIC5wbGF5aW5nIC5hdWRpby1wbGF5ZXItdGltZSAuaWNvbi1wbGF5LWdyZWVuOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTIzXCI7IH1cbiAgLmF1ZGlvLXBsYXllci10aW1lIHRpbWUge1xuICAgIGNvbG9yOiAjOTI5ODk4O1xuICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAgIC5hdWRpby1wbGF5ZXItdGltZSB0aW1lIC5hdWRpby1wb2RjYXN0LS1uby1iYXIge1xuICAgICAgZm9udC1zaXplOiAxMXB4OyB9XG5cbi5hdWRpby1wb2RjYXN0LS1uby1iYXIgLmF1ZGlvLXBsYXllciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLmF1ZGlvLXBvZGNhc3QtLW5vLWJhciAuYXVkaW8tcGxheWVyIHtcbiAgICAgIGhlaWdodDogMjhweDsgfSB9XG4gIC5hdWRpby1wb2RjYXN0LS1uby1iYXIgLmF1ZGlvLXBsYXllciAuandwbGF5ZXIuanctcmVzZXQge1xuICAgIHdpZHRoOiA2NXB4O1xuICAgIGhlaWdodDogMjBweCAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmF1ZGlvLXBvZGNhc3QtLW5vLWJhciAuYXVkaW8tcGxheWVyIC5qdy13cmFwcGVyLmp3LXJlc2V0IHtcbiAgICB3aWR0aDogODVweDsgfVxuXG4uYXVkaW8tcG9kY2FzdC0tbm8tYmFyIC5hdWRpby1wbGF5ZXIgLmp3LXNsaWRlci10aW1lLmp3LXJlc2V0IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uYmxvY2std3JhcHBlciAuYXVkaW8tcG9kY2FzdC0tbm8tYmFyIC5wb2RjYXN0LWxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMmM4YTgyOyB9XG5cbi5hdWRpby1wb2RjYXN0LS1uby1iYXIgLmF1dGhvci1uYW1lIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5hdWRpby1wb2RjYXN0LS1uby1iYXIgLmF1dGhvci1uYW1lIGEge1xuICAgIGNvbG9yOiAjOTY5Njk2OyB9XG5cbltsYW5nPVwiYXJcIl0gLmF1ZGlvLXBvZGNhc3QtLW5vLWJhciBoNCxcbltkaXI9XCJsdHJcIl0gLmF1ZGlvLXBvZGNhc3QtLW5vLWJhciBoNCB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG5cbi5hdWRpby1wb2RjYXN0LS1uby1iYXIgLnNsaWNrLWRvdHMge1xuICBib3R0b206IC0zNXB4OyB9XG5cbi5hdWRpby1wb2RjYXN0LS1uby1iYXIub2JqZWN0cy1saXN0Lmhhcy1zZXBhcmF0b3IgLm9iamVjdC1pdGVtIHtcbiAgcGFkZGluZy10b3A6IDI1cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4OyB9XG5cbi5ibG9jay13cmFwcGVyIC5hdWRpby1wb2RjYXN0LS1uby1iYXIub2JqZWN0cy1saXN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMC44cmVtOyB9XG5cbi5hdWRpby1wb2RjYXN0IC5yb3VuZCBpbWcge1xuICB3aWR0aDogNzlweDtcbiAgaGVpZ2h0OiA3OXB4O1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgY29sb3Itc2NoZW1lOiBvbmx5IGxpZ2h0OyB9XG5cbi5hdWRpby1wb2RjYXN0LS1uby1iYXIgLnJvdW5kIGltZyB7XG4gIHdpZHRoOiA1OC4zM3B4O1xuICBoZWlnaHQ6IDU4LjMzcHg7IH1cblxuLmF1ZGlvLXBvZGNhc3QtLWJvdHRvbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLmF1ZGlvLXBvZGNhc3QtLWJvdHRvbSB7XG4gICAgICBoZWlnaHQ6IDI4cHg7IH0gfVxuICAuYXVkaW8tcG9kY2FzdC0tbm8tYmFyIC5hdWRpby1wb2RjYXN0LS1ib3R0b20gLmF1ZGlvLXBsYXllciB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgLmF1ZGlvLXBvZGNhc3QtLW5vLWJhciAuYXVkaW8tcG9kY2FzdC0tYm90dG9tIC5hdWRpby1wbGF5ZXIge1xuICAgICAgICBoZWlnaHQ6IGF1dG87IH0gfVxuXG4vKiAtLS0tLS0tIEFVRElPIFBMQVlFUiBXSURHRVQgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cbi50b3RhbC1pdGVtcyB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnRvdGFsLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDIwcHg7IH0gfVxuXG4udG90YWwtaXRlbSBwIHtcbiAgY29sb3I6ICMyYzhhODI7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnRvdGFsLWNvdW50IHtcbiAgZm9udC1zaXplOiAzOS4wNnB4O1xuICBsaW5lLWhlaWdodDogNDVweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC50b3RhbC1jb3VudCB7XG4gICAgICBmb250LXNpemU6IDYxLjA0cHg7XG4gICAgICBsaW5lLWhlaWdodDogNjZweDsgfSB9XG5cbi5maWd1cmVzLWNvbnRlbnQgdWwge1xuICBtYXJnaW4tbGVmdDogMDsgfVxuICAuZmlndXJlcy1jb250ZW50IHVsIGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5mYWN0cyBsaSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLmZhY3RzIGxpIC5mYWN0LWxibCB7XG4gICAgY29sb3I6ICMyYzhhODI7XG4gICAgbWluLXdpZHRoOiAxMjBweDsgfVxuXG4uZmllbGRzIHtcbiAgZm9udC1mYW1pbHk6IFwiT3Blbi1TYW5zXCI7XG4gIG1hcmdpbi10b3A6IDNyZW07XG4gIC13ZWJraXQtY29sdW1uLWNvdW50OiAyO1xuICAtbW96LWNvbHVtbi1jb3VudDogMjtcbiAgY29sdW1uLWNvdW50OiAyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZpZWxkcyB7XG4gICAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMztcbiAgICAgIC1tb3otY29sdW1uLWNvdW50OiAzO1xuICAgICAgY29sdW1uLWNvdW50OiAzOyB9IH1cbiAgLmZpZWxkcyBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5maWVsZHMgbGkge1xuICAgICAgICBtaW4td2lkdGg6IDIwcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH0gfVxuXG4uaGVyby1hYm91dCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGVkZTM7XG4gIHBhZGRpbmc6IDM5cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uYWJvdXQtZW50cnkge1xuICBtYXJnaW4tdG9wOiA1M3B4OyB9XG4gIC5hYm91dC1lbnRyeV9fc2VjdGlvbiB7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgbWFyZ2luLXRvcDogNDBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYWJvdXQtZW50cnlfX3NlY3Rpb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IDIzcHg7IH0gfVxuICAgIC5hYm91dC1lbnRyeV9fc2VjdGlvbjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDJlNGUzOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5hYm91dC1lbnRyeV9fc2VjdGlvbi1wYXJ0bmVycyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5hYm91dC1lbnRyeV9fc2VjdGlvbi0tbWFpbiAuYWJvdXQtZW50cnlfX3RpdGxlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLmFib3V0LWVudHJ5X190aXRsZSB7XG4gICAgICB3aWR0aDogMjMwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5hYm91dC1lbnRyeV9fdGl0bGUge1xuICAgICAgd2lkdGg6IDMzMHB4OyB9IH1cbiAgLmFib3V0LWVudHJ5X190aXRsZSBoMiB7XG4gICAgY29sb3I6ICMyYzhhODI7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDI1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDM1cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmFib3V0LWVudHJ5X190aXRsZSBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzEuMjVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQzcHg7IH0gfVxuICAuYWJvdXQtZW50cnlfX2NvbnRlbnQge1xuICAgIGZsZXg6IDE7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmFib3V0LWVudHJ5X19jb250ZW50IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDsgfSB9XG4gICAgLmFib3V0LWVudHJ5X19jb250ZW50LWlubmVyIHAge1xuICAgICAgZm9udC1zaXplOiAyMHB4OyB9XG4gICAgICAuYWJvdXQtZW50cnlfX2NvbnRlbnQtaW5uZXIgcDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgICAgLmFib3V0LWVudHJ5X19jb250ZW50LWlubmVyIHA6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuYWJvdXQtZW50cnlfX2NvbnRlbnQtaW5uZXIgaDMge1xuICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzNXB4OyB9XG5cbi5hYm91dC1zZWN0aW9uIHtcbiAgcGFkZGluZzogNjBweCAwOyB9XG4gIC5hYm91dC1zZWN0aW9uLmFib3V0LWVkaXRvcnMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZlY2UyOyB9XG4gIC5hYm91dC1zZWN0aW9uLmFib3V0LXNpdGVzIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmFib3V0LXNlY3Rpb24uYWJvdXQtcHJvZHVjdHMsIC5hYm91dC1zZWN0aW9uLmFib3V0LWFkcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZWNlMjsgfVxuICAuYWJvdXQtc2VjdGlvbl9fdGl0bGUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5hYm91dC1zZWN0aW9uX190aXRsZSBoMiB7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgZm9udC1zaXplOiAzMS4yNXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDM3cHg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5hYm91dC1zZWN0aW9uX190aXRsZSBoMiB7XG4gICAgICAgICAgZm9udC1zaXplOiA0OC44M3B4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1M3B4OyB9IH1cbiAgICAuYWJvdXQtc2VjdGlvbl9fdGl0bGUgcCB7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzNXB4OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuYWJvdXQtc2VjdGlvbl9fdGl0bGUgcCB7XG4gICAgICAgICAgd2lkdGg6IDg5MHB4O1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cbiAgLmFib3V0LXNlY3Rpb25fX2NvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7IH1cbiAgICAuYWJvdXQtc2VjdGlvbl9fY29udGVudCB1bCB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuYWJvdXQtc2VjdGlvbl9fY29udGVudCB1bCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuICAgICAgLmFib3V0LXNlY3Rpb25fX2NvbnRlbnQgdWwgbGkge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzNXB4OyB9XG4gICAgICAgIC5hYm91dC1zZWN0aW9uX19jb250ZW50IHVsIGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYWJvdXQtc2VjdGlvbl9fZGVzYyB7XG4gICAgICB3aWR0aDogODkwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG4gIC5hYm91dC1zZWN0aW9uX19kZXNjIHAge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBmb250LXdlaWdodDogMzVweDtcbiAgICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjsgfVxuXG4uY2hpZWYtaXRlbXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDIwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2hpZWYtaXRlbXMge1xuICAgICAgZ2FwOiA0NXB4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuICAuY2hpZWYtaXRlbXM6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5jaGllZi1pdGVtcyB7XG4gICAgICBmbGV4LWZsb3c6IG5vd3JhcDtcbiAgICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICAgIHNjcm9sbC1zbmFwLXR5cGU6IHggbWFuZGF0b3J5O1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTsgfVxuICAgICAgLmNoaWVmLWl0ZW1zOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5jaGllZi1pdGVtcyA+IC5jaGllZi1pdGVtIHtcbiAgICAgICAgd2lkdGg6IDEyOHB4O1xuICAgICAgICBzY3JvbGwtc25hcC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmbGV4OiAwIDAgYXV0bzsgfSB9XG5cbi5jaGllZi1pdGVtX19pbWcge1xuICB3aWR0aDogMTkwcHg7XG4gIGhlaWdodDogMTkwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuY2hpZWYtaXRlbV9faW1nIHtcbiAgICAgIHdpZHRoOiAxMjhweDtcbiAgICAgIGhlaWdodDogMTI4cHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAuY2hpZWYtaXRlbV9faW1nIHtcbiAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgIGhlaWdodDogMTAwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYWJvdXQtcHJvZHVjdHMge1xuICAgIHBhZGRpbmctYm90dG9tOiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFib3V0LXByb2R1Y3RzX19jb250ZW50IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYWJvdXQtcHJvZHVjdHNfX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAyNnB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFib3V0LXByb2R1Y3RzX19jb250ZW50IHtcbiAgICB3aWR0aDogMTExOHB4O1xuICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFib3V0LXByb2R1Y3RzX19kZXNjIHVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICByb3ctZ2FwOiAyMHB4O1xuICAgIGNvbHVtbi1nYXA6IDQwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgIC5hYm91dC1wcm9kdWN0c19fZGVzYyB1bCBsaSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDMzcHg7IH0gfVxuXG4uYWJvdXQtcGFydG5lcnMge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDUycHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuYWJvdXQtcGFydG5lcnMge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYWJvdXQtYWRzX19jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogODJweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5hYm91dC1hZHNfX2ltZyB7XG4gICAgZmxleDogMSAwIDUwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hYm91dC1hZHNfX2ltZyB7XG4gICAgZmxleDogMSAwIGF1dG87IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYWJvdXQtYWRzX19kZXNjIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG4uYWJvdXQtYWRzX19kZXNjIHVsIGxpIC5pY29tb29uLWljb24ge1xuICBiYWNrZ3JvdW5kOiAjZDJlNGUzO1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgY29sb3I6ICMxNzJmMmY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgd2lkdGg6IDM2cHg7XG4gIGhlaWdodDogMzZweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLmFib3V0LWFkc19fZGVzYyB1bCBsaSBhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAzMHB4OyB9XG5cbi53cml0ZXJzLWxpc3Quc2xpZGVyLXYxIC5tZWRpYS1vYmplY3QtaW1nIGltZyB7XG4gIHdpZHRoOiA1OC4zM3B4O1xuICBoZWlnaHQ6IDU4LjMzcHg7IH1cblxuLndyaXRlcnMtbGlzdHMgLndyaXRlcnMtbGlzdF9faXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDIwcHg7IH1cbiAgLndyaXRlcnMtbGlzdHMgLndyaXRlcnMtbGlzdF9faXRlbSAubWVkaWEtb2JqZWN0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLndyaXRlcnMtbGlzdHMgLndyaXRlcnMtbGlzdF9faXRlbSAubWVkaWEtb2JqZWN0LWltZyBpbWcge1xuICAgICAgd2lkdGg6IDc1cHg7XG4gICAgICBoZWlnaHQ6IDc1cHg7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIGFuZCAobWF4LXdpZHRoOiAxMTgxcHgpIHtcbiAgICAgICAgLndyaXRlcnMtbGlzdHMgLndyaXRlcnMtbGlzdF9faXRlbSAubWVkaWEtb2JqZWN0LWltZyBpbWcge1xuICAgICAgICAgIHdpZHRoOiA1NXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgaGVpZ2h0OiA1NXB4ICFpbXBvcnRhbnQ7IH0gfVxuXG4uY29va2llLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QyZTRlMzsgfVxuICAuY29va2llLW92ZXJsYXktLXNtYWxsIHtcbiAgICB3aWR0aDogMzk2cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweCAyMHB4IDBweCAwcHg7XG4gICAgcGFkZGluZzogMjRweDtcbiAgICB6LWluZGV4OiA5OTk7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmNvb2tpZS1vdmVybGF5LS1zbWFsbCB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNvb2tpZS1vdmVybGF5LS1zbWFsbCB7XG4gICAgICAgIGxlZnQ6IDI5cHg7IH0gfVxuICAuY29va2llLW92ZXJsYXktLWxhcmdlIHtcbiAgICB6LWluZGV4OiA5OTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6IDI0cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmNvb2tpZS1vdmVybGF5LS1sYXJnZSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHggMjBweCAwcHggMHB4O1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmNvb2tpZS1vdmVybGF5LS1sYXJnZSB7XG4gICAgICAgIHBhZGRpbmc6IDQwcHg7IH0gfVxuICAuY29va2llLW92ZXJsYXkgLmNvb2tpZS1jbG9zZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDIwcHg7XG4gICAgbGVmdDogMjBweDsgfVxuICAgIC5jb29raWUtb3ZlcmxheSAuY29va2llLWNsb3NlIGkge1xuICAgICAgZm9udC1zaXplOiAxN3B4OyB9XG4gIC5jb29raWUtb3ZlcmxheV9fY29udGVudCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmNvb2tpZS1vdmVybGF5X19jb250ZW50IGgzIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7IH1cbiAgICAuY29va2llLW92ZXJsYXlfX2NvbnRlbnQgcCB7XG4gICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgLmNvb2tpZS1vdmVybGF5X19hY3Rpb25zIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC5jb29raWUtb3ZlcmxheS0tc21hbGwgLmNvb2tpZS1vdmVybGF5X19hY3Rpb25zIHtcbiAgICAgIGdhcDogMTZweDsgfVxuICAgIC5jb29raWUtb3ZlcmxheS0tbGFyZ2UgLmNvb2tpZS1vdmVybGF5X19hY3Rpb25zIHtcbiAgICAgIGdhcDogMTZweDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmNvb2tpZS1vdmVybGF5LS1sYXJnZSAuY29va2llLW92ZXJsYXlfX2FjdGlvbnMge1xuICAgICAgICAgIGdhcDogMjBweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4OyB9IH1cbiAgICAuY29va2llLW92ZXJsYXlfX2FjdGlvbnMgLmJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTYycHg7XG4gICAgICBwYWRkaW5nOiA4cHg7XG4gICAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgICAgIC5jb29raWUtb3ZlcmxheV9fYWN0aW9ucyAuYnV0dG9uLmJ0bi1kaXNhZ3JlZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwMDAwMDA7IH1cbiAgICAgICAgLmNvb2tpZS1vdmVybGF5X19hY3Rpb25zIC5idXR0b24uYnRuLWRpc2FncmVlOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7IH1cblxuLyogLS0tLS0gTGl2ZSBibG9nIGxpc3Qgc3R5bGVzIC0tLS0tLSBTVEFSVCAtLS0tLS0gKi9cbi5saXZlLXRpY2tlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiZDNjMmY7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5saXZlLXRpY2tlciB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIzcHg7IH0gfVxuICAubGl2ZS10aWNrZXIgLmxpdmUtdGlja2VyLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmxpdmUtdGlja2VyIC5saXZlLXRpY2tlci10aXRsZTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDFweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICB0b3A6IDhweDtcbiAgICAgIGxlZnQ6IDA7IH1cbiAgICAubGl2ZS10aWNrZXIgLmxpdmUtdGlja2VyLXRpdGxlIGkge1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgLmxpdmUtdGlja2VyIC5saXZlLXRpY2tlci10aW1lIHtcbiAgICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjsgfVxuICAgIC5saXZlLXRpY2tlciAubGl2ZS10aWNrZXItdGltZSBzcGFuIHtcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XG5cbi5saXZlLWJsb2cgLkNhcHRpb24gYSxcbi5saXZlLWJsb2cgLmNvbnRlbnQgYSB7XG4gIGNvbG9yOiAjMmM4YTgyOyB9XG5cbi5saXZlLWJsb2cgLkNhcHRpb24gLlZvdGUsXG4ubGl2ZS1ibG9nIC5jb250ZW50IC5Wb3RlIHtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG5cbi5saXZlLWJsb2cgLnNjcmJibC1zaXRlUHJldmlldyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDFyZW07IH1cblxuLmxpdmUtYmxvZyAubGFiZWwuYnJlYWtpbmctbmV3cyB7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4ubGl2ZS1ibG9nIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAubGl2ZS1ibG9nIC5hcnRpY2xlLWl0ZW0taW1nIGltZyB7XG4gICAgYXNwZWN0LXJhdGlvOiA0LzM7XG4gICAgLW8tb2JqZWN0LWZpdDogY292ZXI7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7IH1cblxuLmxpdmUtYmxvZyAuYXJ0aWNsZS1pdGVtLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAubGl2ZS1ibG9nIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDEsXG4gIC5saXZlLWJsb2cgLmFydGljbGUtaXRlbS10aXRsZSBoMiB7XG4gICAgZm9udC1zaXplOiAxLjg3NXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubGl2ZS1ibG9nIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDEsXG4gICAgICAubGl2ZS1ibG9nIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDIge1xuICAgICAgICBmb250LXNpemU6IDIuMzc1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuLmxpdmUtYmxvZyAuYXJ0aWNsZS1pdGVtLWNvbnRlbnQgcCB7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBmb250LXNpemU6IDI2cHg7XG4gIGZvbnQtZmFtaWx5OiBcInNrb2xhci1zYW5zLWFyYWJpY1wiOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmxpdmUtYmxvZyAuYXJ0aWNsZS1pdGVtLWNvbnRlbnQgcCB7XG4gICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuXG4ubGl2ZS1ibG9nIC5lbnRyeS1oaWdobGlnaHQge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RjZGZkZjtcbiAgcGFkZGluZy10b3A6IDMwcHg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC5saXZlLWJsb2cgLmVudHJ5LWhpZ2hsaWdodCB1bCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5saXZlLWJsb2cgLmVudHJ5LWhpZ2hsaWdodCBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4OyB9XG4gICAgLmxpdmUtYmxvZyAuZW50cnktaGlnaGxpZ2h0IGxpOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogOXB4O1xuICAgICAgd2lkdGg6IDhweDtcbiAgICAgIGhlaWdodDogOHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7IH1cbiAgICAubGl2ZS1ibG9nIC5lbnRyeS1oaWdobGlnaHQgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbi5saXZlLWJsb2cgLmhlcm8tdG9wIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgcGFkZGluZzogMTVweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5saXZlLWJsb2cgLmhlcm8tdG9wIHtcbiAgICAgIHBhZGRpbmc6IDMwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5saXZlLWJsb2cgLmhlcm8tdG9wIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIC5saXZlLWJsb2cgLmhlcm8tdG9wIC5hcnRpY2xlLWl0ZW0taW5mbyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmxpdmUtYmxvZyAuaGVyby10b3AgLmFydGljbGUtaXRlbS10aXRsZSBoMSB7XG4gICAgZm9udC1zaXplOiAycmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5saXZlLWJsb2cgLmhlcm8tdG9wIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDEge1xuICAgICAgICBmb250LXNpemU6IDNyZW07IH0gfVxuXG4ubGl2ZS1hcnRpY2xlLW1ldGEge1xuICBtYXJnaW4tdG9wOiBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLmxpdmUtYXJ0aWNsZS1tZXRhIC5hcnRpY2xlLWl0ZW0tbWV0YSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5saXZlYmxvZy1jYXBzdWxlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1heC13aWR0aDogODcuNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5saXZlYmxvZy1jYXBzdWxlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuMjgxMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuMjgxMjVyZW07IH0gfVxuXG4ubGl2ZWJsb2ctY2Fwc3VsZSAuaW5uZXIge1xuICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMjBweCAxNnB4O1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3OyB9XG5cbi5saXZlYmxvZy1jYXBzdWxlLmFjdGl2ZSAuaW5uZXIge1xuICBiYWNrZ3JvdW5kOiAjZmZmZDM4OyB9XG5cbi5saXZlYmxvZy1jYXBzdWxlIHNwYW4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tcmlnaHQ6IDhweDsgfVxuICAubGl2ZWJsb2ctY2Fwc3VsZSBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbi1yaWdodDogMTZweDsgfVxuICAgIC5saXZlYmxvZy1jYXBzdWxlIHNwYW46Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9pY29uLWxpdmUtYmxvZy5wbmcpIG5vLXJlcGVhdCA1MCU7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGhlaWdodDogMTVweDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgIG1hcmdpbi1yaWdodDogOHB4OyB9XG5cbmJvZHkuYXJ0aWNsZS1saXZlYmxvZyAuZW50cnktYXJ0aWNsZS1saXZlYmxvZyB7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGFkZmUxO1xuICBwYWRkaW5nLXRvcDogMThweDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICBib2R5LmFydGljbGUtbGl2ZWJsb2cgLmVudHJ5LWFydGljbGUtbGl2ZWJsb2cge1xuICAgICAgcGFkZGluZy10b3A6IDEycHg7IH0gfVxuXG4ubGl2ZWJsb2cgLmNvbnRlbnQge1xuICBwYWRkaW5nOiAyMHB4IDEuOHJlbSAyMHB4IDIwcHg7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2RjZGZkZjtcbiAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5saXZlYmxvZyAuY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAyMHB4IDRyZW0gMjBweCAyMHB4OyB9IH1cbiAgLmxpdmVibG9nIC5jb250ZW50IGRpdiB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGNvbG9yOiAjMTcyRjJGO1xuICAgIGZvbnQtZmFtaWx5OiBcInNrb2xhci1zYW5zLWFyYWJpY1wiOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5saXZlYmxvZyAuY29udGVudCBkaXYge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuICAgIC5saXZlYmxvZyAuY29udGVudCBkaXY6bm90KDpsYXN0LWNoaWxkKTpub3QoOm9ubHktY2hpbGQpOm5vdCg6ZW1wdHkpOm5vdCguTGlua0ltYWdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gIC5saXZlYmxvZyAuY29udGVudCBwID4gaW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5saXZlYmxvZyAuY29udGVudCBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgLmxpdmVibG9nIC5jb250ZW50IC50d2l0dGVyLXdpZGdldCB7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubGl2ZWJsb2cgLmNvbnRlbnQgaDEsXG4gICAgLmxpdmVibG9nIC5jb250ZW50IGgyLFxuICAgIC5saXZlYmxvZyAuY29udGVudCBoMyB7XG4gICAgICBmb250LXNpemU6IDEuODc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9IH1cbiAgLmxpdmVibG9nIC5jb250ZW50IC5MaW5rRGVzY3JpcHRpb24ge1xuICAgIGZvbnQtZmFtaWx5OiBcIk9wZW4tU2Fuc1wiO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgZm9udC1zaXplOiAyMHB4OyB9XG4gIC5saXZlYmxvZyAuY29udGVudCBibG9ja3F1b3RlIHtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nOiAyLjI1cmVtIDMuNXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyLXJpZ2h0OiAwOyB9XG4gICAgLmxpdmVibG9nIC5jb250ZW50IGJsb2NrcXVvdGU6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCLigJxcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgIGxlZnQ6IDVweDtcbiAgICAgIGNvbG9yOiAjMmM4YTgyO1xuICAgICAgZm9udC1zaXplOiA0LjEyNXJlbTsgfVxuICAgIC5saXZlYmxvZyAuY29udGVudCBibG9ja3F1b3RlOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCLigJxcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgY29sb3I6ICMyYzhhODI7XG4gICAgICBmb250LXNpemU6IDQuMTI1cmVtO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7IH1cbiAgICAubGl2ZWJsb2cgLmNvbnRlbnQgYmxvY2txdW90ZSBwIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgICAubGl2ZWJsb2cgLmNvbnRlbnQgYmxvY2txdW90ZSBwOmxhc3QtY2hpbGQge1xuICAgICAgICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuICAubGl2ZWJsb2cgLmNvbnRlbnQgLnJvdyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5saXZlYmxvZyAuY29udGVudCAucm93IGgyIHtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgIC5saXZlYmxvZyAuY29udGVudCAucm93IGltZyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMXJlbTsgfVxuICAgIC5saXZlYmxvZyAuY29udGVudCAucm93IC5jb2wtbWQtMyB7XG4gICAgICB3aWR0aDogMjAlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07IH1cbiAgICAubGl2ZWJsb2cgLmNvbnRlbnQgLnJvdyAuY29sLW1kLTkge1xuICAgICAgd2lkdGg6IDcwJTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAubGl2ZWJsb2cgLmNvbnRlbnQgLnlvdXR1YmUtcG9zdCBpZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMzgwcHg7IH1cbiAgLmxpdmVibG9nIC5jb250ZW50IGlmcmFtZSxcbiAgLmxpdmVibG9nIC5jb250ZW50IG9iamVjdCxcbiAgLmxpdmVibG9nIC5jb250ZW50IGVtYmVkIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLmxpdmVibG9nIC5jb250ZW50IC5qd3BsYXllciB7XG4gICAgaGVpZ2h0OiAxNzNweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubGl2ZWJsb2cgLmNvbnRlbnQgLmp3cGxheWVyIHtcbiAgICAgICAgaGVpZ2h0OiAzODBweDsgfSB9XG5cbi5saXZlYmxvZyAubGl2ZWJsb2ctY29udGVudCAuY29udGVudCxcbi5sYi1pdGVtcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ubGItaXRlbXMgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLmxiLWl0ZW0ge1xuICBjb2xvcjogIzAwMDAwMDsgfVxuXG4uUmVjZW50UG9zdHNXaWRnZXQgbGk6Zmlyc3QtY2hpbGQgLnBvc3QtZGF0ZSB7XG4gIHBhZGRpbmc6IDAgMjBweCAwIDA7IH1cbiAgLlJlY2VudFBvc3RzV2lkZ2V0IGxpOmZpcnN0LWNoaWxkIC5wb3N0LWRhdGU6YmVmb3JlIHtcbiAgICB0b3A6IDA7IH1cblxuLmxpdmVibG9nIC5saXZlYmxvZy1jb250ZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNkY2RmZGY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiA2OHB4O1xuICBtYXJnaW46IDA7IH1cblxuLmxpdmVibG9nIC5wb3N0LWRhdGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDIwcHggMjBweCAxNXB4IDA7XG4gIGNvbG9yOiAjODg4OyB9XG5cbi5saXZlYmxvZyAucG9zdC1kYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAyNXB4O1xuICBtYXJnaW4tbGVmdDogLTEuNXJlbTtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDtcbiAgYmFja2dyb3VuZDogIzJjOGE4MjsgfVxuXG4ubGl2ZWJsb2cgLnBvc3QtZGF0ZSB0aW1lIHtcbiAgcGFkZGluZy1sZWZ0OiA4cHg7IH1cblxuLmxpdmVibG9nIC5wb3N0LWZvb3RlciB7XG4gIHBhZGRpbmc6IDE2cHggMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZGNkZmRmO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RjZGZkZjtcbiAgYm9yZGVyLXdpZHRoOiAwIDFweCAxcHg7IH1cblxuLmxpdmVibG9nIC5wb3N0LWZvb3RlciB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4ubGl2ZWJsb2cgLnBvc3QtZm9vdGVyIHVsIGxpLmF1dGhvci1uYW1lIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubGl2ZWJsb2cgLnBvc3QtZm9vdGVyIHVsIGxpOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi5saXZlYmxvZyAucG9zdC1mb290ZXIgdWwgbGkge1xuICBwYWRkaW5nOiAwIDhweDtcbiAgZm9udC1mYW1pbHk6IFwiT3Blbi1TYW5zXCI7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cblxuLmxpdmVibG9nIC5wb3N0LWZvb3RlciB1bCBsaTpsYXN0LWNoaWxkIHtcbiAgY29sb3I6ICM4ODg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ubGl2ZWJsb2cgLnBvc3QtZm9vdGVyIHVsIGxpOmxhc3QtY2hpbGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJ8XCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTFweDsgfVxuXG4jbGl2ZS1saXN0LXVwZGF0ZS1idXR0b24ge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAyMHB4IGF1dG87XG4gIGJhY2tncm91bmQ6ICNmZmNkNTA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAzcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4tU2Fuc1wiO1xuICBmb250LXNpemU6IDE0cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAjbGl2ZS1saXN0LXVwZGF0ZS1idXR0b24ge1xuICAgICAgd2lkdGg6IDUxOHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDIwcHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7IH0gfVxuICAjbGl2ZS1saXN0LXVwZGF0ZS1idXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmUxOTU7IH1cbiAgI2xpdmUtbGlzdC11cGRhdGUtYnV0dG9uLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAjbGl2ZS1saXN0LXVwZGF0ZS1idXR0b24gI2xpdmUtbGlzdC11cGRhdGUtYnV0dG9uIC51cGRhdGUtdGV4dCB7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAjbGl2ZS1saXN0LXVwZGF0ZS1idXR0b24gLmljb24tcmVmcmVzaCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgd2lkdGg6IDE4cHg7IH1cbiAgICAjbGl2ZS1saXN0LXVwZGF0ZS1idXR0b24gLmljb24tcmVmcmVzaCBzdmcge1xuICAgICAgZmlsbDogIzAwMDAwMDsgfVxuXG4ubGl2ZWJsb2cgLnBhZ2luYXRpb24td3JhcHBlciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTsgfVxuICAubGl2ZWJsb2cgLnBhZ2luYXRpb24td3JhcHBlcjpiZWZvcmUge1xuICAgIHdpZHRoOiAxcHg7XG4gICAgYmFja2dyb3VuZDogI2RjZGZkZjtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmxpdmVibG9nIC5wYWdpbmF0aW9uLXdyYXBwZXIgLnBhZ2luYXRpb24ge1xuICAgIGZvbnQtZmFtaWx5OiBcIlNUSVggVHdvIFRleHRcIjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBtYXJnaW46IDMwcHggMCAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5saXZlYmxvZyAucGFnaW5hdGlvbi13cmFwcGVyIC5wYWdpbmF0aW9uIC5wcmV2IHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgIC5saXZlYmxvZyAucGFnaW5hdGlvbi13cmFwcGVyIC5wYWdpbmF0aW9uIC5uZXh0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgLmxpdmVibG9nIC5wYWdpbmF0aW9uLXdyYXBwZXIgLnBhZ2luYXRpb24gLnNob3J0Y3V0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIC5saXZlYmxvZyAucGFnaW5hdGlvbi13cmFwcGVyIC5wYWdpbmF0aW9uIC5zaG9ydGN1dCA+ICoge1xuICAgICAgICBtYXJnaW46IDAgMTBweDtcbiAgICAgICAgZGlzcGxheTogZmxleDsgfVxuICAgIC5saXZlYmxvZyAucGFnaW5hdGlvbi13cmFwcGVyIC5wYWdpbmF0aW9uIGEge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGNvbG9yOiAjMmM4YTgyOyB9XG4gICAgICAubGl2ZWJsb2cgLnBhZ2luYXRpb24td3JhcHBlciAucGFnaW5hdGlvbiBhOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiAjNGQ5OThhOyB9XG5cbiNzdGFydC1saXZlIHtcbiAgb3ZlcmZsb3c6IGNsaXA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogM3JlbTsgfVxuXG4jaGVyby1zaWRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgcGFkZGluZzogMzBweDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgI2hlcm8tc2lkZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAjaGVyby1zaWRlIHtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICB0b3A6IDUwcHg7IH0gfVxuICAjaGVyby1zaWRlIC5hcnRpY2xlLWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgI2hlcm8tc2lkZSAuYXJ0aWNsZS1pdGVtLXRpdGxlIGgyIHtcbiAgICBmb250LXNpemU6IDI0cHg7IH1cbiAgI2hlcm8tc2lkZSAuYXJ0aWNsZS1pdGVtLWNvbnRlbnQgcCB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDM1cHg7IH1cblxuLyogLS0tLS0gTGl2ZSBibG9nIGxpc3Qgc3R5bGVzIC0tLS0tLSBFTkQgLS0tLS0tICovXG4uYWR2ZXJ0b3JpYWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDM1cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuYWR2ZXJ0b3JpYWwge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5hZHZlcnRvcmlhbF9faW1nIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgd2lkdGg6IDQ4JTsgfSB9XG4gIC5hZHZlcnRvcmlhbF9faW1nIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmFkdmVydG9yaWFsX19pbWcgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjsgfSB9XG4gIC5hZHZlcnRvcmlhbF9faW5mbyB7XG4gICAgZmxleDogYXV0bztcbiAgICBiYWNrZ3JvdW5kOiAjYWVkN2M2O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDIwcHg7XG4gICAgcGFkZGluZzogMjZweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYWR2ZXJ0b3JpYWxfX2luZm8ge1xuICAgICAgICBwYWRkaW5nOiA3MnB4IDQ0cHg7IH0gfVxuICAgIC5hZHZlcnRvcmlhbF9faW5mbyBoMyB7XG4gICAgICBmb250LXNpemU6IDMxcHg7XG4gICAgICBsaW5lLWhlaWdodDogMzdweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAuYWR2ZXJ0b3JpYWxfX2luZm8gcCB7XG4gICAgICBmb250LWZhbWlseTogXCJza29sYXItc2Fucy1hcmFiaWNcIjtcbiAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4OyB9XG4gICAgICAuYWR2ZXJ0b3JpYWxfX2luZm8gcDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAuYWR2ZXJ0b3JpYWxfX2xvZ28gaW1nIHtcbiAgICB3aWR0aDogMTAwcHg7IH1cbiAgLmFkdmVydG9yaWFsX190YWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDsgfVxuICAgIC5hZHZlcnRvcmlhbF9fdGFnIGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICBwYWRkaW5nOiA1cHggMjBweDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGdhcDogMTBweDtcbiAgICAgIGJhY2tncm91bmQ6ICNmYmU1NWI7XG4gICAgICBmb250LWZhbWlseTogXCJza29sYXItc2Fucy1hcmFiaWNcIjtcbiAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5mbGV4LWVxdWFsIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAuaGVyby1tYWluIC5mbGV4LWVxdWFsIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5mbGV4LWVxdWFsLmFydGljbGVzLWdyaWQge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmZsZXgtZXF1YWwgLmFydGljbGUtaXRlbSB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgICAgIC5oZXJvLW1haW4gLmZsZXgtZXF1YWwgLmFydGljbGUtaXRlbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuZmxleC1lcXVhbCAuYXJ0aWNsZS1pdGVtLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG4gICAgLmZsZXgtZXF1YWwgLmFydGljbGUtaXRlbS1pbmZvIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgICAuZmxleC1lcXVhbCAuYXJ0aWNsZS1pdGVtLWluZm8gLmFydGljbGUtaXRlbS1tZXRhIHtcbiAgICAgICAgbWFyZ2luLXRvcDogYXV0bzsgfVxuICAgIC5mbGV4LWVxdWFsIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5sZy13LWdyaWQtYm9yZGVyID4gZGl2IC5hcnRpY2xlLWl0ZW0ge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmxnLXctZ3JpZC1ib3JkZXIgPiBkaXYgLmFydGljbGUtaXRlbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkMWQ1ZDU7IH0gfVxuXG4ubGctdy1ncmlkLWJvcmRlciAuZ3JpZC1pdGVtcyA+IGRpdiAuYXJ0aWNsZS1pdGVtIHtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDFkNWQ1OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5sZy13LWdyaWQtYm9yZGVyIC5ncmlkLWl0ZW1zID4gZGl2Omxhc3QtY2hpbGQgLmFydGljbGUtaXRlbSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubGctdy1ncmlkLWJvcmRlciAuZ3JpZC1pdGVtcyA+IGRpdjpudGgtbGFzdC1jaGlsZCgyKSAuYXJ0aWNsZS1pdGVtLFxuICAubGctdy1ncmlkLWJvcmRlciAuZ3JpZC1pdGVtcyA+IGRpdjpsYXN0LWNoaWxkIC5hcnRpY2xlLWl0ZW0ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nOiAwOyB9IH1cblxuLmxnLXctZ3JpZC1ib3JkZXIgLmdyaWQtaXRlbXMgPiBkaXY6bnRoLWNoaWxkKG9kZCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmxnLXctZ3JpZC1ib3JkZXIgLmdyaWQtaXRlbXMgPiBkaXY6bnRoLWNoaWxkKG9kZCk6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYWNhY2E7XG4gICAgaGVpZ2h0OiAxMDElO1xuICAgIHdpZHRoOiAxLjNweDtcbiAgICByaWdodDogLTIwLjVweDtcbiAgICB0b3A6IDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmxnLXctZ3JpZC1ib3JkZXIgLmdyaWQtaXRlbXMgPiBkaXY6bnRoLWNoaWxkKG9kZCk6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfSB9XG5cbi5hcnRpY2xlcy1pdGVtLWxpc3QgPiBkaXYge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC5hcnRpY2xlcy1pdGVtLWxpc3QgPiBkaXY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkMWQ1ZDU7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFydGljbGVzLWl0ZW0tbGlzdCAuYXJ0aWNsZS1pdGVtIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgLmFydGljbGVzLWl0ZW0tbGlzdCAuYXJ0aWNsZS1pdGVtIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG4gICAgICAuYXJ0aWNsZXMtaXRlbS1saXN0IC5hcnRpY2xlLWl0ZW0gLmFydGljbGUtaXRlbS1pbWcgPiBhID4gaW1nIHtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiA0LzM7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYmxvY2std3JhcHBlciAuYXJ0aWNsZXMtaXRlbS1saXN0IC5hcnRpY2xlLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gICAgLmJsb2NrLXdyYXBwZXIgLmFydGljbGVzLWl0ZW0tbGlzdCAuYXJ0aWNsZS1pdGVtIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5hcnRpY2xlcy1pdGVtLWxpc3QgLmxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmhhcy1zZXBhcmF0b3ItZ3JpZC5ncmlkLWl0ZW1zID4gZGl2IHtcbiAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuaGFzLXNlcGFyYXRvci1ncmlkLmdyaWQtaXRlbXMgPiBkaXYge1xuICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07IH0gfVxuXG4uaGFzLXNlcGFyYXRvci1ncmlkLmdyaWQtaXRlbXMgPiBkaXYgLmFydGljbGUtaXRlbSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDFkNWQ1OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmhhcy1zZXBhcmF0b3ItZ3JpZC5ncmlkLWl0ZW1zID4gZGl2IC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaGFzLXNlcGFyYXRvci1ncmlkLmdyaWQtaXRlbXMgPiBkaXYgLmFydGljbGUtaXRlbSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5oYXMtc2VwYXJhdG9yLWdyaWQuZ3JpZC1pdGVtcyA+IGRpdjpudGgtbGFzdC1jaGlsZCgyKSAuYXJ0aWNsZS1pdGVtLFxuICAuaGFzLXNlcGFyYXRvci1ncmlkLmdyaWQtaXRlbXMgPiBkaXY6bGFzdC1jaGlsZCAuYXJ0aWNsZS1pdGVtIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH0gfVxuXG4udmVydGljYWwtc2VwYXJhdG9yID4gZGl2IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC52ZXJ0aWNhbC1zZXBhcmF0b3IgPiBkaXY6bm90KDpsYXN0LWNoaWxkKTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NhY2FjYTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDFweDtcbiAgICByaWdodDogLTIwLjVweDtcbiAgICB0b3A6IDA7IH1cbiAgICAubWFpbi1jb250YWluZXIgPiAudmVydGljYWwtc2VwYXJhdG9yID4gZGl2Om5vdCg6bGFzdC1jaGlsZCk6YWZ0ZXIge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC52ZXJ0aWNhbC1zZXBhcmF0b3IgPiBkaXY6bm90KDpsYXN0LWNoaWxkKTphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgLnNtYWxsLWdyaWQtY29sbGFwc2UgPiAudmVydGljYWwtc2VwYXJhdG9yID4gZGl2Om5vdCg6bGFzdC1jaGlsZCk6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfSB9XG5cbi52ZXJ0aWNhbC1zZXBhcmF0b3IuaGFzLXNlcGFyYXRvci1ncmlkID4gZGl2Om50aC1jaGlsZChldmVuKTphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAudmVydGljYWwtc2VwYXJhdG9yLmdyaWQtY29sdW1uLTIgPiBkaXY6bnRoLWNoaWxkKGV2ZW4pOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfSB9XG5cbi52ZXJ0aWNhbC1zZXBhcmF0b3IuZ3JpZC1jb2x1bW4tNCA+IGRpdjpudGgtY2hpbGQoNG4pOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnZlcnRpY2FsLXNlcGFyYXRvci5oZXJvLXdyYXAgPiBkaXY6bm90KDpsYXN0LWNoaWxkKTphZnRlciwgLnZlcnRpY2FsLXNlcGFyYXRvci5ncmlkLWNvbHVtbiA+IGRpdjpub3QoOmxhc3QtY2hpbGQpOmFmdGVyLCAudmVydGljYWwtc2VwYXJhdG9yLnZpZGVvLXNlY3Rpb24gPiBkaXY6bm90KDpsYXN0LWNoaWxkKTphZnRlciwgLnZlcnRpY2FsLXNlcGFyYXRvci5tYWluID4gZGl2Om5vdCg6bGFzdC1jaGlsZCk6YWZ0ZXIsIC52ZXJ0aWNhbC1zZXBhcmF0b3IubGctdy1ncmlkLWJvcmRlciA+IGRpdjpub3QoOmxhc3QtY2hpbGQpOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC52ZXJ0aWNhbC1zZXBhcmF0b3IuYXJ0aWNsZXMtZ3JpZCA+IGRpdjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH0gfVxuXG4uZ3JpZC1zdHlsZS12MiA+IGRpdjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5ncmlkLXN0eWxlLXYyID4gZGl2Om5vdCg6bGFzdC1jaGlsZCk6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYWNhY2E7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxLjNweDtcbiAgICByaWdodDogLTFyZW07XG4gICAgdG9wOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5ncmlkLXN0eWxlLXYyIC5ncmlkLWl0ZW1zID4gLmNlbGw6bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDFkNWQ1O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5ncmlkLWl0ZW1zIC5hcnRpY2xlLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5ncmlkLWl0ZW1zIC5hcnRpY2xlLWl0ZW0gLmFydGljbGUtaXRlbS1pbWcge1xuICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmdyaWQtY29sdW1uID4gLmNlbGw6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkMWQ1ZDU7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLWNvbHVtbiAubWFpbi1pdGVtIC5hcnRpY2xlLWl0ZW0tY29udGVudCB7XG4gICAgaGVpZ2h0OiA1NXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuZ3JpZC1jb2x1bW4tMiB7XG4gICAgZ2FwOiAxLjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuZ3JpZC1jb2x1bW4tMiA+IC5jZWxsOm5vdCg6bGFzdC1jaGlsZCkgLnNlY3Rpb24td3JhcHBlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkMWQ1ZDU7IH0gfVxuXG4uZ3JpZC1jb2x1bW4tMiAubWVkaWEtYXJ0aWNsZS1saXN0ID4gLmFydGljbGUtbGlzdC1pdGVtOm50aC1jaGlsZCgxKSAubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQsXG4uZ3JpZC1jb2x1bW4tMiAubWVkaWEtYXJ0aWNsZS1saXN0ID4gLmFydGljbGUtbGlzdC1pdGVtOm50aC1jaGlsZCgyKSAubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5ncmlkLWNvbHVtbi0yIC5tZWRpYS1hcnRpY2xlLWxpc3QgaDMge1xuICBmb250LXdlaWdodDogbm9ybWFsOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zbS1zZXBhcmF0b3Ige1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDFkNWQ1OyB9IH1cblxuLmFydGljbGVzLWdyaWQgLmFydGljbGUtaXRlbSB7XG4gIHBhZGRpbmctYm90dG9tOiAycmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmFydGljbGVzLWdyaWQgLmFydGljbGUtaXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7IH0gfVxuXG4uYXJ0aWNsZXMtZ3JpZC5oYXMtc2VwYXJhdG9yID4gZGl2IHtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07IH1cbiAgLmFydGljbGVzLWdyaWQuaGFzLXNlcGFyYXRvciA+IGRpdiAuYXJ0aWNsZS1pdGVtIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2QxZDVkNTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAuYXJ0aWNsZXMtZ3JpZC5oYXMtc2VwYXJhdG9yID4gZGl2IC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cbiAgLmFydGljbGVzLWdyaWQuaGFzLXNlcGFyYXRvciA+IGRpdjpudGgtY2hpbGQoMW4gKyAxKTpudGgtbGFzdC1jaGlsZCgtbiArIDEpOm5vdCguaGlkZS1mb3ItbGFyZ2UpIC5hcnRpY2xlLWl0ZW0sXG4gIC5hcnRpY2xlcy1ncmlkLmhhcy1zZXBhcmF0b3IgPiBkaXY6bnRoLWNoaWxkKDFuICsgMSk6bnRoLWxhc3QtY2hpbGQoLW4gKyAxKTpub3QoLmhpZGUtZm9yLWxhcmdlKSB+IC5jZWxsIC5hcnRpY2xlLWl0ZW0ge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmFydGljbGVzLWdyaWQuaGFzLXNlcGFyYXRvciA+IGRpdjpudGgtY2hpbGQoMm4gKyAxKTpudGgtbGFzdC1jaGlsZCgtbiArIDIpOm5vdCguaGlkZS1mb3ItbGFyZ2UpIC5hcnRpY2xlLWl0ZW0sXG4gICAgLmFydGljbGVzLWdyaWQuaGFzLXNlcGFyYXRvciA+IGRpdjpudGgtY2hpbGQoMm4gKyAxKTpudGgtbGFzdC1jaGlsZCgtbiArIDIpOm5vdCguaGlkZS1mb3ItbGFyZ2UpIH4gLmNlbGwgLmFydGljbGUtaXRlbSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFydGljbGVzLWdyaWQuaGFzLXNlcGFyYXRvciA+IGRpdjpudGgtY2hpbGQoM24gKyAxKTpudGgtbGFzdC1jaGlsZCgtbiArIDMpOm5vdCguaGlkZS1mb3ItbGFyZ2UpIC5hcnRpY2xlLWl0ZW0sXG4gICAgLmFydGljbGVzLWdyaWQuaGFzLXNlcGFyYXRvciA+IGRpdjpudGgtY2hpbGQoM24gKyAxKTpudGgtbGFzdC1jaGlsZCgtbiArIDMpOm5vdCguaGlkZS1mb3ItbGFyZ2UpIH4gLmNlbGwgLmFydGljbGUtaXRlbSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcnRpY2xlcy1ncmlkLmxhcmdlLXVwLTQuaGFzLXNlcGFyYXRvciA+IGRpdjpudGgtY2hpbGQoNG4gKyAxKTpudGgtbGFzdC1jaGlsZCgtbiArIDQpOm5vdCguaGlkZS1mb3ItbGFyZ2UpIC5hcnRpY2xlLWl0ZW0sXG4gIC5hcnRpY2xlcy1ncmlkLmxhcmdlLXVwLTQuaGFzLXNlcGFyYXRvciA+IGRpdjpudGgtY2hpbGQoNG4gKyAxKTpudGgtbGFzdC1jaGlsZCgtbiArIDQpOm5vdCguaGlkZS1mb3ItbGFyZ2UpIH4gLmNlbGwgLmFydGljbGUtaXRlbSB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7IH0gfVxuXG4uaGFzLXRvcC1zZXBhcmF0b3IgPiAuY2VsbCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDFkNWQ1O1xuICBwYWRkaW5nLXRvcDogMXJlbTsgfVxuXG4uYm90dG9tLWJvcmRlci5ncmlkLWl0ZW1zID4gZGl2IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkMWQ1ZDU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuYm90dG9tLWJvcmRlci5ncmlkLWl0ZW1zID4gZGl2IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfSB9XG5cbi5ib3R0b20tYm9yZGVyID4gLmFydGljbGUtaXRlbSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDFkNWQ1O1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5ib3R0b20tYm9yZGVyID4gLmFydGljbGUtaXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH0gfVxuXG4udG9wLWJvcmRlciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDFkNWQ1O1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgbWFyZ2luLXRvcDogMXJlbTsgfVxuXG4vKiBEcnVwYWwgYWRtaW4gc3R5bGVzIC0tLS0tIFNUQVJUIC0tLS0tKi9cbmJvZHkudXNlci1sb2dnZWQtaW4gdWwudGFicy5wcmltYXJ5IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIGJvZHkudXNlci1sb2dnZWQtaW4gdWwudGFicy5wcmltYXJ5IGxpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIDVweCA4cHg7XG4gICAgcGFkZGluZzogNXB4IDE1cHg7IH1cbiAgICBib2R5LnVzZXItbG9nZ2VkLWluIHVsLnRhYnMucHJpbWFyeSBsaTpob3ZlciwgYm9keS51c2VyLWxvZ2dlZC1pbiB1bC50YWJzLnByaW1hcnkgbGkuYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6ICMyYzhhODI7IH1cbiAgICAgIGJvZHkudXNlci1sb2dnZWQtaW4gdWwudGFicy5wcmltYXJ5IGxpOmhvdmVyIGEsIGJvZHkudXNlci1sb2dnZWQtaW4gdWwudGFicy5wcmltYXJ5IGxpLmFjdGl2ZSBhIHtcbiAgICAgICAgY29sb3I6IHdoaXRlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIGJvZHkudXNlci1vcGVuIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbjsgfVxuICAgIGJvZHkudXNlci1vcGVuOmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluIDAuMnM7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgY29udGVudDogXCJcIjsgfSB9XG5cbi5hamF4LXByb2dyZXNzLWZ1bGxzY3JlZW4ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2xvYWRpbmcuc3ZnKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgfVxuXG4vKiBEcnVwYWwgYWRtaW4gc3R5bGVzIC0tLS0tIEVORCAtLS0tLSovXG4uYWpheC1wcm9ncmVzcyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGhlaWdodDogNTBweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBtYXJnaW46IDEwcHggYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cblxuKiB7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG46Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7IH1cblxuLnNob3ctZm9yLXByaW50YWJsZS1hcmVhIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5pbnB1dC5yYWRpdXMsXG4uaW5wdXQtZ3JvdXAgPiBpbnB1dDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuXG4uc2VhcmNoLWZvcm0gaW5wdXQuaW5wdXQtZ3JvdXAtZmllbGQge1xuICBib3JkZXItcmFkaXVzOiA0cHggIWltcG9ydGFudDsgfVxuXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogMTByZW07IH1cblxuYSB7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGVhc2UgMHMsIGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZSAwcywgb3BhY2l0eSAwLjI1cyBlYXNlIDBzOyB9XG4gIGEuaG92ZXJlZCB7XG4gICAgY29sb3I6ICM1ZjcxNzY7IH1cbiAgYS5jbGFzc2ljOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBjb2xvcjogIzJjOGE4MjsgfVxuXG4ub2ZmLWNhbnZhcyB7XG4gIGhlaWdodDogMTAwJTsgfVxuXG5idXR0b24uZ3JheS5ob2xsb3csXG4uYnV0dG9uLmdyYXkuaG9sbG93IHtcbiAgY29sb3I6ICM3MTcxNzE7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkY2RmZGY7IH1cbiAgYnV0dG9uLmdyYXkuaG9sbG93OmhvdmVyLFxuICAuYnV0dG9uLmdyYXkuaG9sbG93OmhvdmVyIHtcbiAgICBjb2xvcjogIzJjOGE4MjtcbiAgICBib3JkZXItY29sb3I6ICMyYzhhODI7IH1cblxuYnV0dG9uLmxpZ2h0LWdyZWVuLFxuLmJ1dHRvbi5saWdodC1ncmVlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2Y0ZjM7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG4gIGJ1dHRvbi5saWdodC1ncmVlbjpob3ZlcixcbiAgLmJ1dHRvbi5saWdodC1ncmVlbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJjOGE4MjsgfVxuXG5idXR0b24ucmFkaXVzLFxuLmJ1dHRvbi5yYWRpdXMge1xuICBib3JkZXItcmFkaXVzOiA0cHg7IH1cblxuYnV0dG9uLnByaW1hcnksXG4uYnV0dG9uLnByaW1hcnkge1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4uYnV0dG9uLnByaW1hcnk6aG92ZXIsIC5idXR0b24ucHJpbWFyeTpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5idXR0b24ucHJpbWFyeS1saWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2ZhZmE7XG4gIGNvbG9yOiAjNGQ4YTg4O1xuICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjsgfVxuICAuYnV0dG9uLnByaW1hcnktbGlnaHQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyYzhhODI7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cblxuLypJQ09OUyovXG4uaWNvbi11c2VyLWNpcmNsZS1vOmJlZm9yZSxcbi5pY29uLWNoZWNrLWdyZWVuOmJlZm9yZSxcbi5pY29uLW5ld3M6YmVmb3JlLFxuLmljb24tZW52ZWxvcDE6YmVmb3JlLFxuLmljb24tcGx1cy1ncmVlbjpiZWZvcmUsXG4uaWNvbi1ib29rbWFyay1vdXRsaW5lOmJlZm9yZSxcbi5pY29uLXRlbGVncmFtOmJlZm9yZSxcbi5pY29uLXNoYXJlOmJlZm9yZSxcbi5pY29uLWVudmVsb3AyOmJlZm9yZSxcbi5pY29uLXBsYXktZ3JlZW46YmVmb3JlLFxuLmljb24tY2FsZW5kYXI6YmVmb3JlLFxuLmljb24tbGl2ZTpiZWZvcmUsXG4uaWNvbi1zaGFyZTI6YmVmb3JlLFxuLmljb24tbWVudTpiZWZvcmUge1xuICBjb2xvcjogaW5oZXJpdDsgfVxuXG4ubWV0YS1pY28ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAubWV0YS1pY28gaSB7XG4gICAgZm9udC1zaXplOiAxNXB4OyB9XG4gIC5tZXRhLWljbyBhIHtcbiAgICBjb2xvcjogIzJjOGE4MjsgfVxuICAgIC5tZXRhLWljbyBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi5yZWQtYnVsbGV0cyBsaSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5yZWQtYnVsbGV0cyBsaTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTE0XCI7XG4gICAgLyogQWRkIGNvbnRlbnQ6IFxcMjAyMiBpcyB0aGUgQ1NTIENvZGUvdW5pY29kZSBmb3IgYSBidWxsZXQgKi9cbiAgICBjb2xvcjogI2NlNDI0MjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IDhweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMTBweDtcbiAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7IH1cbiAgICBbZGlyPVwibHRyXCJdIC5yZWQtYnVsbGV0cyBsaTpiZWZvcmUge1xuICAgICAgdG9wOiA3cHg7IH1cblxuLmRhcmstdGhlbWUgbWFpbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5kYXJrLXRoZW1lIG1haW4gYSB7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cblxuLmRhcmstdGhlbWUgaHIge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjMzgzODM4OyB9XG5cbi8qIFNlYXJjaCBBcmVhIFN0eWxlcyAtLS0tLSBTVEFSVCAtLS0tLSAqL1xuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnNlYXJjaC1mcmFtZSB7XG4gICAgbWFyZ2luLXRvcDogMTVweDsgfSB9XG5cbi5zZWFyY2gtZnJhbWUgaWZyYW1lIHtcbiAgYm9yZGVyOiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogNDAwcHg7IH1cblxuLnNlYXJjaC1hcmVhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICBmb250LXNpemU6IDE4cHg7IH1cbiAgLnNlYXJjaC1hcmVhIC5zZWFyY2gtaW5wdXQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItbGVmdDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk1OTU5NTtcbiAgICBjb2xvcjogIzJjOGE4MjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgICAuc2VhcmNoLWFyZWEgLnNlYXJjaC1pbnB1dDpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDVweCB0cmFuc3BhcmVudDsgfVxuICAuc2VhcmNoLWFyZWEgaSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBwYWRkaW5nOiAwLjdyZW0gMDsgfVxuICAuc2VhcmNoLWFyZWEgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBwYWRkaW5nOiA1cHggMDtcbiAgICByaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjMmM4YTgyO1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLmNhbnZhcy1wYW5lbCAuc2VhcmNoLWFyZWEgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIC5jYW52YXMtcGFuZWwgLnNlYXJjaC1hcmVhIC5zZWFyY2gtYXJlYS0taW5wdXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogIzY0N2U3YztcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4OyB9XG4gICAgLmNhbnZhcy1wYW5lbCAuc2VhcmNoLWFyZWEgaW5wdXRbdHlwZT1cInRleHRcIl06OnBsYWNlaG9sZGVyLFxuICAgIC5jYW52YXMtcGFuZWwgLnNlYXJjaC1hcmVhIC5zZWFyY2gtYXJlYS0taW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAjNjQ3ZTdjOyB9XG4gIC5jYW52YXMtcGFuZWwgLnNlYXJjaC1hcmVhIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG4gIC5jYW52YXMtcGFuZWwgLnNlYXJjaC1hcmVhIC5zZWFyY2gtYXJlYS0tc3VibWl0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgcGFkZGluZzogN3B4IDA7IH1cblxuLnNlYXJjaC1hcmVhLS1pbnB1dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyLjczNzVyZW07XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5NTkyOTI7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogIzY0N2U3YzsgfVxuXG4uc2VhcmNoLWFyZWEtLXN1Ym1pdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAyMnB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLnNlYXJjaC1oZWFkaW5nIHtcbiAgY29sb3I6ICMyYzhhODI7IH1cblxuLnNlYXJjaC1zZWN0aW9uIHtcbiAgY29sb3I6ICM1NTU1NTU7XG4gIG1hcmdpbi10b3A6IDJyZW07IH1cbiAgLnNlYXJjaC1zZWN0aW9uIHVsIHtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5zZWFyY2gtc2VjdGlvbiB1bCBsaSB7XG4gICAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgICAuc2VhcmNoLXNlY3Rpb24gdWwgbGkuaG90IGEge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgLnNlYXJjaC1zZWN0aW9uIHVsIGxpLmhvdCBhOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZTkyMFwiO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCIgIWltcG9ydGFudDtcbiAgICAgICAgICBsZWZ0OiAtMS41cmVtO1xuICAgICAgICAgIGNvbG9yOiAjY2U0MjQyOyB9XG5cbi5tYWluLWhlYWRlci1pbm5lciAuc2VhcmNoLWJ0biBhIHtcbiAgY29sb3I6ICMyYzhhODI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC5tYWluLWhlYWRlci1pbm5lciAuc2VhcmNoLWJ0biBhIGkge1xuICAgIGNvbG9yOiAjMjUzYzNhO1xuICAgIG1hcmdpbi1yaWdodDogNnB4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zZWFyY2gtcmVzdWx0cyAuYXJ0aWNsZS1pdGVtLWltZyBpbWcge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnNlYXJjaC1yZXN1bHRzIC5hcnRpY2xlLWl0ZW0taW5mbyB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTsgfSB9XG5cbi5yZXN1bHQtY291bnQge1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogIzkyOTg5ODtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIG1hcmdpbi10b3A6IDAuM3JlbTsgfVxuXG4vKiBTZWFyY2ggQXJlYSBTdHlsZXMgLS0tLS0gRU5EIC0tLS0tICovXG4uY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG92ZXJmbG93LXg6IGhpZGRlbjsgfVxuICAubGl2ZS1uZXdzMSAuY29udGFpbmVyIHtcbiAgICBvdmVyZmxvdy14OiBjbGlwOyB9XG5cbm1haW4sXG5oZWFkZXIsXG5mb290ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuaHRtbCB7XG4gIGhlaWdodDogMTAwJTtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7IH1cblxubWFpbiB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIG1haW4gLmdyaWQtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGJvZHk6bm90KC5hYm91dC11cyk6bm90KC5hYm91dC1wYWdlKTpub3QoLmRhcmstdGhlbWUpOm5vdCgucGF0aC1qb3VybmV5KTpub3QoXG4gICAgLnBhZ2Utbm9kZS10eXBlLXBvZGNhc3QpIG1haW4gPiBkaXY6Zmlyc3QtY2hpbGQ6bm90KC5uZXdzLXRpY2tlci1hcmVhKSB7XG4gICAgICBtYXJnaW4tdG9wOiAycmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmNvbnRlbnQtd3JhcCB7XG4gICAgbWFyZ2luLXRvcDogMTVweDsgfSB9XG5cbi5kYXJrLWJnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmRhcmstYmcuZnVsbCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICByaWdodDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtNTB2dztcbiAgICBtYXJnaW4tcmlnaHQ6IC01MHZ3OyB9XG4gIC5kYXJrLWJnIC5lbnRyeS1jb250ZW50IHtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuZGFyay1iZyAuZW50cnktZGF0ZSB7XG4gICAgY29sb3I6ICNkZmRmZGY7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtYXgtd2lkdGg6IDEwMzBweCkge1xuICAuc2lkZWJhci13cmFwLFxuICAuc3RhdGljLWNvbHVtbi13cmFwIHtcbiAgICB3aWR0aDogMjUwcHggIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaWRlYmFyLXdyYXAsXG4gIC5zdGF0aWMtY29sdW1uLXdyYXAge1xuICAgIHdpZHRoOiAzMDlweDtcbiAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc2lkZWJhci13cmFwIC5ibG9jay13cmFwcGVyLFxuICAuc3RhdGljLWNvbHVtbi13cmFwIC5ibG9jay13cmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiAycmVtOyB9XG4gICAgLmhlcm8tbWFpbiAuc2lkZWJhci13cmFwIC5ibG9jay13cmFwcGVyLCAuaGVyby1tYWluXG4gICAgLnN0YXRpYy1jb2x1bW4td3JhcCAuYmxvY2std3JhcHBlciB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnN0YXRpYy1jb2x1bW4td3JhcCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkMWQ1ZDU7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfSB9XG5cbi5ibG9jay13cmFwcGVyOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tYm90dG9tOiAyMnB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmJsb2NrLXdyYXBwZXI6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9IH1cbiAgLmhlcm8tbWFpbiAuYmxvY2std3JhcHBlcjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5ibG9jay13cmFwcGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmJsb2NrLXdyYXBwZXIjc3RpY2t5LWJsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuLmJsb2NrLXdyYXBwZXItLWJvcmRlci10b3Age1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2QxZDVkNTtcbiAgcGFkZGluZy10b3A6IDFyZW07IH1cblxuLmJsb2NrLXdyYXBwZXItLWFkdmVydG9yaWFsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgcGFkZGluZzogOHB4O1xuICBjb2xvcjogIzhhOGE4YTtcbiAgZm9udC1mYW1pbHk6IFwiT3Blbi1TYW5zXCI7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ibG9jay13cmFwcGVyLS1hZHZlcnRvcmlhbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA3MnB4OyB9IH1cblxuLmhlcm8tbWFpbiB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLmhlcm8tbWFpbiAubWVkaXVtLTEyLnNtYWxsLW9yZGVyLTMge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmhlcm8tbWFpbiAubWFpbi1pdGVtIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogLTFyZW07XG4gICAgICBoZWlnaHQ6IDI5MnB4OyB9XG4gICAgICAuaGVyby1tYWluIC5tYWluLWl0ZW0gLmFydGljbGUtaXRlbS1pbWcgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjsgfSB9XG4gIC5oZXJvLW1haW4gLmFydGljbGUtaXRlbS10aXRsZSBoMiB7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBmb250LXNpemU6IDEuNjI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmhlcm8tbWFpbiAuYXJ0aWNsZS1pdGVtLXRpdGxlIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjE4NzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7IH0gfVxuICAgIFtkaXI9XCJsdHJcIl0gLmhlcm8tbWFpbiAuYXJ0aWNsZS1pdGVtLXRpdGxlIGgyIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBsaW5lLWhlaWdodDogaW5pdGlhbDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgW2Rpcj1cImx0clwiXSAuaGVyby1tYWluIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTsgfSB9XG4gIC5oZXJvLW1haW4gLmVudHJ5LWhpZ2h0bGlnaHQge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgW2Rpcj1cImx0clwiXSAuaGVyby1tYWluIC5lbnRyeS1oaWdodGxpZ2h0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgIC5oZXJvLW1haW4gLmVudHJ5LWhpZ2h0bGlnaHQgdWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5oZXJvLW1haW4gLmVudHJ5LWhpZ2h0bGlnaHQgbGkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5oZXJvLW1haW4gLmVudHJ5LWhpZ2h0bGlnaHQgbGkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cbiAgICAgIC5oZXJvLW1haW4gLmVudHJ5LWhpZ2h0bGlnaHQgbGkgYSB7XG4gICAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgICAgICBbZGlyPVwibHRyXCJdIC5oZXJvLW1haW4gLmVudHJ5LWhpZ2h0bGlnaHQgbGkgYSB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICAgICAuaGVyby1tYWluIC5lbnRyeS1oaWdodGxpZ2h0IGxpIGE6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAjMmM4YTgyOyB9XG4gICAgLmhlcm8tbWFpbiAuZW50cnktaGlnaHRsaWdodCB0aW1lIHtcbiAgICAgIGNvbG9yOiAjOTI5ODk4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAuaGVyby1tYWluIC5lbnRyeS1oaWdodGxpZ2h0IHRpbWU6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTI5ODk4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IC0xcHg7XG4gICAgICAgIHRvcDogM3B4OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAuaGVyby1tYWluIC5lbnRyeS1oaWdodGxpZ2h0IHRpbWUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uaGVyby1hZnRlciB7XG4gIG1hcmdpbi10b3A6IDIuNXJlbTtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDFkNWQ1OyB9XG5cbi5zZWN0aW9uLXdyYXBwZXI6bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuLmJsb2NrLXRpdGxlLFxuLnNlY3Rpb24tdGl0bGUsXG4ucGFnZS10aXRsZSxcbi50aXRsZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG4gIC5ibG9jay10aXRsZS50aXRsZS1pdGFsaWMgYSxcbiAgLnNlY3Rpb24tdGl0bGUudGl0bGUtaXRhbGljIGEsXG4gIC5wYWdlLXRpdGxlLnRpdGxlLWl0YWxpYyBhLFxuICAudGl0bGUudGl0bGUtaXRhbGljIGEge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuICAuYmxvY2stdGl0bGUgaDEsXG4gIC5ibG9jay10aXRsZSBoMixcbiAgLmJsb2NrLXRpdGxlIGgzLFxuICAuYmxvY2stdGl0bGUgaDQsXG4gIC5zZWN0aW9uLXRpdGxlIGgxLFxuICAuc2VjdGlvbi10aXRsZSBoMixcbiAgLnNlY3Rpb24tdGl0bGUgaDMsXG4gIC5zZWN0aW9uLXRpdGxlIGg0LFxuICAucGFnZS10aXRsZSBoMSxcbiAgLnBhZ2UtdGl0bGUgaDIsXG4gIC5wYWdlLXRpdGxlIGgzLFxuICAucGFnZS10aXRsZSBoNCxcbiAgLnRpdGxlIGgxLFxuICAudGl0bGUgaDIsXG4gIC50aXRsZSBoMyxcbiAgLnRpdGxlIGg0IHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAuYmxvY2stdGl0bGUgaDEsXG4gICAgICAuYmxvY2stdGl0bGUgaDIsXG4gICAgICAuYmxvY2stdGl0bGUgaDMsXG4gICAgICAuYmxvY2stdGl0bGUgaDQsXG4gICAgICAuc2VjdGlvbi10aXRsZSBoMSxcbiAgICAgIC5zZWN0aW9uLXRpdGxlIGgyLFxuICAgICAgLnNlY3Rpb24tdGl0bGUgaDMsXG4gICAgICAuc2VjdGlvbi10aXRsZSBoNCxcbiAgICAgIC5wYWdlLXRpdGxlIGgxLFxuICAgICAgLnBhZ2UtdGl0bGUgaDIsXG4gICAgICAucGFnZS10aXRsZSBoMyxcbiAgICAgIC5wYWdlLXRpdGxlIGg0LFxuICAgICAgLnRpdGxlIGgxLFxuICAgICAgLnRpdGxlIGgyLFxuICAgICAgLnRpdGxlIGgzLFxuICAgICAgLnRpdGxlIGg0IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTsgfSB9XG4gICAgLmJsb2NrLXRpdGxlIGgxIGEsXG4gICAgLmJsb2NrLXRpdGxlIGgyIGEsXG4gICAgLmJsb2NrLXRpdGxlIGgzIGEsXG4gICAgLmJsb2NrLXRpdGxlIGg0IGEsXG4gICAgLnNlY3Rpb24tdGl0bGUgaDEgYSxcbiAgICAuc2VjdGlvbi10aXRsZSBoMiBhLFxuICAgIC5zZWN0aW9uLXRpdGxlIGgzIGEsXG4gICAgLnNlY3Rpb24tdGl0bGUgaDQgYSxcbiAgICAucGFnZS10aXRsZSBoMSBhLFxuICAgIC5wYWdlLXRpdGxlIGgyIGEsXG4gICAgLnBhZ2UtdGl0bGUgaDMgYSxcbiAgICAucGFnZS10aXRsZSBoNCBhLFxuICAgIC50aXRsZSBoMSBhLFxuICAgIC50aXRsZSBoMiBhLFxuICAgIC50aXRsZSBoMyBhLFxuICAgIC50aXRsZSBoNCBhIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0OyB9XG4gICAgICAuYmxvY2stdGl0bGUgaDEgYTpob3ZlcixcbiAgICAgIC5ibG9jay10aXRsZSBoMiBhOmhvdmVyLFxuICAgICAgLmJsb2NrLXRpdGxlIGgzIGE6aG92ZXIsXG4gICAgICAuYmxvY2stdGl0bGUgaDQgYTpob3ZlcixcbiAgICAgIC5zZWN0aW9uLXRpdGxlIGgxIGE6aG92ZXIsXG4gICAgICAuc2VjdGlvbi10aXRsZSBoMiBhOmhvdmVyLFxuICAgICAgLnNlY3Rpb24tdGl0bGUgaDMgYTpob3ZlcixcbiAgICAgIC5zZWN0aW9uLXRpdGxlIGg0IGE6aG92ZXIsXG4gICAgICAucGFnZS10aXRsZSBoMSBhOmhvdmVyLFxuICAgICAgLnBhZ2UtdGl0bGUgaDIgYTpob3ZlcixcbiAgICAgIC5wYWdlLXRpdGxlIGgzIGE6aG92ZXIsXG4gICAgICAucGFnZS10aXRsZSBoNCBhOmhvdmVyLFxuICAgICAgLnRpdGxlIGgxIGE6aG92ZXIsXG4gICAgICAudGl0bGUgaDIgYTpob3ZlcixcbiAgICAgIC50aXRsZSBoMyBhOmhvdmVyLFxuICAgICAgLnRpdGxlIGg0IGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogIzJjOGE4MjsgfVxuICAuYmxvY2stdGl0bGUuc2VwYXJhdG9yLWNlbnRlci1hYm92ZTpiZWZvcmUsXG4gIC5zZWN0aW9uLXRpdGxlLnNlcGFyYXRvci1jZW50ZXItYWJvdmU6YmVmb3JlLFxuICAucGFnZS10aXRsZS5zZXBhcmF0b3ItY2VudGVyLWFib3ZlOmJlZm9yZSxcbiAgLnRpdGxlLnNlcGFyYXRvci1jZW50ZXItYWJvdmU6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICAtd2Via2l0LWZsZXgtYmFzaXM6IDA7XG4gICAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6IDA7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAyO1xuICAgIC13ZWJraXQtb3JkZXI6IDE7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDE7XG4gICAgb3JkZXI6IDE7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgdG9wOiAtMTBweDtcbiAgICB3aWR0aDogNXJlbTtcbiAgICBib3JkZXItYm90dG9tOiAwLjEyNXJlbSBzb2xpZCAjMDAwMDAwO1xuICAgIG1hcmdpbjogMXJlbSBhdXRvIDA7IH1cbiAgLmJsb2NrLXRpdGxlLnNlcGFyYXRvci1yaWdodC1hYm92ZTpiZWZvcmUsXG4gIC5zZWN0aW9uLXRpdGxlLnNlcGFyYXRvci1yaWdodC1hYm92ZTpiZWZvcmUsXG4gIC5wYWdlLXRpdGxlLnNlcGFyYXRvci1yaWdodC1hYm92ZTpiZWZvcmUsXG4gIC50aXRsZS5zZXBhcmF0b3ItcmlnaHQtYWJvdmU6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICAtd2Via2l0LWZsZXgtYmFzaXM6IDA7XG4gICAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6IDA7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAyO1xuICAgIC13ZWJraXQtb3JkZXI6IDE7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDE7XG4gICAgb3JkZXI6IDE7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgdG9wOiAtMTBweDtcbiAgICB3aWR0aDogOHJlbTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwMDAwMDtcbiAgICBtYXJnaW46IDFyZW0gMCAwOyB9XG4gIC5ibG9jay10aXRsZS5zdHlsZS12MixcbiAgLnNlY3Rpb24tdGl0bGUuc3R5bGUtdjIsXG4gIC5wYWdlLXRpdGxlLnN0eWxlLXYyLFxuICAudGl0bGUuc3R5bGUtdjIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmJsb2NrLXRpdGxlLnN0eWxlLXYzLFxuICAuc2VjdGlvbi10aXRsZS5zdHlsZS12MyxcbiAgLnBhZ2UtdGl0bGUuc3R5bGUtdjMsXG4gIC50aXRsZS5zdHlsZS12MyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAuYmxvY2stdGl0bGUuc3R5bGUtdjMgLmhlYWQtdGFicyAudGFicyxcbiAgICAuc2VjdGlvbi10aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLFxuICAgIC5wYWdlLXRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMsXG4gICAgLnRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIC5ibG9jay10aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzIGxpLFxuICAgICAgLnNlY3Rpb24tdGl0bGUuc3R5bGUtdjMgLmhlYWQtdGFicyAudGFicyBsaSxcbiAgICAgIC5wYWdlLXRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMgbGksXG4gICAgICAudGl0bGUuc3R5bGUtdjMgLmhlYWQtdGFicyAudGFicyBsaSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgICAuYmxvY2stdGl0bGUuc3R5bGUtdjMgLmhlYWQtdGFicyAudGFicy10aXRsZSxcbiAgICAuc2VjdGlvbi10aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLXRpdGxlLFxuICAgIC5wYWdlLXRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMtdGl0bGUsXG4gICAgLnRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMtdGl0bGUge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgLmJsb2NrLXRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMtdGl0bGU6Zmlyc3QtY2hpbGQgYSxcbiAgICAgIC5zZWN0aW9uLXRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMtdGl0bGU6Zmlyc3QtY2hpbGQgYSxcbiAgICAgIC5wYWdlLXRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMtdGl0bGU6Zmlyc3QtY2hpbGQgYSxcbiAgICAgIC50aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLXRpdGxlOmZpcnN0LWNoaWxkIGEge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzcxNzE3MTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjNzE3MTcxO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzcxNzE3MTsgfVxuICAgICAgLmJsb2NrLXRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMtdGl0bGU6bGFzdC1jaGlsZCBhLFxuICAgICAgLnNlY3Rpb24tdGl0bGUuc3R5bGUtdjMgLmhlYWQtdGFicyAudGFicy10aXRsZTpsYXN0LWNoaWxkIGEsXG4gICAgICAucGFnZS10aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLXRpdGxlOmxhc3QtY2hpbGQgYSxcbiAgICAgIC50aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLXRpdGxlOmxhc3QtY2hpbGQgYSB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNzE3MTcxO1xuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjNzE3MTcxO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzcxNzE3MTsgfVxuICAgICAgLmJsb2NrLXRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMtdGl0bGUgPiBhLFxuICAgICAgLnNlY3Rpb24tdGl0bGUuc3R5bGUtdjMgLmhlYWQtdGFicyAudGFicy10aXRsZSA+IGEsXG4gICAgICAucGFnZS10aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLXRpdGxlID4gYSxcbiAgICAgIC50aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLXRpdGxlID4gYSB7XG4gICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgY29sb3I6ICM3MTcxNzE7XG4gICAgICAgIGZvbnQtc2l6ZTogMC42ODc1cmVtOyB9XG4gICAgICAgIC5ibG9jay10aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLXRpdGxlID4gYTpmb2N1cywgLmJsb2NrLXRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMtdGl0bGUgPiBhW2FyaWEtc2VsZWN0ZWQ9XCJ0cnVlXCJdLCAuYmxvY2stdGl0bGUuc3R5bGUtdjMgLmhlYWQtdGFicyAudGFicy10aXRsZSA+IGE6aG92ZXIsXG4gICAgICAgIC5zZWN0aW9uLXRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMtdGl0bGUgPiBhOmZvY3VzLFxuICAgICAgICAuc2VjdGlvbi10aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSxcbiAgICAgICAgLnNlY3Rpb24tdGl0bGUuc3R5bGUtdjMgLmhlYWQtdGFicyAudGFicy10aXRsZSA+IGE6aG92ZXIsXG4gICAgICAgIC5wYWdlLXRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMtdGl0bGUgPiBhOmZvY3VzLFxuICAgICAgICAucGFnZS10aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSxcbiAgICAgICAgLnBhZ2UtdGl0bGUuc3R5bGUtdjMgLmhlYWQtdGFicyAudGFicy10aXRsZSA+IGE6aG92ZXIsXG4gICAgICAgIC50aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLXRpdGxlID4gYTpmb2N1cyxcbiAgICAgICAgLnRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMtdGl0bGUgPiBhW2FyaWEtc2VsZWN0ZWQ9XCJ0cnVlXCJdLFxuICAgICAgICAudGl0bGUuc3R5bGUtdjMgLmhlYWQtdGFicyAudGFicy10aXRsZSA+IGE6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDAwMDA7XG4gICAgICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmJsb2NrLXRpdGxlLnN0eWxlLXY0LFxuICAuc2VjdGlvbi10aXRsZS5zdHlsZS12NCxcbiAgLnBhZ2UtdGl0bGUuc3R5bGUtdjQsXG4gIC50aXRsZS5zdHlsZS12NCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RmZTNlMztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IDFyZW0gMXJlbSAwLjVyZW07IH1cblxuLmVkaXRvci1lbnRyaWVzIC5tYWluLWVkaXRvcnMgLnNlY3Rpb24tdGl0bGUge1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyB9XG5cbi5lZGl0b3ItZW50cmllcyAudGl0bGUsXG4uZWRpdG9yLWVudHJpZXMgLnNlY3Rpb24tdGl0bGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07IH1cblxuLnNlY3Rpb24tdGl0bGUuc3R5bGUtdjM6YWZ0ZXIsXG4ucGFnZS10aXRsZS5zdHlsZS12MzphZnRlciB7XG4gIG1hcmdpbi10b3A6IDJweDsgfVxuXG4uc2VjdGlvbi10aXRsZS5zdHlsZS12MyBoMSxcbi5zZWN0aW9uLXRpdGxlLnN0eWxlLXYzIGgyLFxuLnNlY3Rpb24tdGl0bGUuc3R5bGUtdjMgaDMsXG4uc2VjdGlvbi10aXRsZS5zdHlsZS12MyBoNCxcbi5zZWN0aW9uLXRpdGxlLnN0eWxlLXYzIGg1LFxuLnNlY3Rpb24tdGl0bGUuc3R5bGUtdjMgaDYsXG4ucGFnZS10aXRsZS5zdHlsZS12MyBoMSxcbi5wYWdlLXRpdGxlLnN0eWxlLXYzIGgyLFxuLnBhZ2UtdGl0bGUuc3R5bGUtdjMgaDMsXG4ucGFnZS10aXRsZS5zdHlsZS12MyBoNCxcbi5wYWdlLXRpdGxlLnN0eWxlLXYzIGg1LFxuLnBhZ2UtdGl0bGUuc3R5bGUtdjMgaDYge1xuICBmb250LXdlaWdodDogODAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zZWN0aW9uLXRpdGxlLnN0eWxlLXYzLFxuICAucGFnZS10aXRsZS5zdHlsZS12MyB7XG4gICAgLypzcGFuIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfSovIH1cbiAgICAuc2VjdGlvbi10aXRsZS5zdHlsZS12MzphZnRlcixcbiAgICAucGFnZS10aXRsZS5zdHlsZS12MzphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLnNlY3Rpb24tdGl0bGUsXG4uYmxvY2stdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cbiAgLnNlY3Rpb24tdGl0bGUgaDIsXG4gIC5zZWN0aW9uLXRpdGxlIGgzLFxuICAuYmxvY2stdGl0bGUgaDIsXG4gIC5ibG9jay10aXRsZSBoMyB7XG4gICAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICBbZGlyPVwibHRyXCJdIC5zZWN0aW9uLXRpdGxlIGgyLCBbZGlyPVwibHRyXCJdXG4gICAgLnNlY3Rpb24tdGl0bGUgaDMsIFtkaXI9XCJsdHJcIl1cbiAgICAuYmxvY2stdGl0bGUgaDIsIFtkaXI9XCJsdHJcIl1cbiAgICAuYmxvY2stdGl0bGUgaDMge1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gIC5pbi1mb2N1cyAuc2VjdGlvbi10aXRsZSwgLmluLWZvY3VzXG4gIC5ibG9jay10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5pbi1mb2N1cyAuc2VjdGlvbi10aXRsZSwgLmluLWZvY3VzXG4gICAgICAuYmxvY2stdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cbiAgICAuaW4tZm9jdXMgLnNlY3Rpb24tdGl0bGUgaDMsIC5pbi1mb2N1c1xuICAgIC5ibG9jay10aXRsZSBoMyB7XG4gICAgICBmb250LXNpemU6IDEuNjI1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuaW4tZm9jdXMgLnNlY3Rpb24tdGl0bGUgaDMsIC5pbi1mb2N1c1xuICAgICAgICAuYmxvY2stdGl0bGUgaDMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07IH0gfVxuICAgIC5pbi1mb2N1cyAuc2VjdGlvbi10aXRsZSAuYnV0dG9uLCAuaW4tZm9jdXNcbiAgICAuYmxvY2stdGl0bGUgLmJ1dHRvbiB7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtOyB9XG5cbi5ibG9jay10aXRsZSBpLmljb24tYXJjaGl2ZSB7XG4gIG1hcmdpbi1yaWdodDogMTBweDsgfVxuXG4ucGFnZS10aXRsZSBoMSB7XG4gIGZvbnQtc2l6ZTogMnJlbTsgfVxuXG4ucGFnZS10aXRsZSBoMiB7XG4gIGZvbnQtc2l6ZTogMnJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5wYWdlLXRpdGxlIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgcGFkZGluZzogMTBweCA1cHg7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGJhY2tncm91bmQ6ICNjZDJjMjQ7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7IH1cbiAgICAgIC5wYWdlLXRpdGxlIGgyIHNwYW4ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyB9IH1cblxuLnBhZ2UtdGl0bGUgLnN1YmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBjb2xvcjogIzRkOTk4YTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYy10YWItY29udGVudF9qcyAuc2VjdGlvbi1jb250ZW50IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9IH1cblxuLm9iamVjdHMtbGlzdCB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgLmJsb2NrLXdyYXBwZXIgLm9iamVjdHMtbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAvKi5vYmplY3QtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAubWVkaWEtb2JqZWN0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9Ki8gfVxuICAub2JqZWN0cy1saXN0LnBhZGRpbmctaG9yaXpvbnRhbC0xIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuICAub2JqZWN0cy1saXN0Lmhhcy1zZXBhcmF0b3IgLm1lZGlhLW9iamVjdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAub2JqZWN0cy1saXN0Lmhhcy1zZXBhcmF0b3IgLm9iamVjdC1pdGVtIHtcbiAgICBwYWRkaW5nOiAxcmVtIDA7IH1cbiAgICAub2JqZWN0cy1saXN0Lmhhcy1zZXBhcmF0b3IgLm9iamVjdC1pdGVtLmluY3JlYXNlZC1zcGFjZSB7XG4gICAgICBwYWRkaW5nOiAxLjVyZW0gMDsgfVxuICAgIC5vYmplY3RzLWxpc3QuaGFzLXNlcGFyYXRvciAub2JqZWN0LWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2QxZDVkNTsgfVxuICAgIC5vYmplY3RzLWxpc3QuaGFzLXNlcGFyYXRvciAub2JqZWN0LWl0ZW0uaW5jcmVhc2VkLXNwYWNlIGgzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07IH1cblxuLm1lZGlhLW9iamVjdC1zZWN0aW9uOm9ubHktY2hpbGQ6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gIHBhZGRpbmctbGVmdDogMDsgfVxuXG4uc2xpY2stZG90cyB7XG4gIGJvdHRvbTogLTIwcHg7IH1cbiAgLnNsaWNrLWRvdHMgbGkge1xuICAgIHdpZHRoOiA0N3B4O1xuICAgIGhlaWdodDogNHB4OyB9XG4gICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgICAgIHdpZHRoOiA0N3B4O1xuICAgICAgaGVpZ2h0OiA0cHg7IH1cbiAgICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICB3aWR0aDogNDdweDtcbiAgICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlY2Y0ZjM7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4OyB9XG4gICAgLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgfVxuXG4uc2xpZGVyLXYxIHtcbiAgbWFyZ2luLXRvcDogLTEuNXJlbTsgfVxuXG4ubWVkaWEtYXJ0aWNsZS1saXN0IGgzIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgW2xhbmc9XCJmYVwiXSAubWVkaWEtYXJ0aWNsZS1saXN0IGgzLFxuICBbbGFuZz1cInVyXCJdIC5tZWRpYS1hcnRpY2xlLWxpc3QgaDMge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAubWVkaWEtYXJ0aWNsZS1saXN0IGgzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG5bbGFuZz1cImZhXCJdIC5tZWRpYS1hcnRpY2xlLWxpc3QgaDQsXG5bbGFuZz1cInVyXCJdIC5tZWRpYS1hcnRpY2xlLWxpc3QgaDQge1xuICBmb250LXdlaWdodDogNjAwOyB9XG5cbi5tZWRpYS1hcnRpY2xlLWxpc3QgLm1lZGlhLW9iamVjdC1pbWcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAubWVkaWEtYXJ0aWNsZS1saXN0IC5tZWRpYS1vYmplY3QtaW1nIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgICAgLm1lZGlhLWFydGljbGUtbGlzdCAubWVkaWEtb2JqZWN0LWltZyA+IGEgPiBpbWcge1xuICAgICAgICBhc3BlY3QtcmF0aW86IDQvMztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLm1lZGlhLWFydGljbGUtbGlzdCAubWVkaWEtb2JqZWN0LWltZyB7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgICBtYXJnaW46IDAuMjVyZW0gMXJlbSAwIDA7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAgIC5tZWRpYS1hcnRpY2xlLWxpc3QgLm1lZGlhLW9iamVjdC1pbWcgPiBhID4gaW1nIHtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiA0LzM7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1lZGlhLWFydGljbGUtbGlzdCAubWVkaWEtb2JqZWN0LWltZyBpbWcge1xuICAgICAgd2lkdGg6IDEyNXB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLm1lZGlhLWFydGljbGUtbGlzdCAubWVkaWEtb2JqZWN0LWltZyBpbWcge1xuICAgICAgd2lkdGg6IDkwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAubWVkaWEtYXJ0aWNsZS1saXN0IC5tZWRpYS1vYmplY3Qge1xuICAgIGdhcDogMjBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5tZWRpYS1hcnRpY2xlLWxpc3QgLm1lZGlhLW9iamVjdC1zZWN0aW9uOm5vdCg6b25seS1jaGlsZCkge1xuICAgIHdpZHRoOiA1MCU7IH0gfVxuXG4ubWVkaWEtYXJ0aWNsZS1saXN0IC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpvbmx5LWNoaWxkOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAubWVkaWEtYXJ0aWNsZS1saXN0IC5hcnRpY2xlLWxpc3QtaXRlbS5oaWRlLWltZyAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9IH1cblxuLm1lZGlhLWFydGljbGUtbGlzdCAuYXJ0aWNsZS1saXN0LWl0ZW0uaGlkZS1pbWcgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuXG4uYXJ0aWNsZXMtbGlzdC5oYXMtc2VwYXJhdG9yIC5tZWRpYS1vYmplY3Qge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5hcnRpY2xlcy1saXN0Lmhhcy1zZXBhcmF0b3IgPiBkaXYge1xuICBwYWRkaW5nOiAxcmVtIDA7IH1cbiAgLmFydGljbGVzLWxpc3QuaGFzLXNlcGFyYXRvciA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cbiAgLmFydGljbGVzLWxpc3QuaGFzLXNlcGFyYXRvciA+IGRpdjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2QxZDVkNTsgfVxuICAuYXJ0aWNsZXMtbGlzdC5oYXMtc2VwYXJhdG9yID4gZGl2IC5hcnRpY2xlLWl0ZW0sXG4gIC5hcnRpY2xlcy1saXN0Lmhhcy1zZXBhcmF0b3IgPiBkaXYgLmFydGljbGUtbGlzdC1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFydGljbGVzLWxpc3QuaGFzLXNlcGFyYXRvciA+IGRpdiAuYXJ0aWNsZS1pdGVtIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmFydGljbGVzLWxpc3QuaGFzLXNlcGFyYXRvciA+IGRpdiAuYXJ0aWNsZS1pdGVtLWluZm8ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXJ0aWNsZXMtbGlzdC5zbS1zaG93LW9uZS5oYXMtc2VwYXJhdG9yID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2QxZDVkNTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAuYXJ0aWNsZXMtbGlzdC5zbS1zaG93LW9uZS5oYXMtc2VwYXJhdG9yID4gZGl2Om5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci1ib3R0b206IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXJ0aWNsZXMtbGlzdC5zbS1oYXMtc2VwYXJhdG9yID4gZGl2Om5vdCg6bGFzdC1jaGlsZCkge1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDFkNWQ1O1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH0gfVxuXG4uYXJ0aWNsZS1saXN0LWl0ZW0gaDYge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4uYXV0aG9yLW5hbWUsXG4uYXJ0aWNsZS1lcGlzb2RlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTsgfVxuICAub2JqZWN0LWl0ZW0uaW5jcmVhc2VkLXNwYWNlIC5hdXRob3ItbmFtZSwgLm9iamVjdC1pdGVtLmluY3JlYXNlZC1zcGFjZVxuICAuYXJ0aWNsZS1lcGlzb2RlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtOyB9XG4gIC5hdXRob3ItbmFtZSBhLFxuICAuYXJ0aWNsZS1lcGlzb2RlIGEge1xuICAgIGZvbnQtZmFtaWx5OiBcIk9wZW4tU2Fuc1wiO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgY29sb3I6ICMyYzhhODI7IH1cbiAgICAuYmxvY2std3JhcHBlci12MiAuYXV0aG9yLW5hbWUgYSwgLmJsb2NrLXdyYXBwZXItdjJcbiAgICAuYXJ0aWNsZS1lcGlzb2RlIGEge1xuICAgICAgY29sb3I6ICM1ZTkwOTY7IH1cbiAgICAuYXV0aG9yLW5hbWUgYTpob3ZlcixcbiAgICAuYXJ0aWNsZS1lcGlzb2RlIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICM0ZDk5OGE7IH1cblxuLmNhdGVnb3J5LWZpZWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG4gIC5jYXRlZ29yeS1maWVsZCBhIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgY29sb3I6ICMyYzhhODI7XG4gICAgcGFkZGluZzogNXB4IDA7IH1cbiAgICAuY2F0ZWdvcnktZmllbGQgYTpob3ZlciB7XG4gICAgICBjb2xvcjogIzI1M2MzYTsgfVxuICAuY2F0ZWdvcnktZmllbGQgc3BhbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW07IH1cblxuLm1ldGEtYXJlYSB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXNpemU6IDAuNzVyZW07IH1cblxuLmxpbmstaG9sZGVyIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIG1hcmdpbjogMCAwIDAuNXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiT3Blbi1TYW5zXCI7IH1cbiAgLmxpbmstaG9sZGVyIGEge1xuICAgIGNvbG9yOiAjNzE3MTcxO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAubGluay1ob2xkZXIgaSB7XG4gICAgZm9udC1zaXplOiAwLjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAubGluay1ob2xkZXIucHJpbWFyeS1jb2xvciBhIHtcbiAgICBjb2xvcjogIzJjOGE4MjsgfVxuICAgIC5saW5rLWhvbGRlci5wcmltYXJ5LWNvbG9yIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cblxuLmFydGljbGUtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuYXJ0aWNsZS1pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5hcnRpY2xlLWl0ZW0uc3R5bGUtdjIgLmFydGljbGUtaXRlbS1pbWcge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAuYXJ0aWNsZS1pdGVtLnN0eWxlLXYyIC5hcnRpY2xlLWl0ZW0taW1nIGltZyB7XG4gICAgICAgIGFzcGVjdC1yYXRpbzogNC8zO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgLW8tb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYXJ0aWNsZS1pdGVtLnN0eWxlLXYyIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuYXJ0aWNsZS1pdGVtLmhlcm8td3JhcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5hcnRpY2xlLWl0ZW0udmlkZW8taXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH0gfVxuICAuZ3JpZC1jb2x1bW4tMiAuYXJ0aWNsZS1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5lZGl0b3JpYWwtbGlzdCAuYXJ0aWNsZS1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1pdGVtcyAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9IH1cbiAgLmFydGljbGVzLWxpc3QgLmFydGljbGUtaXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5hcnRpY2xlcy1saXN0IC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFydGljbGUtaXRlbS1hdWRpbyAuYXJ0aWNsZS1pdGVtLXRpdGxlIHtcbiAgICBtYXgtd2lkdGg6IDcwJTsgfSB9XG5cbi5hcnRpY2xlLWl0ZW0tY29udGVudCBwIHtcbiAgY29sb3I6ICM0ZDRkNGQ7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmFydGljbGUtaXRlbS1kZXNjIHAge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTsgfVxuXG4uYXJ0aWNsZS1pdGVtLWltZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5hcnRpY2xlLWl0ZW0taW1nIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmFydGljbGUtaXRlbS1pbWcgPiBhID4gaW1nIHtcbiAgICAgIGFzcGVjdC1yYXRpbzogNC8zO1xuICAgICAgLW8tb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjsgfSB9XG4gIC5hcnRpY2xlLWl0ZW0taW1nID4gYTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGVhc2UgMHMsIGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZSAwcywgb3BhY2l0eSAwLjI1cyBlYXNlIDBzOyB9XG4gIC5hcnRpY2xlLWl0ZW0taW1nID4gYTpob3ZlcjphZnRlciwgLmFydGljbGUtaXRlbS1pbWcgPiBhLmhvdmVyZWQtaW1nOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgLmFydGljbGUtaXRlbS1pbWcgLnNpZ24taWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBtYXJnaW4tbGVmdDogLTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAtMjBweDsgfVxuICAuZXF1YWxpemUtY29sdW1ucyAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5ibG9jay13cmFwcGVyIC5hcnRpY2xlLWl0ZW0taW1nIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLmdhbWVzLWl0ZW0gLmFydGljbGUtaXRlbS1pbWcgaW1nIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9IH1cbiAgLmhhcy1vdmVybGF5IC5hcnRpY2xlLWl0ZW0taW1nIGE6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDdkNzA7XG4gICAgb3BhY2l0eTogMC4zO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgLmhhcy1vdmVybGF5IC5hcnRpY2xlLWl0ZW0taW1nIGltZyB7XG4gICAgZmlsdGVyOiBncmF5O1xuICAgIC8qIElFNi05ICovXG4gICAgLXdlYmtpdC1maWx0ZXI6IGdyYXlzY2FsZSgxKTtcbiAgICAvKiBHb29nbGUgQ2hyb21lLCBTYWZhcmkgNisgJiBPcGVyYSAxNSsgKi9cbiAgICBmaWx0ZXI6IGdyYXlzY2FsZSgxKTtcbiAgICAvKiBNaWNyb3NvZnQgRWRnZSBhbmQgRmlyZWZveCAzNSsgKi8gfVxuXG4uYXJ0aWNsZS1pdGVtLWF1dGhvciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmFydGljbGUtaXRlbS1hdXRob3IgaW1nIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgbWF4LXdpZHRoOiAyMnB4O1xuICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAuYXJ0aWNsZS1pdGVtLWF1dGhvciBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDM0cHg7IH0gfVxuXG4uYXJ0aWNsZS1pdGVtLXRpdGxlIGgyLFxuLmFydGljbGUtaXRlbS10aXRsZSBoMyxcbi5hcnRpY2xlLWl0ZW0tdGl0bGUgaDQsXG4uYXJ0aWNsZS1pdGVtLXRpdGxlIGg1LFxuLmFydGljbGUtaXRlbS10aXRsZSBoNiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIFtkaXI9XCJsdHJcIl0gLmFydGljbGUtaXRlbS10aXRsZSBoMiwgW2Rpcj1cImx0clwiXVxuICAuYXJ0aWNsZS1pdGVtLXRpdGxlIGgzLCBbZGlyPVwibHRyXCJdXG4gIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDQsIFtkaXI9XCJsdHJcIl1cbiAgLmFydGljbGUtaXRlbS10aXRsZSBoNSwgW2Rpcj1cImx0clwiXVxuICAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg2IHtcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG5cbi50aXRsZS1ub3JtYWwgLmFydGljbGUtaXRlbS10aXRsZSBoMixcbi50aXRsZS1ub3JtYWwgLmFydGljbGUtaXRlbS10aXRsZSBoMyxcbi50aXRsZS1ub3JtYWwgLmFydGljbGUtaXRlbS10aXRsZSBoNCxcbi50aXRsZS1ub3JtYWwgLmFydGljbGUtaXRlbS10aXRsZSBoNSxcbi50aXRsZS1ub3JtYWwgLmFydGljbGUtaXRlbS10aXRsZSBoNiB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cblxuLmhlcm8tc2xpZGVyIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDIge1xuICBmb250LXNpemU6IDIuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhlcm8tc2xpZGVyIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDIge1xuICAgICAgZm9udC1zaXplOiAzLjEyNXJlbTsgfSB9XG5cbi5hcnRpY2xlLWl0ZW0tdGl0bGUgaDUge1xuICBsaW5lLWhlaWdodDogMS42OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFydGljbGUtaXRlbS10aXRsZSBoNSB7XG4gICAgICBsaW5lLWhlaWdodDogMS43OyB9IH1cblxuLmFydGljbGUtaXRlbS10aXRsZSBhIHtcbiAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmFydGljbGUtaXRlbS10aXRsZSBhOmhvdmVyLCAuYXJ0aWNsZS1pdGVtLXRpdGxlIGEuaG92ZXJlZCB7XG4gICAgY29sb3I6ICMyYzhhODI7IH1cblxuLmFydGljbGUtaXRlbS10aXRsZS5zdHlsZS12MiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW07IH1cbiAgLmFydGljbGUtaXRlbS10aXRsZS5zdHlsZS12MiBoNiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjtcbiAgICBmb250LXNpemU6IDAuODEyNXJlbTsgfVxuICAuYXJ0aWNsZS1pdGVtLXRpdGxlLnN0eWxlLXYyIHNwYW4ge1xuICAgIGNvbG9yOiAjMmM4YTgyOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5nYW1lLWl0ZW0taW5mbyAuYXJ0aWNsZS1pdGVtLXRpdGxlIGgyIHtcbiAgICBmb250LXNpemU6IDIuMDYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBhdGgtZnJvbnRwYWdlIC5nYW1lLWl0ZW0taW5mbyAuYXJ0aWNsZS1pdGVtLXRpdGxlIGgzIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTsgfSB9XG5cbi5hcnRpY2xlLWl0ZW0tdGl0bGUgbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6ICNkY2ViZDg7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gIGNvbG9yOiAjMGExYTBmOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLWNvbHVtbi0yIC5hcnRpY2xlLWl0ZW0tdGl0bGUge1xuICAgIG1pbi1oZWlnaHQ6IDU1cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBoZWlnaHQ6IDMwcHg7IH1cbiAgICBbZGlyPVwibHRyXCJdIC5ncmlkLWNvbHVtbi0yIC5hcnRpY2xlLWl0ZW0tdGl0bGUge1xuICAgICAgbWluLWhlaWdodDogNjBweDsgfSB9XG5cbi5hbmNob3Ige1xuICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG4gIC5hbmNob3IgaSB7XG4gICAgZm9udC1zaXplOiA5cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLmFydGljbGUtaXRlbS1jYXRlZ29yeSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luOiAwOyB9XG4gIC5hcnRpY2xlLWl0ZW0tdGl0bGUgLmFydGljbGUtaXRlbS1jYXRlZ29yeSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNHJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjRyZW07IH1cbiAgICAuYXJ0aWNsZS1pdGVtLXRpdGxlIC5hcnRpY2xlLWl0ZW0tY2F0ZWdvcnk6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyYzhhODI7XG4gICAgICB3aWR0aDogMS41cHg7XG4gICAgICBoZWlnaHQ6IDEzcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDZweDtcbiAgICAgIHJpZ2h0OiAwOyB9XG4gICAgLmFydGljbGUtaXRlbS10aXRsZSAuYXJ0aWNsZS1pdGVtLWNhdGVnb3J5IGEge1xuICAgICAgY29sb3I6ICMyYzhhODI7IH1cbiAgICAgIC5hcnRpY2xlLWl0ZW0tdGl0bGUgLmFydGljbGUtaXRlbS1jYXRlZ29yeSBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYXJ0aWNsZXMtbGlzdCAuYXJ0aWNsZS1pdGVtLWNhdGVnb3J5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uYXJ0aWNsZS1pdGVtLWhpZ2hsaWdodCB1bCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAuYXJ0aWNsZS1pdGVtLWhpZ2hsaWdodCB1bCBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgIGZvbnQtZmFtaWx5OiBcIk9wZW4tU2Fuc1wiO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgY29sb3I6ICM1NTU1NTU7IH1cblxuLmFydGljbGUtaXRlbS1mb290ZXIgLmFydGljbGUtaXRlbS1oaWdobGlnaHQgdWwgbGkge1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4uYXJ0aWNsZXMtbGlzdCAuYXJ0aWNsZS1pdGVtLWhpZ2hsaWdodCB1bCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuLmFydGljbGUtaXRlbS1tZXRhIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBjb2xvcjogIzNiM2IzYjtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xuICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5hcnRpY2xlLWl0ZW0tbWV0YSB7XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTsgfSB9XG4gIC5hcnRpY2xlLWl0ZW0tbWV0YSBpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLmFydGljbGUtaXRlbS1tZXRhIGEge1xuICAgIGNvbG9yOiAjMmM4YTgyOyB9XG4gICAgLmFydGljbGUtaXRlbS1tZXRhIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmFydGljbGUtaXRlbS1tZXRhID4gc3Bhbjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjOTI5ODk4O1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTsgfVxuICAuYXJ0aWNsZS1pdGVtLW1ldGEgLm1ldGEtYXV0aG9yIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29sb3I6ICMyYzhhODI7IH1cbiAgLmFydGljbGUtaXRlbS1tZXRhIC5tZXRhLXZpZXdzIHNwYW4ge1xuICAgIGNvbG9yOiAjMmM4YTgyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNlYXJjaC1yZXN1bHRzIC5hcnRpY2xlLWl0ZW0tbWV0YSB7XG4gICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIC5kYXJrLXRoZW1lIC5hcnRpY2xlLWl0ZW0tbWV0YSB7XG4gICAgY29sb3I6ICNhZmFmYWY7IH1cbiAgLmFydGljbGUtaXRlbS1tZXRhLmJyZWFraW5nIHRpbWUge1xuICAgIGNvbG9yOiAjY2U0MjQyOyB9XG5cbi52aWV3cy1jb3VudC1wbGFjZWhvbGRlciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnZpZXdzLWNvdW50LXBsYWNlaG9sZGVyLnNob3d2aWV3cyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi52aWV3cy1jb3VudCxcbi52aWRlby1zdGFtcCB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4tU2Fuc1wiO1xuICBmb250LXNpemU6IDAuNjI1cmVtO1xuICBjb2xvcjogIzg5OGY5MztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnZpZXdzLWNvdW50LFxuICAgIC52aWRlby1zdGFtcCB7XG4gICAgICBsaW5lLWhlaWdodDogMjsgfSB9XG4gIC52aWV3cy1jb3VudC52aWV3cy1jb3VudC1wbGFjZWhvbGRlcixcbiAgLnZpZGVvLXN0YW1wLnZpZXdzLWNvdW50LXBsYWNlaG9sZGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnZpZXdzLWNvdW50LnZpZXdzLWNvdW50LXBsYWNlaG9sZGVyLnNob3d2aWV3cyxcbiAgICAudmlkZW8tc3RhbXAudmlld3MtY291bnQtcGxhY2Vob2xkZXIuc2hvd3ZpZXdzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAudmlld3MtY291bnQgaSxcbiAgLnZpZGVvLXN0YW1wIGkge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi52aWV3cy1jb3VudC5hYnMtZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogNXB4O1xuICBsZWZ0OiAxMHB4O1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgei1pbmRleDogMTsgfVxuXG4udmlkZW8tc3RhbXAuYWJzLWVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNywgNjAsIDU4LCAwLjU5KTtcbiAgcGFkZGluZzogMnB4IDVweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHotaW5kZXg6IDE7XG4gIGZvbnQtZmFtaWx5OiBcIlNUSVggVHdvIFRleHRcIjsgfVxuXG4ubWVkaWEtbGFiZWwge1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyYzhhODI7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLm1lZGlhLWxhYmVsIGkge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMzVyZW07IH1cbiAgLm1lZGlhLWxhYmVsOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmM4YTgyOyB9XG4gIC5hcnRpY2xlLWl0ZW0tbWV0YSAubWVkaWEtbGFiZWwge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG5cbi5tZWRpYS1sYWJlbC5hYnMtZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMC43NXJlbTtcbiAgcmlnaHQ6IDAuNzVyZW07XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5ncmlkLWl0ZW1zIC5tZWRpYS1sYWJlbC5hYnMtZWwsXG4gIC5vYmplY3QtaXRlbSAubWVkaWEtbGFiZWwuYWJzLWVsIHtcbiAgICBib3R0b206IDAuNnJlbTtcbiAgICByaWdodDogMC42cmVtOyB9XG4gIC5vYmplY3QtaXRlbSAubWVkaWEtbGFiZWwuYWJzLWVsIHtcbiAgICBwYWRkaW5nOiAwLjI1cmVtOyB9XG4gICAgLm9iamVjdC1pdGVtIC5tZWRpYS1sYWJlbC5hYnMtZWwgaSB7XG4gICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgLmFydGljbGUtaXRlbS1vdmVyYm94LWlubmVyIC5tZWRpYS1sYWJlbC5hYnMtZWwge1xuICAgIGJvdHRvbTogMS4yNXJlbTtcbiAgICByaWdodDogMnJlbTsgfVxuXG4ucGxheS1pY29uLCAuYWxidW0taWNvbixcbi5hYnMtb3Zlci1pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBmb250LXNpemU6IDJyZW07XG4gIHRvcDogMC41cmVtO1xuICByaWdodDogMC41cmVtO1xuICBtYXJnaW46IDAgYXV0bztcbiAgei1pbmRleDogMTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGxheS1pY29uLCAuYWxidW0taWNvbixcbiAgICAuYWJzLW92ZXItaWNvbiB7XG4gICAgICB0b3A6IDFyZW07XG4gICAgICByaWdodDogMXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMzVweDsgfSB9XG4gIC5wbGF5LWljb24gaW1nLCAuYWxidW0taWNvbiBpbWcsXG4gIC5hYnMtb3Zlci1pY29uIGltZyB7XG4gICAgd2lkdGg6IDMwcHg7IH1cbiAgLmVudHJ5LXJlbGF0ZWQgLnBsYXktaWNvbiwgLmVudHJ5LXJlbGF0ZWQgLmFsYnVtLWljb24sIC5lbnRyeS1yZWxhdGVkXG4gIC5hYnMtb3Zlci1pY29uIHtcbiAgICBmb250LXNpemU6IDIuODEyNXJlbTsgfVxuICAgIC5lbnRyeS1yZWxhdGVkIC5wbGF5LWljb24gaW1nLCAuZW50cnktcmVsYXRlZCAuYWxidW0taWNvbiBpbWcsIC5lbnRyeS1yZWxhdGVkXG4gICAgLmFicy1vdmVyLWljb24gaW1nIHtcbiAgICAgIHdpZHRoOiA1NXB4OyB9XG4gIC5wbGF5LWljb24gaS5pY29uLXBsYXktYXJyb3csIC5hbGJ1bS1pY29uIGkuaWNvbi1wbGF5LWFycm93LFxuICAuYWJzLW92ZXItaWNvbiBpLmljb24tcGxheS1hcnJvdyB7XG4gICAgZm9udC1zaXplOiA4cmVtO1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7IH1cbiAgICAuYXJ0aWNsZXMtbGlzdC5oYXMtc2VwYXJhdG9yIC5wbGF5LWljb24gaS5pY29uLXBsYXktYXJyb3csIC5hcnRpY2xlcy1saXN0Lmhhcy1zZXBhcmF0b3IgLmFsYnVtLWljb24gaS5pY29uLXBsYXktYXJyb3csIC5hcnRpY2xlcy1saXN0Lmhhcy1zZXBhcmF0b3JcbiAgICAuYWJzLW92ZXItaWNvbiBpLmljb24tcGxheS1hcnJvdyB7XG4gICAgICBmb250LXNpemU6IDMuNXJlbTsgfVxuICAgIC5ncmlkLWl0ZW1zIC5wbGF5LWljb24gaS5pY29uLXBsYXktYXJyb3csIC5ncmlkLWl0ZW1zIC5hbGJ1bS1pY29uIGkuaWNvbi1wbGF5LWFycm93LCAuZ3JpZC1pdGVtc1xuICAgIC5hYnMtb3Zlci1pY29uIGkuaWNvbi1wbGF5LWFycm93IHtcbiAgICAgIGZvbnQtc2l6ZTogMy41cmVtOyB9XG4gIC5zaWRlYmFyLXdyYXAgLnBsYXktaWNvbiwgLnNpZGViYXItd3JhcCAuYWxidW0taWNvbiwgLnNpZGViYXItd3JhcFxuICAuYWJzLW92ZXItaWNvbiB7XG4gICAgdG9wOiAwLjVyZW07XG4gICAgcmlnaHQ6IDAuNXJlbTsgfVxuICAgIC5zaWRlYmFyLXdyYXAgLnBsYXktaWNvbiBpbWcsIC5zaWRlYmFyLXdyYXAgLmFsYnVtLWljb24gaW1nLCAuc2lkZWJhci13cmFwXG4gICAgLmFicy1vdmVyLWljb24gaW1nIHtcbiAgICAgIHdpZHRoOiAzMHB4OyB9XG4gIC5ncmlkLWl0ZW1zIC5wbGF5LWljb24sIC5ncmlkLWl0ZW1zIC5hbGJ1bS1pY29uLCAuZ3JpZC1pdGVtc1xuICAuYWJzLW92ZXItaWNvbiB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgdG9wOiBhdXRvO1xuICAgIHJpZ2h0OiAwLjc1cmVtO1xuICAgIGJvdHRvbTogMC43NXJlbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgLnZpZGVvLWxpc3QgLnBsYXktaWNvbiwgLnZpZGVvLWxpc3QgLmFsYnVtLWljb24sIC52aWRlby1saXN0XG4gIC5hYnMtb3Zlci1pY29uIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgdG9wOiAwLjVyZW07XG4gICAgcmlnaHQ6IDAuNXJlbTsgfVxuXG4ubWVkaWEtYXJ0aWNsZS1saXN0IC5hbGJ1bS1pY29uLFxuLnN0YXRpYy1jb2x1bW4td3JhcCAuYWxidW0taWNvbiB7XG4gIHRvcDogN3B4O1xuICBsZWZ0OiA3cHg7IH1cbiAgLm1lZGlhLWFydGljbGUtbGlzdCAuYWxidW0taWNvbiBpbWcsXG4gIC5zdGF0aWMtY29sdW1uLXdyYXAgLmFsYnVtLWljb24gaW1nIHtcbiAgICB3aWR0aDogMThweDsgfVxuXG4ubGFiZWwtbGl2ZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYmFja2dyb3VuZDogIzJjOGE4MjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJjOGE4MjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJjOGE4MjtcbiAgY29sb3I6ICNmZmZmZmY7IH1cblxuLmxhYmVsLFxuLmxhYmVsLWxpdmUge1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5sYWJlbCBhLFxuICAubGFiZWwtbGl2ZSBhIHtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAubGFiZWwgaSxcbiAgLmxhYmVsLWxpdmUgaSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzcHg7IH1cbiAgLmxhYmVsLmFicy1lbCxcbiAgLmxhYmVsLWxpdmUuYWJzLWVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmM4YTgyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICBwYWRkaW5nOiA3cHggN3B4IDVweDsgfVxuICAubGFiZWwubGFiZWwtY2VudGVyLFxuICAubGFiZWwtbGl2ZS5sYWJlbC1jZW50ZXIge1xuICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgcmlnaHQ6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAgIFtkaXI9XCJsdHJcIl0gLmxhYmVsLmxhYmVsLWNlbnRlciwgW2Rpcj1cImx0clwiXVxuICAgIC5sYWJlbC1saXZlLmxhYmVsLWNlbnRlciB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICByaWdodDogaW5pdGlhbDsgfVxuICAubGFiZWwubGFiZWwtYm90dG9tLFxuICAubGFiZWwtbGl2ZS5sYWJlbC1ib3R0b20ge1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogYXV0bzsgfVxuICAubGFiZWwubGl2ZSxcbiAgLmxhYmVsLWxpdmUubGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JkM2MyZjtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5sYWJlbC5saXZlIGk6YmVmb3JlLFxuICAgIC5sYWJlbC1saXZlLmxpdmUgaTpiZWZvcmUge1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmxhYmVsLmJyZWFraW5nLW5ld3MsXG4gIC5sYWJlbC1saXZlLmJyZWFraW5nLW5ld3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiZDNjMmY7IH1cbiAgLmxhYmVsLmFuYWx5c2lzLFxuICAubGFiZWwtbGl2ZS5hbmFseXNpcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJjOGE4MjsgfVxuICAubGFiZWwuc3BlY2lhbCxcbiAgLmxhYmVsLWxpdmUuc3BlY2lhbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBlNDU0MDsgfVxuICAubGFiZWwubGl2ZWNvdmVyYWdlLFxuICAubGFiZWwtbGl2ZS5saXZlY292ZXJhZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiZDNjMmY7IH1cbiAgLmxhYmVsLmJyZWFraW5nLFxuICAubGFiZWwtbGl2ZS5icmVha2luZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2JkM2MyZjsgfVxuICAuYXJ0aWNsZS1pdGVtLXRpdGxlIC5sYWJlbCxcbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uIGgzIC5sYWJlbCxcbiAgLmVudHJ5LWhpZ2hsaWdodCBsaSAubGFiZWwsIC5hcnRpY2xlLWl0ZW0tdGl0bGVcbiAgLmxhYmVsLWxpdmUsXG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiBoM1xuICAubGFiZWwtbGl2ZSxcbiAgLmVudHJ5LWhpZ2hsaWdodCBsaVxuICAubGFiZWwtbGl2ZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjRyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBwYWRkaW5nOiA2cHggNXB4IDVweDsgfVxuICAgIC5hcnRpY2xlLWl0ZW0tdGl0bGUgLmxhYmVsIGksXG4gICAgLm1lZGlhLW9iamVjdC1zZWN0aW9uIGgzIC5sYWJlbCBpLFxuICAgIC5lbnRyeS1oaWdobGlnaHQgbGkgLmxhYmVsIGksIC5hcnRpY2xlLWl0ZW0tdGl0bGVcbiAgICAubGFiZWwtbGl2ZSBpLFxuICAgIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiBoM1xuICAgIC5sYWJlbC1saXZlIGksXG4gICAgLmVudHJ5LWhpZ2hsaWdodCBsaVxuICAgIC5sYWJlbC1saXZlIGkge1xuICAgICAgZm9udC1zaXplOiAxMXB4OyB9XG4gICAgLmFydGljbGUtaXRlbS10aXRsZSAubGFiZWwgLmxvdHRpZS1pY28sXG4gICAgLm1lZGlhLW9iamVjdC1zZWN0aW9uIGgzIC5sYWJlbCAubG90dGllLWljbyxcbiAgICAuZW50cnktaGlnaGxpZ2h0IGxpIC5sYWJlbCAubG90dGllLWljbywgLmFydGljbGUtaXRlbS10aXRsZVxuICAgIC5sYWJlbC1saXZlIC5sb3R0aWUtaWNvLFxuICAgIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiBoM1xuICAgIC5sYWJlbC1saXZlIC5sb3R0aWUtaWNvLFxuICAgIC5lbnRyeS1oaWdobGlnaHQgbGlcbiAgICAubGFiZWwtbGl2ZSAubG90dGllLWljbyB7XG4gICAgICB3aWR0aDogMTZweDsgfVxuICAubWVkaWEtb2JqZWN0LWltZyAubGFiZWwsIC5tZWRpYS1vYmplY3QtaW1nXG4gIC5sYWJlbC1saXZlIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgcGFkZGluZzogNnB4IDVweCA1cHg7IH1cbiAgICAubWVkaWEtb2JqZWN0LWltZyAubGFiZWwgaSwgLm1lZGlhLW9iamVjdC1pbWdcbiAgICAubGFiZWwtbGl2ZSBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDsgfVxuICAgIC5tZWRpYS1vYmplY3QtaW1nIC5sYWJlbCAubG90dGllLWljbywgLm1lZGlhLW9iamVjdC1pbWdcbiAgICAubGFiZWwtbGl2ZSAubG90dGllLWljbyB7XG4gICAgICB3aWR0aDogMTZweDsgfVxuXG4ubG90dGllLWljbyB7XG4gIGhlaWdodDogYXV0bztcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7IH1cbiAgLmxhYmVsLWxpdmUgLmxvdHRpZS1pY28sXG4gIC5sYWJlbCAubG90dGllLWljbyB7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5saXZlLXRpY2tlci10aXRsZSAubG90dGllLWljbyB7XG4gICAgd2lkdGg6IDI1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4uY2FsbG91dC5hbGVydCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzAwMDA7IH1cblxuLmJyZWFraW5nLW5ld3MtYXJlYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7IH1cbiAgLmJyZWFraW5nLW5ld3MtYXJlYSBoNixcbiAgLmJyZWFraW5nLW5ld3MtYXJlYSAubGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMThweDsgfVxuICAuYnJlYWtpbmctbmV3cy1hcmVhIC5sYWJlbC5saXZlIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTIwZGVnLCAjY2MwMDAwIDI1JSwgd2hpdGUgMjUlKTtcbiAgICBjb2xvcjogI2NjMDAwMDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07IH1cbiAgICBbZGlyPVwibHRyXCJdIC5icmVha2luZy1uZXdzLWFyZWEgLmxhYmVsLmxpdmUge1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDIzOGRlZywgI2NjMDAwMCAyNSUsIHdoaXRlIDI1JSk7IH1cbiAgLmJyZWFraW5nLW5ld3MtYXJlYSBhIHtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYnJlYWtpbmctbmV3cy1hcmVhIHNwYW46bm90KC5sYWJlbCkge1xuICAgIHBhZGRpbmc6IDAgMS4zcmVtOyB9XG4gIC5icmVha2luZy1uZXdzLWFyZWEgc3Bhbjpub3QoLmxhYmVsKTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuYnJlYWtpbmctbmV3cy1hcmVhIHNwYW46bm90KC5sYWJlbCk6bm90KDpsYXN0LWNoaWxkKTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIi9cIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiAwOyB9XG4gIC5icmVha2luZy1uZXdzLWFyZWEgLmNsb3NlLWJ1dHRvbiB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogaW5oZXJpdDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYnJlYWtpbmctaGVybyBoMSB7XG4gICAgZm9udC1zaXplOiA1MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7IH0gfVxuXG4uYnJlYWtpbmctaGVybyAuaGVyby1pdGVtIC5hcnRpY2xlLWl0ZW0tdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmJyZWFraW5nLWhlcm8gLmhlcm8taXRlbSAuYXJ0aWNsZS1pdGVtLXRpdGxlIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMzNweDsgfSB9XG5cbi5icmVha2luZy1oZXJvIC5sYWJlbC5hYnMtZWwge1xuICBmb250LXNpemU6IDEzcHg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmVudHJ5LWFydGljbGUtaW5uZXIge1xuICAgIG1hcmdpbi1yaWdodDogLTEuODc1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMS44NzVyZW07IH1cbiAgICAuZW50cnktYXJ0aWNsZS1pbm5lciA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTsgfSB9XG5cbi5lbnRyeS1tZWRpYSB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5lbnRyeS1tZWRpYSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cbiAgLmVudHJ5LW1lZGlhIC5zbGljay1hcnJvdyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgyKTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGhlaWdodDogNDJweDtcbiAgICB3aWR0aDogNDJweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZW50cnktbWVkaWEgLnNsaWNrLWFycm93IHtcbiAgICAgICAgaGVpZ2h0OiA1OXB4O1xuICAgICAgICB3aWR0aDogNTlweDsgfSB9XG4gICAgLmVudHJ5LW1lZGlhIC5zbGljay1hcnJvdzpiZWZvcmUge1xuICAgICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLmVudHJ5LW1lZGlhIC5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgICAgIHJpZ2h0OiAwLjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5lbnRyeS1tZWRpYSAuc2xpY2stYXJyb3cuc2xpY2stbmV4dCB7XG4gICAgICAgICAgcmlnaHQ6IDEuNXJlbTsgfSB9XG4gICAgLmVudHJ5LW1lZGlhIC5zbGljay1hcnJvdy5zbGljay1wcmV2IHtcbiAgICAgIGxlZnQ6IDAuNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmVudHJ5LW1lZGlhIC5zbGljay1hcnJvdy5zbGljay1wcmV2IHtcbiAgICAgICAgICBsZWZ0OiAxLjVyZW07IH0gfVxuICAgIC5lbnRyeS1tZWRpYSAuc2xpY2stYXJyb3c6aG92ZXIuc2xpY2stcHJldjpiZWZvcmUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgY29sb3I6ICMyYzhhODI7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZSAwczsgfVxuICAgIC5lbnRyeS1tZWRpYSAuc2xpY2stYXJyb3c6aG92ZXIuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgICBjb2xvcjogIzJjOGE4MjtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlIDBzOyB9XG5cbi5lbnRyeS10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLmVudHJ5LXRpdGxlIGgxIHtcbiAgICBmb250LXNpemU6IDIuMzc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuZW50cnktdGl0bGUgaDIge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIG1hcmdpbjogMC44cmVtIDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmVudHJ5LXRpdGxlIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgIG1hcmdpbjogMC44cmVtIDAgMXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmVudHJ5LXRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgICAgIC5lbnRyeS10aXRsZSBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7IH0gfVxuICAuZW50cnktdGl0bGUgKyAuZW50cnktZnVsbC1tZXRhIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtOyB9XG5cbi5lbnRyeS1jYXRlZ29yeSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuZW50cnktY2F0ZWdvcnkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZW50cnktY2F0ZWdvcnkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDsgfSB9XG4gIC5lbnRyeS1jYXRlZ29yeSBhIHtcbiAgICBjb2xvcjogIzRkNGQ0ZDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmVudHJ5LWNhdGVnb3J5IGEge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH0gfVxuICAgIC5lbnRyeS1jYXRlZ29yeSBhOmhvdmVyLCAuZW50cnktY2F0ZWdvcnkgYS5hY3RpdmUge1xuICAgICAgY29sb3I6ICMyYzhhODI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmVudHJ5LWNhdGVnb3J5IGE6bm90KC5zdWItY2F0ZWdvcnkpIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI7IH0gfVxuICAgIC5lbnRyeS1jYXRlZ29yeSBhLnN1Yi1jYXRlZ29yeSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGNvbG9yOiAjMjUzYzNhO1xuICAgICAgZm9udC1mYW1pbHk6IFwiU1RJWCBUd28gVGV4dFwiO1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgLmVudHJ5LWNhdGVnb3J5IGEuc3ViLWNhdGVnb3J5IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDJyZW07IH0gfVxuICAgICAgLmVudHJ5LWNhdGVnb3J5IGEuc3ViLWNhdGVnb3J5OmZpcnN0LWNoaWxkOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcXGU5MDJcIjtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICAgICAgZm9udC1zaXplOiA5cHg7XG4gICAgICAgIGNvbG9yOiAjMmM4YTgyO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG4gICAgLmVudHJ5LWNhdGVnb3J5IGE6Zmlyc3QtY2hpbGQge1xuICAgICAgZm9udC1zaXplOiAxOHB4OyB9XG5cbi5wYWdlLWluZGljYXRvciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAucGFnZS1pbmRpY2F0b3Ige1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH0gfVxuXG4ucGFnZS1jYXRlZ29yeSB7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5wYWdlLWNhdGVnb3J5IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMnJlbTsgfSB9XG4gIC5wYWdlLWNhdGVnb3J5IGEsXG4gIC5wYWdlLWNhdGVnb3J5IGgyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6ICMyYzhhODI7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uZW50cnktaGlnaGxpZ2h0IHtcbiAgY29sb3I6ICM1NTU1NTU7IH1cbiAgLmVudHJ5LWhpZ2hsaWdodCB1bCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgbWFyZ2luLXRvcDogMXJlbTsgfVxuICAgIC5lbnRyeS1oaWdobGlnaHQgdWwucmVkLWJ1bGxldHMge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAuZW50cnktaGlnaGxpZ2h0IHVsIGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07IH1cbiAgICAgIC5tYWluLWl0ZW0gLmVudHJ5LWhpZ2hsaWdodCB1bCBsaSB0aW1lIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICBjb2xvcjogIzNiM2IzYjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgICAgICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZW50cnktaGlnaGxpZ2h0IHVsIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9IH1cbiAgLmVudHJ5LWhpZ2hsaWdodC5icmVha2luZyBsaSBhIHtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuZW50cnktaGlnaGxpZ2h0LmJyZWFraW5nIHRpbWUge1xuICAgIGNvbG9yOiAjY2U0MjQyO1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmVudHJ5LWhpZ2hsaWdodC5icmVha2luZyB0aW1lOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcZTkxNFwiO1xuICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICBmb250LXNpemU6IDRweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAzcHg7XG4gICAgICBtYXJnaW4tbGVmdDogLTNweDtcbiAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjsgfVxuICAgICAgW2Rpcj1cImx0clwiXSAuZW50cnktaGlnaGxpZ2h0LmJyZWFraW5nIHRpbWU6YmVmb3JlIHtcbiAgICAgICAgdG9wOiA1cHg7IH1cbiAgLmJyZWFraW5nLWhlcm8gLmVudHJ5LWhpZ2hsaWdodCB1bCBsaTo6bWFya2VyIHtcbiAgICBmb250LXNpemU6IDIxcHg7IH1cblxuLmdyaWQtaGlnaGxpZ2h0cyB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDFkNWQ1OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtaGlnaGxpZ2h0cyB1bCB7XG4gICAgICB3aWR0aDogNTAlOyB9IH1cbiAgLmdyaWQtaGlnaGxpZ2h0cyB1bDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2QxZDVkNTsgfVxuXG4uZW50cnktY29udGVudCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjtcbiAgY29sb3I6ICMzNDM0MzQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuZW50cnktY29udGVudCB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gIC5lbnRyeS1jb250ZW50ID4gKiB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgLmVudHJ5LWNvbnRlbnQgPiAqOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuZW50cnktY29udGVudCAudHdpdHRlci10d2VldCB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAuZW50cnktY29udGVudCAucGFyYWdyYXBoLS10eXBlLS1kZXNjcmlwdGlvbiBkaXZbZGF0YS1vZW1iZWQtdXJsKj1cInR3aXR0ZXIuY29tXCJdIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgLmVudHJ5LWNvbnRlbnQgcCB7XG4gICAgZm9udC1mYW1pbHk6IFwic2tvbGFyLXNhbnMtYXJhYmljXCI7XG4gICAgY29sb3I6ICMxNzJGMkY7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyOXB4O1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH1cbiAgICAuZW50cnktY29udGVudCBwIGltZyB7XG4gICAgICB3aWR0aDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgZGlzcGxheTogaW5oZXJpdDsgfVxuICAgIC5lbnRyeS1jb250ZW50IHAgPiBpZnJhbWUge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmVudHJ5LWNvbnRlbnQgZGl2W2NvbnRlbnRlZGl0YWJsZT1cImZhbHNlXCJdIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAuZW50cnktY29udGVudCBmaWd1cmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7XG4gICAgd2lkdGg6IGZpdC1jb250ZW50OyB9XG4gIC5lbnRyeS1jb250ZW50IGJyIHtcbiAgICBtYXJnaW46IDAgMCAxcmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgLmVudHJ5LWNvbnRlbnQgcCBiciB7XG4gICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlwiOyB9XG4gIC5lbnRyeS1jb250ZW50IGEge1xuICAgIGNvbG9yOiAjMmM4YTgyOyB9XG4gICAgLmVudHJ5LWNvbnRlbnQgYTpob3ZlciB7XG4gICAgICBjb2xvcjogIzE2NDU0MTsgfVxuICAuZW50cnktY29udGVudCBibG9ja3F1b3RlOm5vdCgudGlrdG9rLWVtYmVkKSB7XG4gICAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgICBjb2xvcjogIzI1M2MzYTtcbiAgICBiYWNrZ3JvdW5kOiAjZWNmNGYzO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgcGFkZGluZzogMnJlbSAzcmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm9yZGVyLWxlZnQ6IDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmVudHJ5LWNvbnRlbnQgYmxvY2txdW90ZTpub3QoLnRpa3Rvay1lbWJlZCkge1xuICAgICAgICBwYWRkaW5nOiAzcmVtIDVyZW07IH0gfVxuICAgIC5lbnRyeS1jb250ZW50IGJsb2NrcXVvdGU6bm90KC50aWt0b2stZW1iZWQpOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDByZW07XG4gICAgICByaWdodDogMTVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvaWNvbi9sb3dlci1xdW90ZS5wbmdcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgICB3aWR0aDogMjVweDtcbiAgICAgIGhlaWdodDogMjVweDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5lbnRyeS1jb250ZW50IGJsb2NrcXVvdGU6bm90KC50aWt0b2stZW1iZWQpOmJlZm9yZSB7XG4gICAgICAgICAgYm90dG9tOiAxcmVtO1xuICAgICAgICAgIHJpZ2h0OiA0MHB4O1xuICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgIGhlaWdodDogMzVweDsgfSB9XG4gICAgLmVudHJ5LWNvbnRlbnQgYmxvY2txdW90ZTpub3QoLnRpa3Rvay1lbWJlZCk6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwcmVtO1xuICAgICAgbGVmdDogMjVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvaWNvbi91cHBlci1xdW90ZS5wbmdcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgICB3aWR0aDogMjVweDtcbiAgICAgIGhlaWdodDogMjVweDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5lbnRyeS1jb250ZW50IGJsb2NrcXVvdGU6bm90KC50aWt0b2stZW1iZWQpOmFmdGVyIHtcbiAgICAgICAgICB0b3A6IDFyZW07XG4gICAgICAgICAgbGVmdDogNDVweDtcbiAgICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgICBoZWlnaHQ6IDM1cHg7IH0gfVxuICAgIC5lbnRyeS1jb250ZW50IGJsb2NrcXVvdGU6bm90KC50aWt0b2stZW1iZWQpIHAge1xuICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICBjb2xvcjogIzI1M2MzYTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuZW50cnktY29udGVudCBibG9ja3F1b3RlOm5vdCgudGlrdG9rLWVtYmVkKSBwIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuNjg3NXJlbTsgfSB9XG4gICAgICAuZW50cnktY29udGVudCBibG9ja3F1b3RlOm5vdCgudGlrdG9rLWVtYmVkKSBwOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBjb2xvcjogIzJjOGE4MjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIk9wZW4tU2Fuc1wiOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgLmVudHJ5LWNvbnRlbnQgYmxvY2txdW90ZTpub3QoLnRpa3Rvay1lbWJlZCkgcDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9IH1cbiAgLmVudHJ5LWNvbnRlbnQgLnRpa3Rvay1lbWJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLmVudHJ5LWNvbnRlbnQgaWZyYW1lIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50OyB9XG4gIC5lbnRyeS1jb250ZW50IC50d2l0dGVyLXR3ZWV0LFxuICAuZW50cnktY29udGVudCAuaW5zdGFncmFtLW1lZGlhIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50OyB9XG4gIC5tdWx0aW1lZGlhLWVudHJpZXMgLmVudHJ5LWNvbnRlbnQge1xuICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmVudHJ5LWNvbnRlbnQuc3R5bGUtdjEge1xuICAgICAgcGFkZGluZy1sZWZ0OiAycmVtOyB9IH1cbiAgLmVudHJ5LWNvbnRlbnQgcCArIGgzLFxuICAuZW50cnktY29udGVudCBwICsgaDIge1xuICAgIGZvbnQtZmFtaWx5OiBcIlNUSVggVHdvIFRleHRcIjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgbWFyZ2luLXRvcDogMzVweDsgfVxuXG4uZW50cnktYWRkcmVzcyB7XG4gIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG4gIC5lbnRyeS1hZGRyZXNzIGgzIHtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAuZW50cnktYWRkcmVzcyB1bCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAuZW50cnktYWRkcmVzcyB1bCBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5lbnRyeS1zcG90bGlnaHQge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2QxZDVkNTtcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07IH1cbiAgICAuc3R5bGUtdjEgLmVudHJ5LXNwb3RsaWdodCB7XG4gICAgICBtYXJnaW4tbGVmdDogLTJyZW07IH0gfVxuXG4uZW50cnktc3BvdGxpZ2h0IGgyIHtcbiAgZm9udC1mYW1pbHk6IFwiU1RJWCBUd28gVGV4dFwiO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDIycHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZW50cnktc3BvdGxpZ2h0IGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDsgfSB9XG5cbi5lbnRyeS1zdWJzY3JpYmUge1xuICBtYXJnaW46IDAgYXV0bzsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5lbnRyeS1zdWJzY3JpYmUge1xuICAgICAgd2lkdGg6IDQwMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLmVudHJ5LXN1YnNjcmliZSB7XG4gICAgICB3aWR0aDogYXV0bzsgfSB9XG5cbi5lbnRyeS1yZWxhdGVkIC5zZWN0aW9uLXRpdGxlIGg0IHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuXG4uZW50cnktdGFncyB7XG4gIG1hcmdpbjogMCAwIDIuNXJlbTtcbiAgcGFkZGluZzogMXJlbSAwIDAuNXJlbTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMTYxLCAxNjEsIDE0OCwgMC40KTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTYxLCAxNjEsIDE0OCwgMC40KTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgLmVudHJ5LXRhZ3Mgc3BhbiB7XG4gICAgY29sb3I6ICMyYzhhODI7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGxpbmUtaGVpZ2h0OiAyOXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuICAuZW50cnktdGFncyAuYnV0dG9uIHtcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICBtYXJnaW46IDAgMCAwLjVyZW0gMC41cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdmVydGljYWwtYWxpZ246IGluaXRpYWw7XG4gICAgZm9udC1zaXplOiAxMnB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5lbnRyeS10YWdzIC5idXR0b24ge1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW07IH0gfVxuICAgIC5lbnRyeS10YWdzIC5idXR0b24uZ3JheS5ob2xsb3c6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VjZjRmMztcbiAgICAgIGJvcmRlci1jb2xvcjogI2VjZjRmMzsgfVxuICAuZW50cnktYXJ0aWNsZS1pbm5lciAuZW50cnktdGFncyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uZW50cnktc2hhcmVzLXdyYXBwZXIge1xuICBtYXJnaW46IDAgMCAxcmVtOyB9XG4gIC5lbnRyeS1zaGFyZXMtd3JhcHBlciBhIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTsgfVxuICAgIC5lbnRyeS1zaGFyZXMtd3JhcHBlciBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLmVudHJ5LXNoYXJlcy13cmFwcGVyIGEgaSB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgLmVudHJ5LW1ldGEtZm9vdGVyIC5lbnRyeS1zaGFyZXMtd3JhcHBlciBhIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG4gICAgY29sb3I6ICM4OThmOTM7IH1cbiAgICAuZW50cnktbWV0YS1mb290ZXIgLmVudHJ5LXNoYXJlcy13cmFwcGVyIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cblxuLmVudHJ5LW1ldGEgLmVudHJ5LW1ldGEtZm9vdGVyIHtcbiAgcGFkZGluZzogMC43NXJlbSAwOyB9XG5cbi5lbnRyeS1zaGFyZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAuZW50cnktc2hhcmUgYSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH1cbiAgICAuZW50cnktc2hhcmUgYTpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAuZW50cnktc2hhcmUgYSBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmVudHJ5LXNoYXJlIGEge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmVudHJ5LWFzaWRlLWluZm8ge1xuICAgIHdpZHRoOiAzMTBweDsgfVxuICAgIC5lbnRyeS1hc2lkZS1pbmZvLmNhcnRvb24tYXV0aG9yIHtcbiAgICAgIG1hcmdpbi10b3A6IDcwcHg7IH1cbiAgICAgIFtkaXI9XCJsdHJcIl0gLmVudHJ5LWFzaWRlLWluZm8uY2FydG9vbi1hdXRob3Ige1xuICAgICAgICBtYXJnaW4tdG9wOiA2NXB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5lbnRyeS1hc2lkZS1pbmZvIHtcbiAgICB3aWR0aDogMjAwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZW50cnktZnVsbC1tZXRhIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9IH1cblxuLmVudHJ5LWF1dGhvciB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgLmVudHJ5LWF1dGhvciBpbWcge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAuZW50cnktYXV0aG9yIGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07IH1cbiAgICAuZW50cnktYXV0aG9yIGE6bm90KDpsYXN0LWNoaWxkKTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIixcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7IH1cbiAgLmVudHJ5LWF1dGhvciB1bCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTsgfVxuICAgIC5lbnRyeS1hdXRob3IgdWwgbGkge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG5cbi5lbnRyeS1hdXRob3ItaW1nIHtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAwMDAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5lbnRyeS1sYWJlbCB7XG4gICAgbWF4LXdpZHRoOiA2MDBweDsgfSB9XG5cbi5lbnRyeS1sYWJlbCB1bCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmVudHJ5LWxhYmVsIHVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gIC5lbnRyeS1sYWJlbCB1bCBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VhZjNmMjtcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7IH1cbiAgICAuZW50cnktbGFiZWwgdWwgbGkgYSB7XG4gICAgICBjb2xvcjogIzJjOGE4MjsgfVxuICAgICAgLmVudHJ5LWxhYmVsIHVsIGxpIGEgc3Bhbjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5lbnRyeS1hc2lkZS1tZXRhIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5lbnRyeS1mdWxsLW1ldGEgLmVudHJ5LWFzaWRlLW1ldGEge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDFkNWQ1O1xuICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG4uZW50cnktZGF0ZS1pdGVtcyAuZW50cnktZGF0ZTpub3QoOm9ubHktY2hpbGQpOmZpcnN0LWNoaWxkIHtcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmVudHJ5LWRhdGUtaXRlbXMge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9IH1cblxuLmVudHJ5LWRhdGUge1xuICBjb2xvcjogIzcxNzE3MTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBjb2xvcjogIzkyOTg5ODtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5lbnRyeS1kYXRlIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMXJlbTsgfSB9XG4gIC5lbnRyeS1kYXRlIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5lbnRyeS1hc2lkZS1tZXRhIC5lbnRyeS1kYXRlIHtcbiAgICBmb250LXNpemU6IDAuNjg3NXJlbTtcbiAgICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjtcbiAgICBwYWRkaW5nLXRvcDogMC4ycmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5lbnRyeS1hc2lkZS1tZXRhIC5lbnRyeS1kYXRlIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07IH0gfVxuICAuZW50cnktbWV0YSAuZW50cnktZGF0ZSB7XG4gICAgcGFkZGluZzogMCAwIDAuMjVyZW07XG4gICAgY29sb3I6ICM5OTk5OTk7IH1cbiAgICAuZW50cnktbWV0YSAuZW50cnktZGF0ZSBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICAuZW50cnktZnVsbC1tZXRhIC5lbnRyeS1kYXRlIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLmVudHJ5LWFzaWRlLXNoYXJlcyAuZW50cnktc2hhcmUtcm93Om5vdCguZW50cnktYm9va21hcmspIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTsgfVxuXG4uZW50cnktYXNpZGUtc2hhcmVzIC5lbnRyeS1ib29rbWFyayB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC5lbnRyeS1hc2lkZS1zaGFyZXMgLmVudHJ5LWJvb2ttYXJrLmFjdGl2ZSBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDllZGViOyB9XG4gICAgLmVudHJ5LWFzaWRlLXNoYXJlcyAuZW50cnktYm9va21hcmsuYWN0aXZlIGEgaTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCLupL1cIjtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5tdWx0aW1lZGlhLWVudHJpZXMgLmVudHJ5LWFzaWRlLXNoYXJlcyB7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4uZW50cnktc2hhcmVzIC5lbnRyeS1ib29rbWFyayB7XG4gIG1hcmdpbi1sZWZ0OiAycmVtOyB9XG5cbi5oZXJvLXNsaWRlciAuc2xpY2stZG90cyBsaSB7XG4gIG1hcmdpbjogMCA4cHg7IH1cblxuLnNoYXJlLWljb25zLXdyYXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAuc2hhcmUtaWNvbnMtd3JhcCAuc29jaWFsLWxibCB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmVudHJ5LXNoYXJlcy13cmFwcGVyIC5zaGFyZS1pY29ucy13cmFwIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjZDFkNWQ1O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAuZW50cnktYXNpZGUtaW5mbyAuc2hhcmUtaWNvbnMtd3JhcCB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLm11bHRpbWVkaWEtZW50cmllcyAuc2hhcmUtaWNvbnMtd3JhcCB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMyYzhhODI7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgIHBhZGRpbmctdG9wOiAxLjVyZW07IH1cbiAgLnZpZGVvLWFzaWRlLW1ldGEgLnNoYXJlLWljb25zLXdyYXAge1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAgIC52aWRlby1hc2lkZS1tZXRhIC5zaGFyZS1pY29ucy13cmFwIC5lbnRyeS1zaGFyZS1yb3cgYSB7XG4gICAgICBjb2xvcjogIzJjOGE4MjsgfVxuICAuc2hhcmUtaWNvbnMtd3JhcC5hZGR0aGlzX3Rvb2xib3ggLmF0Y2xlYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLm11bHRpbWVkaWEtZW50cmllcyB7XG4gIHBhZGRpbmc6IDJyZW0gMXJlbSAxcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm11bHRpbWVkaWEtZW50cmllcyB7XG4gICAgICBwYWRkaW5nOiAzcmVtOyB9IH1cblxuLmVudHJ5LW1ldGEgLmJ0bi1zaGFyZS13cmFwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLmVudHJ5LW1ldGEgLmJ0bi1zaGFyZS13cmFwIHtcbiAgICAgIGRpc3BsYXk6IGluaGVyaXQ7IH1cbiAgICAgIC5lbnRyeS1tZXRhIC5idG4tc2hhcmUtd3JhcCAuYnRuLXNoYXJlLXNvY2lhbCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuZW50cnktYXNpZGUtbWV0YSAuYnRuLXNoYXJlLXdyYXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfSB9XG5cbi5lbnRyeS1zaGFyZS1yb3cge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmVudHJ5LXNoYXJlLXJvdzpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5lbnRyeS1zaGFyZS1yb3cge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgLmVudHJ5LXNoYXJlLXJvdyBhIHtcbiAgICBjb2xvcjogIzJjOGE4MjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmN2Y2O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBoZWlnaHQ6IDM4cHg7XG4gICAgd2lkdGg6IDM4cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLmVudHJ5LXNoYXJlLXJvdyBhOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkOWVkZWI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmVudHJ5LXNoYXJlLXJvdyBhIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgICAuZGFyay10aGVtZSAuZW50cnktc2hhcmUtcm93IGEge1xuICAgICAgY29sb3I6ICMyYzhhODI7IH1cbiAgICAucG9kY2FzdC1zY3JlZW4gLmVudHJ5LXNoYXJlLXJvdyBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgICAgIC5wb2RjYXN0LXNjcmVlbiAuZW50cnktc2hhcmUtcm93IGE6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDllZGViOyB9XG4gIC5lbnRyeS1zaGFyZS1yb3cgLmljb24tc2hhcmUge1xuICAgIGNvbG9yOiAjMmM4YTgyOyB9XG5cbi5lbnRyeS1jb250ZW50IGZpZ2NhcHRpb24ge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbi5pbWctY2FwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICBjb2xvcjogIzcxNzE3MTtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBtaW4taGVpZ2h0OiAwLjFyZW07IH1cbiAgLmVudHJ5LW1lZGlhIC5pbWctY2FwdGlvbiwgLmltZy1jYXB0aW9uLnN0eWxlZCB7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAuaW1nLWNhcHRpb24uZGFyayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRlZDtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbSAwLjJyZW07IH1cbiAgLmxpdmUtYmxvZyAuaW1nLWNhcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaW5qZWN0ZWQtYmxvY2sge1xuICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuXG4uaW5qZWN0ZWQtYmxvY2sgLmJsb2NrLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBwYWRkaW5nOiAxLjVyZW07XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5pbmplY3RlZC1ibG9jayAuYmxvY2stY29udGVudCBoNSBhIHtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5pbmplY3RlZC1ibG9jayAuYmxvY2stY29udGVudCBoNSBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMmM4YTgyOyB9XG5cbi5pbmplY3RlZC1ibG9jayAuYmxvY2stdGl0bGUge1xuICB3aWR0aDogMTM1cHg7XG4gIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxLjVyZW07IH1cbiAgLmluamVjdGVkLWJsb2NrIC5ibG9jay10aXRsZSBoMiB7XG4gICAgZm9udC1zaXplOiAyN3B4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMmM4YTgyOyB9XG5cbi5pbmplY3RlZC1ibG9jayAuaXRlbS1hcmVhLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTsgfVxuXG4uaW5qZWN0ZWQtYmxvY2sgLml0ZW0tYXJlYSBoMi5pdGVtLWFyZWEtdGl0bGUge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5pbmplY3RlZC1ibG9jayAuaXRlbS1hcmVhIGgyLml0ZW0tYXJlYS10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDEuNjg3NXJlbTsgfSB9XG5cbi5pbmplY3RlZC1ibG9jayAuaXRlbS1hcmVhIHAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmluamVjdGVkLWJsb2NrIC5pdGVtLWFyZWEgcCB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTsgfSB9XG5cbi5pbmplY3RlZC1ibG9jayBoNS5pdGVtLWFyZWEtdGl0bGUge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4uaW5qZWN0ZWQtYmxvY2sgcCB7XG4gIGNvbG9yOiAjNTU1NTU1O1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG5cbi5pbmplY3RlZC1ibG9jayB1bCB7XG4gIGNvbG9yOiAjNTU1NTU1O1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuaW5qZWN0ZWQtYmxvY2sgdWwgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuLmluamVjdGVkLW9waW5pb24gLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5pbmplY3RlZC1vcGluaW9uIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2Y3ZmFmYTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmluamVjdGVkLW9waW5pb24gLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIC5tZWRpYS1vYmplY3QtaW1nIHtcbiAgICAgIHdpZHRoOiA3NXB4O1xuICAgICAgaGVpZ2h0OiA3NXB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICAgIC5pbmplY3RlZC1vcGluaW9uIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCAubWVkaWEtb2JqZWN0LWltZyBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH1cblxuLmluamVjdGVkLW9waW5pb24gLmxpbmstaG9sZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMnB4OyB9XG5cbi5pbmplY3RlZC1vcGluaW9uIC5hdXRob3ItbmFtZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgZm9udC1mYW1pbHk6IFwiT3Blbi1TYW5zXCI7IH1cblxuLmluamVjdGVkLW9waW5pb24gaDUge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07IH1cblxuLndpdGgtc2VwYXJhdG9yIC5tZWRpYS1vYmplY3Q6bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDFkNWQ1O1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuXG4ud2l0aC1zZXBhcmF0b3IgcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07IH1cbiAgLndpdGgtc2VwYXJhdG9yIHA6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMzAlO1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1NTU1NTU7IH1cbiAgLndpdGgtc2VwYXJhdG9yIHA6bGFzdC1jaGlsZDphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4uaXRlbS1hcmVhIHAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbi5pdGVtLWFyZWEtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAuaXRlbS1hcmVhLWltZyBidXR0b24ge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIC5pdGVtLWFyZWEtaW1nIGJ1dHRvbjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAwLjg7IH1cblxuLml0ZW0tYXJlYS10aXRsZSBzcGFuIHtcbiAgY29sb3I6ICMyYzhhODI7IH1cblxuLml0ZW0tYXJlYS10aXRsZSBhIHtcbiAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLml0ZW0tYXJlYS10aXRsZSBhOmhvdmVyIHtcbiAgICBjb2xvcjogIzJjOGE4MjsgfVxuXG4uaXRlbS1hcmVhLW1ldGEge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cbiAgLml0ZW0tYXJlYS1tZXRhIHRpbWUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgY29sb3I6ICM1ZjcxNzY7IH1cbiAgICAuaXRlbS1hcmVhLW1ldGEgdGltZSBzcGFuIHtcbiAgICAgIGNvbG9yOiAjMmM4YTgyOyB9XG4gICAgLml0ZW0tYXJlYS1tZXRhIHRpbWUgaSB7XG4gICAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTsgfVxuXG4uYXV0aG9yLW1ldGEtYXJlYSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAwMDAwO1xuICBwYWRkaW5nOiAwIDAgMC41cmVtOyB9XG4gIC5hdXRob3ItbWV0YS1hcmVhIGltZyB7XG4gICAgbWF4LXdpZHRoOiA1MHB4OyB9XG5cbnVsLmhhcy1zZXBhcmF0b3IgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDFkNWQ1OyB9XG5cbi5vcGluaW9uLWF1dGhvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAub3Bpbmlvbi1hdXRob3Ige1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5vcGluaW9uLWF1dGhvciB7XG4gICAgICBwYWRkaW5nOiAxLjVyZW0gMXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfSB9XG4gIC5vcGluaW9uLWF1dGhvciAuYXV0aG9yLW5hbWUge1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAub3Bpbmlvbi1hdXRob3IgLmF1dGhvci1uYW1lIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIC5vcGluaW9uLWF1dGhvciAuYXV0aG9yLWRlc2Mge1xuICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgIGZvbnQtZmFtaWx5OiBcIk9wZW4tU2Fuc1wiOyB9XG4gIC5vcGluaW9uLWF1dGhvciAuYXV0aG9yLW1ldGEge1xuICAgIHBhZGRpbmc6IDFyZW0gMXJlbSAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5vcGluaW9uLWF1dGhvciAuYXV0aG9yLW1ldGEge1xuICAgICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAub3Bpbmlvbi1hdXRob3Iuc2luZ2xlIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5vcGluaW9uLWF1dGhvci5zaW5nbGUgLmF1dGhvci1ncmlkIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmctbGVmdDogOTJweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWluLWhlaWdodDogOTVweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLm9waW5pb24tYXV0aG9yLnNpbmdsZSAud3JpdGVyLWNoZWNrIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLm9waW5pb24tYXV0aG9yLnNpbmdsZSAuYXV0aG9yLW1ldGEge1xuICAgICAgcGFkZGluZy10b3A6IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5vcGluaW9uLWF1dGhvci5zaW5nbGUgLnNvY2lhbHMtYmxvY2sge1xuICAgICAgcGFkZGluZy1sZWZ0OiA3cHg7IH1cbiAgICAgIC5vcGluaW9uLWF1dGhvci5zaW5nbGUgLnNvY2lhbHMtYmxvY2sgYSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuLmF1dGhvci1pbWcge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHdpZHRoOiA5MnB4O1xuICBoZWlnaHQ6IDkycHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC13ZWJraXQtbWFzay1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQod2hpdGUsIGJsYWNrKTsgfVxuICAuYXV0aG9yLWltZyBpbWcge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UsIHRyYW5zZm9ybSAwLjJzO1xuICAgIC8qIEFuaW1hdGlvbiAqL1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuICAuYXV0aG9yLWltZyBhOmhvdmVyIGltZyB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpOyB9XG4gICAgLmF1dGhvci1pdGVtIC5hdXRob3ItaW1nIGE6aG92ZXIgaW1nIHtcbiAgICAgIHRyYW5zZm9ybTogaW5oZXJpdDsgfVxuICAuYXV0aG9yLWltZyBhOmhvdmVyOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAub3Bpbmlvbi1hdXRob3IgLmF1dGhvci1pbWcge1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gIC5mbGV4LWVxdWFsIC5hdXRob3ItaW1nIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7IH1cbiAgLm9waW5pb24tYXV0aG9yLWxpc3QgLmF1dGhvci1pbWcge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5yZWxhdGVkLW9waW5pb25zIC5hdXRob3ItaW1nIHtcbiAgICB3aWR0aDogNzVweDtcbiAgICBoZWlnaHQ6IDc1cHg7IH1cbiAgLmdhbWUtYXV0aG9yLWluZm8gLmF1dGhvci1pbWcge1xuICAgIHdpZHRoOiA2M3B4O1xuICAgIGhlaWdodDogNjNweDtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAgIC5nYW1lLWF1dGhvci1pbmZvIC5hdXRob3ItaW1nIGltZyB7XG4gICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgwKTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTsgfVxuXG4ucmVsYXRlZC1vcGluaW9ucyB7XG4gIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDEuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5yZWxhdGVkLW9waW5pb25zID4gZGl2Om50aC1jaGlsZCgxbiArIDEpOm50aC1sYXN0LWNoaWxkKC1uICsgMSk6bm90KC5oaWRlLWZvci1sYXJnZSkgLmFydGljbGUtaXRlbSxcbiAgICAucmVsYXRlZC1vcGluaW9ucyA+IGRpdjpudGgtY2hpbGQoMW4gKyAxKTpudGgtbGFzdC1jaGlsZCgtbiArIDEpOm5vdCguaGlkZS1mb3ItbGFyZ2UpIH4gLmNlbGwgLmFydGljbGUtaXRlbSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5yZWxhdGVkLW9waW5pb25zID4gZGl2Om50aC1jaGlsZCgybiArIDEpOm50aC1sYXN0LWNoaWxkKC1uICsgMik6bm90KC5oaWRlLWZvci1sYXJnZSkgLmFydGljbGUtaXRlbSxcbiAgICAucmVsYXRlZC1vcGluaW9ucyA+IGRpdjpudGgtY2hpbGQoMm4gKyAxKTpudGgtbGFzdC1jaGlsZCgtbiArIDIpOm5vdCguaGlkZS1mb3ItbGFyZ2UpIH4gLmNlbGwgLmFydGljbGUtaXRlbSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLnJlbGF0ZWQtb3BpbmlvbnMgPiBkaXYge1xuICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07IH1cbiAgICAucmVsYXRlZC1vcGluaW9ucyAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDFkNWQ1O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnJlbGF0ZWQtb3BpbmlvbnMge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkMWQ1ZDU7IH0gfVxuXG4uZm9udC1jb250cm9sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNmNGYzO1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5mb250LWNvbnRyb2wge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiA5MHB4O1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAuZm9udC1jb250cm9sIC5mbnRDaGFuZ2UtYnRuIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mb250LWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9IH1cbiAgLmZvbnQtY29udHJvbCBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMCAzcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtZmFtaWx5OiB0YWhvbWE7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuZm9udC1jb250cm9sIC5mb250LXNpemUge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAuZm9udC1jb250cm9sIC5pY28tZHJhZyB7XG4gICAgZm9udC1zaXplOiAxOXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAwOyB9XG4gIC5lbnRyeS1mdWxsLW1ldGEgLmZvbnQtY29udHJvbCB7XG4gICAgd2lkdGg6IDIyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAuZW50cnktYXNpZGUtaW5mbyAuZm9udC1jb250cm9sIHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtOyB9XG4gICAgLmVudHJ5LWFzaWRlLWluZm8gLmZvbnQtY29udHJvbDpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyYzhhODI7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAtMS41cmVtO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbi5zbGlkZXItY29udHJvbCBpbnB1dFt0eXBlPVwicmFuZ2VcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzAwMDAwMCAzNSUsICNkY2ViZTkgMCUpO1xuICB3aWR0aDogMTc0cHg7XG4gIGhlaWdodDogNXB4O1xuICBib3R0b206IHVuc2V0O1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcCAwO1xuICBib3JkZXItcmFkaXVzOiAyMHB4OyB9XG4gIFtkaXI9XCJsdHJcIl0gLnNsaWRlci1jb250cm9sIGlucHV0W3R5cGU9XCJyYW5nZVwiXSB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjMDAwMDAwIDM1JSwgI2RjZWJlOSAwJSk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAuZW50cnktbWV0YSAuc2xpZGVyLWNvbnRyb2wgaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7XG4gICAgICBtYXJnaW46IDAgNTAlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICBbZGlyPVwibHRyXCJdIC5lbnRyeS1tZXRhIC5zbGlkZXItY29udHJvbCBpbnB1dFt0eXBlPVwicmFuZ2VcIl0ge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7IH0gfVxuICAuZW50cnktZnVsbC1tZXRhIC5zbGlkZXItY29udHJvbCBpbnB1dFt0eXBlPVwicmFuZ2VcIl0ge1xuICAgIHdpZHRoOiAxMTZweDsgfVxuXG4uc2xpZGVyLWNvbnRyb2wgaW5wdXRbdHlwZT1cInJhbmdlXCJdOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gIHdpZHRoOiAxNnB4O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGhlaWdodDogMTZweDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgY3Vyc29yOiBldy1yZXNpemU7XG4gIGJhY2tncm91bmQ6ICMwMDAwMDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmVudHJ5LW1ldGEgLnNsaWRlci1jb250cm9sIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA0NXB4O1xuICAgIGJhY2tncm91bmQ6ICNlY2Y0ZjM7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogMjsgfVxuICAuc2xpZGVyLWNvbnRyb2wuY2xvc2UgaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcbiAgICBhbmltYXRpb246IDFzIGVhc2Utb3V0IG5vcm1hbCBmb3J3YXJkcyAyIGZhZGVvdXQ7IH0gfVxuXG4vKiAtLS0tLS0tIFNlY3Rpb24gTWVudSAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG4uc2VjdGlvbi1tZW51LXdyYXBwZXIge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBtYXJnaW4tdG9wOiAycmVtOyB9XG5cbi5zZWN0aW9uLW1lbnUgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4uc2VjdGlvbi1tZW51IGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwIDFyZW07IH1cbiAgLnNlY3Rpb24tbWVudSBsaTpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5zZWN0aW9uLW1lbnUgbGkgYSB7XG4gICAgY29sb3I6ICNhZGFkYWQ7IH1cblxuLnNlY3Rpb24tbWVudS1kcm9wZG93biB1bCxcbi5zZWN0aW9uLW1lbnUtd3JhcHBlciB1bCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDFkNWQ1OyB9XG5cbi5zZWN0aW9uLW1lbnUtZHJvcGRvd24uc3R5bGUtdjEgbGksXG4uc2VjdGlvbi1tZW51LXdyYXBwZXIuc3R5bGUtdjEgbGkge1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtOyB9XG4gIC5zZWN0aW9uLW1lbnUtZHJvcGRvd24uc3R5bGUtdjEgbGkuYWN0aXZlLCAuc2VjdGlvbi1tZW51LWRyb3Bkb3duLnN0eWxlLXYxIGxpOmhvdmVyLFxuICAuc2VjdGlvbi1tZW51LXdyYXBwZXIuc3R5bGUtdjEgbGkuYWN0aXZlLFxuICAuc2VjdGlvbi1tZW51LXdyYXBwZXIuc3R5bGUtdjEgbGk6aG92ZXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMmM4YTgyOyB9XG4gICAgLnNlY3Rpb24tbWVudS1kcm9wZG93bi5zdHlsZS12MSBsaS5hY3RpdmUgYSwgLnNlY3Rpb24tbWVudS1kcm9wZG93bi5zdHlsZS12MSBsaTpob3ZlciBhLFxuICAgIC5zZWN0aW9uLW1lbnUtd3JhcHBlci5zdHlsZS12MSBsaS5hY3RpdmUgYSxcbiAgICAuc2VjdGlvbi1tZW51LXdyYXBwZXIuc3R5bGUtdjEgbGk6aG92ZXIgYSB7XG4gICAgICBjb2xvcjogIzJjOGE4MjsgfVxuXG4uZHJvcGRvd24td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDMwMHB4O1xuICBtYXJnaW46IDJyZW0gYXV0bzsgfVxuICAuZHJvcGRvd24td3JhcHBlciAuYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIG1pbi13aWR0aDogOTVweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGNvbG9yOiAjODk4ZjkzO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBsaW5lLWhlaWdodDogMjBweDsgfVxuICAgIC5kcm9wZG93bi13cmFwcGVyIC5idXR0b246YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5kcm9wZG93bi13cmFwcGVyIC5idXR0b24gaSB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTsgfVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAzOHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMyYzhhODI7XG4gIGNvbG9yOiAjMmM4YTgyO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyOyB9IH1cbiAgLmRyb3Bkb3duLXRvZ2dsZSBpIHtcbiAgICBmb250LXNpemU6IDFyZW07IH1cbiAgLmRyb3Bkb3duLXRvZ2dsZTpob3ZlciwgLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gICAgY29sb3I6ICMyYzhhODI7IH1cblxuLmRyb3Bkb3duLW1lbnUge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHBhZGRpbmc6IDAuMjVyZW0gMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHotaW5kZXg6IDI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGNvbG9yOiAjMmM4YTgyO1xuICB0b3A6IGNhbGMoMTAwJSArIDAuMjVyZW0pOyB9XG4gIC5kcm9wZG93bi1tZW51IGxpIHtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAgIC5kcm9wZG93bi1tZW51IGxpOmhvdmVyOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgd2lkdGg6IDVweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJjOGE4MjtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuZHJvcGRvd24tbWVudSBsaSBhIHtcbiAgICAgIGNvbG9yOiAjMmM4YTgyO1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogMC42MjVyZW0gMS41cmVtOyB9XG4gICAgICAuZHJvcGRvd24tbWVudSBsaSBhIGkge1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgICAgY29sb3I6ICMyYzhhODI7IH1cbiAgICAgIC5kcm9wZG93bi1tZW51IGxpIGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuZHJvcGRvd24tbWVudS5hY3RpdmUgYSB7XG4gICAgY29sb3I6ICMyYzhhODI7IH1cbiAgLmRyb3Bkb3duLW1lbnUuZXhwYW5kIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cblxuLyogLS0tLS0tLSBTZWN0aW9uIE1lbnUgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0gTVkgUFJPRklMRSAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG4udXNlci1wcm9maWxlIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogNDBweDtcbiAgcGFkZGluZzogMCAwLjdyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgLnVzZXItcHJvZmlsZSAuaWNvbi1hcnJvdy1kb3duIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgLnVzZXItcHJvZmlsZS5ob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI1M2MzYTtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC51c2VyLXByb2ZpbGUuaG92ZXIgLmljb24tYXJyb3ctZG93bjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGU5MTdcIjsgfVxuXG5bdHlwZT1cImNoZWNrYm94XCJdICsgLnVzZXItcHJvZmlsZSxcblt0eXBlPVwiY2hlY2tib3hcIl0gKyAudXNlci1wcm9maWxlLWltZyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbjogMDsgfVxuXG4udXNlci1wcm9maWxlLWltZyB7XG4gIG1hcmdpbi1yaWdodDogNXB4OyB9XG4gIC51c2VyLXByb2ZpbGUtaW1nIGltZyB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG1heC13aWR0aDogMjJweDtcbiAgICBtYXgtaGVpZ3RoOiAyMnB4OyB9XG5cbi51c2VyLWRyb3Bkb3duOmNoZWNrZWQgfiAuYWNjb3VudC1tZW51LWxpc3Qge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAyO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KTsgfVxuXG4udXNlci1kcm9wZG93bjpjaGVja2VkIH4gLnVzZXItcHJvZmlsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNTNjM2E7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC51c2VyLWRyb3Bkb3duOmNoZWNrZWQgfiAudXNlci1wcm9maWxlIC5pY29uLWFycm93LWRvd246YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkxN1wiOyB9XG5cbi5hY2NvdW50LW1lbnUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5hY2NvdW50LW1lbnUge1xuICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgICBtaW4td2lkdGg6IDEzMXB4OyB9IH1cbiAgLmFjY291bnQtbWVudSAudXNlciB7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDsgfVxuICAuc3RpY2t5IC5hY2NvdW50LW1lbnUge1xuICAgIG1pbi13aWR0aDogYXV0bzsgfVxuICAuYWNjb3VudC1tZW51IC5hY2NvdW50LW1lbnUtbGlzdCB7XG4gICAgbWluLXdpZHRoOiAxMzFweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjUzYzNhO1xuICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogOTk7XG4gICAgdG9wOiA0MHB4O1xuICAgIHJpZ2h0OiAwcHg7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogMC4ycyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uOiAwLjJzIGVhc2UtaW4tb3V0O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5hY2NvdW50LW1lbnUgLmFjY291bnQtbWVudS1saXN0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VjZjRmMztcbiAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICByaWdodDogLTEuMXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMjBweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMjBweDtcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHRvcDogNTVweDsgfSB9XG4gICAgLnN0aWNreSAuYWNjb3VudC1tZW51IC5hY2NvdW50LW1lbnUtbGlzdCB7XG4gICAgICB0b3A6IDM1cHg7IH1cbiAgICAuYWNjb3VudC1tZW51IC5hY2NvdW50LW1lbnUtbGlzdCB1bCB7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICB0cmFuc2l0aW9uOiAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gICAgLmFjY291bnQtbWVudSAuYWNjb3VudC1tZW51LWxpc3QgbGk6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzNhNTQ1MjtcbiAgICAgIG1hcmdpbjogMCAtMC41cmVtO1xuICAgICAgcGFkZGluZzogMCAwLjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmFjY291bnQtbWVudSAuYWNjb3VudC1tZW51LWxpc3QgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmZmZmOyB9IH1cbiAgICAuYWNjb3VudC1tZW51IC5hY2NvdW50LW1lbnUtbGlzdCBhLFxuICAgIC5hY2NvdW50LW1lbnUgLmFjY291bnQtbWVudS1saXN0IGJ1dHRvbiB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIHBhZGRpbmc6IDAuN3JlbSAwLjVyZW07XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgLmFjY291bnQtbWVudSAuYWNjb3VudC1tZW51LWxpc3QgYSxcbiAgICAgICAgLmFjY291bnQtbWVudSAuYWNjb3VudC1tZW51LWxpc3QgYnV0dG9uIHtcbiAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgcGFkZGluZzogMXJlbTsgfSB9XG4gICAgICAuYWNjb3VudC1tZW51IC5hY2NvdW50LW1lbnUtbGlzdCBhOmhvdmVyLFxuICAgICAgLmFjY291bnQtbWVudSAuYWNjb3VudC1tZW51LWxpc3QgYnV0dG9uOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICMyYzhhODI7IH1cbiAgICAgIC5hY2NvdW50LW1lbnUgLmFjY291bnQtbWVudS1saXN0IGEgaSxcbiAgICAgIC5hY2NvdW50LW1lbnUgLmFjY291bnQtbWVudS1saXN0IGJ1dHRvbiBpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAgIC5hY2NvdW50LW1lbnUgLmFjY291bnQtbWVudS1saXN0IGEgaSxcbiAgICAgICAgICAuYWNjb3VudC1tZW51IC5hY2NvdW50LW1lbnUtbGlzdCBidXR0b24gaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICBjb2xvcjogIzg0OTU5NDsgfSB9XG4gICAgICAgIC5hY2NvdW50LW1lbnUgLmFjY291bnQtbWVudS1saXN0IGEgaS5pY29uLWVudmVsb3AyLFxuICAgICAgICAuYWNjb3VudC1tZW51IC5hY2NvdW50LW1lbnUtbGlzdCBidXR0b24gaS5pY29uLWVudmVsb3AyIHtcbiAgICAgICAgICBmb250LXNpemU6IDEwcHg7IH1cbiAgICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAgICAgLmFjY291bnQtbWVudSAuYWNjb3VudC1tZW51LWxpc3QgYSBpLmljb24tZW52ZWxvcDIsXG4gICAgICAgICAgICAuYWNjb3VudC1tZW51IC5hY2NvdW50LW1lbnUtbGlzdCBidXR0b24gaS5pY29uLWVudmVsb3AyIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4OyB9IH1cblxuLmZvcm0tYXJlYS13cmFwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxcmVtO1xuICB3aWR0aDogMzUwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAuZm9ybS1hcmVhLXdyYXAge1xuICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mb3JtLWFyZWEtd3JhcCB7XG4gICAgICB3aWR0aDogNTIwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mb3JtLWFyZWEtd3JhcCB7XG4gICAgICBwYWRkaW5nOiAzcmVtIDZyZW07XG4gICAgICBtYXJnaW46IDNyZW0gYXV0bzsgfSB9XG4gIC5mb3JtLWFyZWEtd3JhcCAuc2VjdGlvbi10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuICAgIC5mb3JtLWFyZWEtd3JhcCAuc2VjdGlvbi10aXRsZSBoMyB7XG4gICAgICBjb2xvcjogIzJjOGE4MjsgfVxuICAuZm9ybS1hcmVhLXdyYXAgLmN1c3RvbS10eHQtc3R5bGUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbWFyZ2luOiAycmVtIDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbG9yOiAjYWNhY2FjOyB9XG4gICAgLmZvcm0tYXJlYS13cmFwIC5jdXN0b20tdHh0LXN0eWxlOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkMWQ1ZDU7XG4gICAgICB6LWluZGV4OiAxOyB9XG4gICAgLmZvcm0tYXJlYS13cmFwIC5jdXN0b20tdHh0LXN0eWxlIHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgY29sb3I6ICMyNTNjM2E7IH1cbiAgLmZvcm0tYXJlYS13cmFwIGlucHV0W3R5cGU9XCJlbWFpbFwiXTpub3QoOnBsYWNlaG9sZGVyLXNob3duKSxcbiAgLmZvcm0tYXJlYS13cmFwIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAuZm9ybS1hcmVhLXdyYXAgaW5wdXRbdHlwZT1cImVtYWlsXCJdOnBsYWNlaG9sZGVyLXNob3duLFxuICAuZm9ybS1hcmVhLXdyYXAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOnBsYWNlaG9sZGVyLXNob3duIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAuZm9ybS1hcmVhLXdyYXAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtOyB9XG5cbi5mb3JtLWFyZWEgc2VsZWN0IHtcbiAgYm9yZGVyLWNvbG9yOiAjZGNkZmRmO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uZm9ybS1hcmVhIC5pbnB1dC1yYWRpbyB7XG4gIGJvcmRlci1jb2xvcjogI2RjZGZkZjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDEwcHgpO1xuICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDsgfVxuICAuZm9ybS1hcmVhIC5pbnB1dC1yYWRpbyBsYWJlbCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuLmZvcm0tYXJlYSAuc3VibWl0LWJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIHBhZGRpbmc6IDAuOHJlbSAycmVtO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4uZm9ybS1hcmVhIC5pbnB1dC1maWVsZCB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAuZm9ybS1hcmVhIC5pbnB1dC1maWVsZCBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gIC5mb3JtLWFyZWEgLmlucHV0LWZpZWxkIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgLmZvcm0tYXJlYSAuaW5wdXQtZmllbGQgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgIGJvcmRlci1jb2xvcjogI2RjZGZkZjtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuZm9ybS1hcmVhIC5pbnB1dC1maWVsZCBpbnB1dFt0eXBlPVwiZW1haWxcIl06bm90KC5uby1pY28pLFxuICAgIC5mb3JtLWFyZWEgLmlucHV0LWZpZWxkIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpub3QoLm5vLWljbyksXG4gICAgLmZvcm0tYXJlYSAuaW5wdXQtZmllbGQgaW5wdXRbdHlwZT1cInRleHRcIl06bm90KC5uby1pY28pIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07IH1cbiAgLmZvcm0tYXJlYSAuaW5wdXQtZmllbGQgc2VsZWN0IHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxMHB4KTsgfVxuICAuZm9ybS1hcmVhIC5pbnB1dC1maWVsZC5pbnB1dC1kZWZhdWx0IGlucHV0W3R5cGU9XCJlbWFpbFwiXTpub3QoLm5vLWljbyksXG4gIC5mb3JtLWFyZWEgLmlucHV0LWZpZWxkLmlucHV0LWRlZmF1bHQgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOm5vdCgubm8taWNvKSxcbiAgLmZvcm0tYXJlYSAuaW5wdXQtZmllbGQuaW5wdXQtZGVmYXVsdCBpbnB1dFt0eXBlPVwidGV4dFwiXTpub3QoLm5vLWljbykge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbTsgfVxuXG4uZm9ybS1hcmVhIGxhYmVsIHtcbiAgY29sb3I6ICMyYzhhODI7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC1mYW1pbHk6IFwiT3Blbi1TYW5zXCI7IH1cblxuLmZvcmdvdC1wYXNzd29yZCBhIHtcbiAgY29sb3I6ICMyYzhhODI7IH1cbiAgLmZvcmdvdC1wYXNzd29yZCBhOmhvdmVyIHtcbiAgICBjb2xvcjogIzI1M2MzYTsgfVxuXG4uZm9yZ290LXBhc3N3b3JkIGJ1dHRvbiB7XG4gIGNvbG9yOiAjMmM4YTgyO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLmZvcmdvdC1wYXNzd29yZCBidXR0b246aG92ZXIge1xuICAgIGNvbG9yOiAjMjUzYzNhOyB9XG5cbi5mb3JtLWFyZWEgLmZvcmdvdC1wYXNzd29yZCB7XG4gIG1hcmdpbi10b3A6IC0xcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB6LWluZGV4OiAxO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmZvcm0tc29jaWFscy1idG5zIGJ1dHRvbi5leHBhbmRlZCB7XG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGNvbG9yOiAjNzE3MTcxICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDMwcHggIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAjZGNkZmRmICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xuICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIiAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmZvcm0tc29jaWFscy1idG5zIGJ1dHRvbi5leHBhbmRlZCBzcGFuIHtcbiAgICBwYWRkaW5nOiAwIDFyZW0gIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50OyB9XG4gIC5mb3JtLXNvY2lhbHMtYnRucyBidXR0b24uZXhwYW5kZWQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2ZhZmEgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubXktcGFnZSB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5teS1wYWdlIC5teS10YWdzIC50YWdzLWxpc3Qge1xuICAgIG1pbi13aWR0aDogOTAwcHg7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc2Nyb2xsX2pzIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xLjVyZW07IH0gfVxuXG4uYXNpZGUtYmFyIHtcbiAgZm9udC1mYW1pbHk6IFwiT3Blbi1TYW5zXCI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuYXNpZGUtYmFyIHtcbiAgICAgIG1hcmdpbjogMCAtMXJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIGFuZCAobWF4LXdpZHRoOiAxMDMwcHgpIHtcbiAgICAuYXNpZGUtYmFyIHtcbiAgICAgIHdpZHRoOiAyNTBweCAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYXNpZGUtYmFyIHtcbiAgICAgIHdpZHRoOiAyNjlweDtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07IH0gfVxuICAuYXNpZGUtYmFyIC5tZW51LXRhYnMge1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNmNGYzO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmFzaWRlLWJhciAubWVudS10YWJzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfSB9XG4gICAgLmFzaWRlLWJhciAubWVudS10YWJzIC50YWJzLXRpdGxlID4gYTpmb2N1cyxcbiAgICAuYXNpZGUtYmFyIC5tZW51LXRhYnMgLnRhYnMtdGl0bGUgPiBhW2FyaWEtc2VsZWN0ZWQ9XCJ0cnVlXCJdIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6ICMyYzhhODI7IH1cbiAgICAuYXNpZGUtYmFyIC5tZW51LXRhYnMgPiBsaTpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+IC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmZmZmY7IH1cbiAgICAuYXNpZGUtYmFyIC5tZW51LXRhYnMgPiBsaTpub3QoLmxvZ291dCkgPiBhOmJlZm9yZSxcbiAgICAuYXNpZGUtYmFyIC5tZW51LXRhYnMgPiBsaTpub3QoLmxvZ291dCkgPiAuYnV0dG9uOmJlZm9yZSB7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHJpZ2h0OiAxcmVtO1xuICAgICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICAgIGNvbnRlbnQ6IFwi7qSWXCI7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5hc2lkZS1iYXIgLm1lbnUtdGFicyA+IGxpOm5vdCgubG9nb3V0KSA+IGE6YmVmb3JlLFxuICAgICAgICAuYXNpZGUtYmFyIC5tZW51LXRhYnMgPiBsaTpub3QoLmxvZ291dCkgPiAuYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCLupIJcIjsgfVxuICAgICAgICAgIFtkaXI9XCJsdHJcIl0gLmFzaWRlLWJhciAubWVudS10YWJzID4gbGk6bm90KC5sb2dvdXQpID4gYTpiZWZvcmUsIFtkaXI9XCJsdHJcIl1cbiAgICAgICAgICAuYXNpZGUtYmFyIC5tZW51LXRhYnMgPiBsaTpub3QoLmxvZ291dCkgPiAuYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIu6kg1wiOyB9IH1cbiAgICAuYXNpZGUtYmFyIC5tZW51LXRhYnMgPiBsaS5pcy1hY3RpdmUgPiBhIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBjb2xvcjogIzJjOGE4MjsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgLmFzaWRlLWJhciAubWVudS10YWJzID4gbGkuaXMtYWN0aXZlID4gYTpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwi7qSXXCI7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9IH1cbiAgICAuYXNpZGUtYmFyIC5tZW51LXRhYnMgPiBsaS5pcy1hY3RpdmUgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmZmZmOyB9XG4gICAgLmFzaWRlLWJhciAubWVudS10YWJzID4gbGkgPiBhLFxuICAgIC5hc2lkZS1iYXIgLm1lbnUtdGFicyA+IGxpID4gLmJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBjb2xvcjogIzk2OTY5NjtcbiAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjdmYWZhOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICAuYXNpZGUtYmFyIC5tZW51LXRhYnMgPiBsaSA+IGEsXG4gICAgICAgIC5hc2lkZS1iYXIgLm1lbnUtdGFicyA+IGxpID4gLmJ1dHRvbiB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmZmZmY7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgICAgIC5hc2lkZS1iYXIgLm1lbnUtdGFicyA+IGxpID4gYTpob3ZlciwgLmFzaWRlLWJhciAubWVudS10YWJzID4gbGkgPiBhOmZvY3VzLFxuICAgICAgLmFzaWRlLWJhciAubWVudS10YWJzID4gbGkgPiAuYnV0dG9uOmhvdmVyLFxuICAgICAgLmFzaWRlLWJhciAubWVudS10YWJzID4gbGkgPiAuYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiAjMmM4YTgyOyB9XG4gICAgICAuYXNpZGUtYmFyIC5tZW51LXRhYnMgPiBsaSA+IGEgc3BhbiBpLFxuICAgICAgLmFzaWRlLWJhciAubWVudS10YWJzID4gbGkgPiAuYnV0dG9uIHNwYW4gaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9XG4gICAgICAgIC5hc2lkZS1iYXIgLm1lbnUtdGFicyA+IGxpID4gYSBzcGFuIGkuaWNvbi1lbnZlbG9wMSxcbiAgICAgICAgLmFzaWRlLWJhciAubWVudS10YWJzID4gbGkgPiAuYnV0dG9uIHNwYW4gaS5pY29uLWVudmVsb3AxIHtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHg7IH1cbiAgICAgICAgLmFzaWRlLWJhciAubWVudS10YWJzID4gbGkgPiBhIHNwYW4gaS5pY29uLXNpZ24tb3V0LFxuICAgICAgICAuYXNpZGUtYmFyIC5tZW51LXRhYnMgPiBsaSA+IC5idXR0b24gc3BhbiBpLmljb24tc2lnbi1vdXQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgLmFzaWRlLWJhciAubWVudS10YWJzID4gbGkgPiBhOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gLmFjY29yZGlvbi10aXRsZSxcbiAgICAgICAgLmFzaWRlLWJhciAubWVudS10YWJzID4gbGkgPiAuYnV0dG9uOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDsgfSB9XG4gICAgLmFzaWRlLWJhciAubWVudS10YWJzID4gbGkgPiAuYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgZm9udC1mYW1pbHk6IFwiT3Blbi1TYW5zXCI7XG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7IH1cbiAgICAgIC5hc2lkZS1iYXIgLm1lbnUtdGFicyA+IGxpID4gLmJ1dHRvbiBpIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cbiAgICAgICAgLmFzaWRlLWJhciAubWVudS10YWJzID4gbGkgPiAuYnV0dG9uIGkuaWNvbi1lbnZlbG9wMSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4OyB9XG4gICAgICAgIC5hc2lkZS1iYXIgLm1lbnUtdGFicyA+IGxpID4gLmJ1dHRvbiBpLmljb24tc2lnbi1vdXQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAuYXNpZGUtYmFyIC5tZW51LXRhYnMgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VjZjRmMztcbiAgICAgICAgYm9yZGVyOiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnVwZGF0ZS1wYXNzd29yZCB7XG4gICAgY29sb3I6ICMyYzhhODI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnRvcHBlci10aXRsZS5tYXJnaW4tYm90dG9tLTMge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW0gIWltcG9ydGFudDsgfSB9XG5cbi50b3BwZXItdGl0bGUgaDMge1xuICBjb2xvcjogIzJjOGE4MjsgfVxuXG4ubmV3c2xldHRlci1tb2RhbCAudG9wcGVyLXRpdGxlIGgyIHtcbiAgZm9udC1zaXplOiAxLjU2MjVyZW07XG4gIG1hcmdpbi10b3A6IC0zcmVtOyB9XG5cbi50b3BwZXItdGl0bGUuc3R5bGUtMSBoMiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBtYXJnaW4tdG9wOiAycmVtOyB9XG4gIC50b3BwZXItdGl0bGUuc3R5bGUtMSBoMjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGhlaWdodDogMnB4O1xuICAgIHdpZHRoOiA1MnB4O1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgLm5vdGlmaWNhdGlvbi1tb2RhbCAudG9wcGVyLXRpdGxlLnN0eWxlLTEgaDIge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cblxuLnByb2ZpbGUtYXZhdGFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5wcm9maWxlLWF2YXRhciBpbWcge1xuICAgIHdpZHRoOiA3NnB4O1xuICAgIGhlaWdodDogNzZweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucHJvZmlsZS1hdmF0YXIgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwM3B4O1xuICAgICAgICBoZWlnaHQ6IDEwM3B4OyB9IH1cblxuLnByb2ZpbGUtYXZhdGFyLWVkaXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLnByb2ZpbGUtYXZhdGFyLWVkaXQgaSB7XG4gICAgZm9udC1zaXplOiAxMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnByb2ZpbGUtYXZhdGFyLWVkaXQge1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICBoZWlnaHQ6IDMwcHg7IH1cbiAgICAgIC5wcm9maWxlLWF2YXRhci1lZGl0IGkge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuXG4ucHJvZmlsZS1kZXRhaWxzIGgzIHtcbiAgY29sb3I6ICMyYzhhODI7IH1cblxuLnByb2ZpbGUtY29udGVudCB7XG4gIG1hcmdpbjogMXJlbSAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnByb2ZpbGUtY29udGVudCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2VjZjRmMztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgICBwYWRkaW5nOiAzcmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfSB9XG5cbi5hcnJvdy1wb2ludGVyIGxvdHRpZS1wbGF5ZXIge1xuICB3aWR0aDogMTAwcHg7XG4gIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hcnJvdy1wb2ludGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLm1lbnUtcG9pbnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tZW51LXBvaW50ZXIge1xuICAgIG1hcmdpbi1yaWdodDogMTcuNXJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwOyB9IH1cblxuLyogLS0tLS0tLSBNWSBQUk9GSUxFIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG4vKiAtLS0tLS0tIFBFUlNPTkFMSVpFIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cbi5pbnB1dC1maWVsZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDsgfVxuICAuaW5wdXQtZmllbGQgLmljby1sYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxNnB4O1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMjBweDtcbiAgICBjb2xvcjogIzlhOWE5YTsgfVxuICAuaW5wdXQtZmllbGQgLmljby1zaG93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICBwYWRkaW5nLXRvcDogMC44cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS44cmVtO1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLmlucHV0LWZpZWxkLmlucHV0LWRlZmF1bHQge1xuICAgIGRpcmVjdGlvbjogcnRsOyB9XG4gICAgLmlucHV0LWZpZWxkLmlucHV0LWRlZmF1bHQgLmljby1sYWJlbCB7XG4gICAgICBsZWZ0OiAxNnB4OyB9XG4gICAgLmlucHV0LWZpZWxkLmlucHV0LWRlZmF1bHQgLmljby1zaG93IHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMS44cmVtOyB9XG4gIC5pbnB1dC1maWVsZCAucmVxdWlyZWQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtMXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuXG4ucmVxdWlyZWQge1xuICBjb2xvcjogIzJjOGE4MjtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cblxuLm1lc3NhZ2Uge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGNvbG9yOiAjMmM4YTgyOyB9XG4gIC5tZXNzYWdlLmFsZXJ0IHtcbiAgICBjb2xvcjogI2RmNmQzZjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAucGVyc29uYWwtbWVzc2FnZSB7XG4gICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGVyc29uYWwtbWVzc2FnZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkMWQ1ZDU7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfSB9XG5cbi5wZXJzb25hbC1tZXNzYWdlIGgyIHtcbiAgZm9udC1zaXplOiAxLjU2MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGNvbG9yOiAjMjUzYzNhO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wZXJzb25hbC1tZXNzYWdlIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMy4xMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS40OyB9IH1cblxuLnBlcnNvbmFsLW1lc3NhZ2UgaDMge1xuICBmb250LXNpemU6IDIuMzc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4uYWN0aW9uLWJ0biB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBtYXJnaW46IDNyZW0gYXV0byAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYWN0aW9uLWJ0biB7XG4gICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgLmFjdGlvbi1idG4gYSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5hY3Rpb24tYnRuIC5idXR0b24ge1xuICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgcGFkZGluZzogMC44cmVtIDJyZW07XG4gICAgbWluLXdpZHRoOiAxNjlweDtcbiAgICBoZWlnaHQ6IDQ2cHg7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gIC5hY3Rpb24tYnRuIC5za2lwLWJ0biB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMyYzhhODI7XG4gICAgY29sb3I6ICMyYzhhODI7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5hY3Rpb24tYnRuIC5wcmV2LWJ0biB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcbiAgICBjb2xvcjogIzk2OTY5NjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuYWN0aW9uLWJ0biAucHJldi1idG4ge1xuICAgICAgICBtYXJnaW4tdG9wOiAxcmVtOyB9IH1cbiAgICAuYWN0aW9uLWJ0biAucHJldi1idG46aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDsgfVxuICAuYWN0aW9uLWJ0biAuZ290by1idG4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlOWYyZWY7XG4gICAgY29sb3I6ICMyNTNjM2E7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFjdGlvbi0tYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgLmFjdGlvbi0tYnV0dG9uIC5uZXh0LWJ0biB7XG4gICAgICBvcmRlcjogMjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5pbWctY292ZXIge1xuICAgIHdpZHRoOiA1NDBweDsgfSB9XG5cbi5wZXJzb25hbC1pbm5lciB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGVyc29uYWwtaW5uZXIge1xuICAgICAgbWFyZ2luLXRvcDogOHJlbTsgfSB9XG5cbi5mdW5jdGlvbi1pbmZvIGgzIHtcbiAgZm9udC1zaXplOiAzMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZ1bmN0aW9uLWluZm8gaDMge1xuICAgICAgZm9udC1zaXplOiA0MHB4OyB9IH1cblxuLmdldC1zdGFydGVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMzBweCAwOyB9XG4gIC5nZXQtc3RhcnRlZCAuYWN0aW9uLWJ0biB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDQ7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07IH1cblxuLnBlcnNvbmFsLXdyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnBlcnNvbmFsLXdyYXAtYmVmb3JlIHtcbiAgICBoZWlnaHQ6IDgwdmg7XG4gICAgb3ZlcmZsb3cteTogYXV0bzsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAucGVyc29uYWwtd3JhcC1iZWZvcmUge1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxODBweCk7XG4gICAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgICAgICAgLyogSUUgYW5kIEVkZ2UgKi9cbiAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyB9XG4gICAgICAgIC5wZXJzb25hbC13cmFwLWJlZm9yZTo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAucGVyc29uYWwtd3JhcC1hZnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiA0O1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtOyB9XG4gICAgLnBlcnNvbmFsLXdyYXAtYWZ0ZXI6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBiYWNrZ3JvdW5kOiAjZjdmYWZhO1xuICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQoMGRlZywgI2Y3ZmFmYSAwJSwgcmdiYSgyNDcsIDI1MCwgMjUwLCAwLjQ4MjIzKSA4MCUsIHJnYmEoMjQ3LCAyNTAsIDI1MCwgMCkgMTAwJSk7XG4gICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgwZGVnLCAjZjdmYWZhIDAlLCByZ2JhKDI0NywgMjUwLCAyNTAsIDAuNDgyMjMpIDgwJSwgcmdiYSgyNDcsIDI1MCwgMjUwLCAwKSAxMDAlKTtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwZGVnLCAjZjdmYWZhIDAlLCByZ2JhKDI0NywgMjUwLCAyNTAsIDAuNDgyMjMpIDgwJSwgcmdiYSgyNDcsIDI1MCwgMjUwLCAwKSAxMDAlKTtcbiAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9XCIjZjdmYWZhXCIsZW5kQ29sb3JzdHI9XCIjZjdmYWZhXCIsR3JhZGllbnRUeXBlPTEpOyB9XG4gICAgLnBlcnNvbmFsLXdyYXAtYWZ0ZXIgLmFjdGlvbi1idG4ge1xuICAgICAgei1pbmRleDogMztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAucGVyc29uYWwtd3JhcC1hdXRob3Ige1xuICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5wZXJzb25hbC13cmFwLWF1dGhvciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwOyB9IH1cblxuLmhvcml6b250YWwtc2Nyb2xsLXdyYXBwZXIgLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIHtcbiAgd2lkdGg6IDMwMHB4O1xuICByaWdodDogaW5oZXJpdDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfSB9XG5cbi5ob3Jpem9udGFsLXNjcm9sbC1pbm5lciB7XG4gIGhlaWdodDogaW5oZXJpdDsgfVxuXG4udi1pbm5lci1zY3JvbGwuYXV0aG9ycy1saXN0IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgY29sdW1uLWdhcDogMTBweDtcbiAgcm93LWdhcDogMTBweDtcbiAganVzdGlmeS1pdGVtczogY2VudGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnYtaW5uZXItc2Nyb2xsLmF1dGhvcnMtbGlzdCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnYtaW5uZXItc2Nyb2xsLmF1dGhvcnMtbGlzdCB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg2LCAxZnIpO1xuICAgICAgY29sdW1uLWdhcDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5pbm5lci1zY3JvbGwge1xuICAgIHBhZGRpbmctYm90dG9tOiA2cmVtOyB9IH1cblxuLmlubmVyLXNjcm9sbC5hdXRob3JzLWxpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmlubmVyLXNjcm9sbC5hdXRob3JzLWxpc3Qge1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmlubmVyLXNjcm9sbCAuYXV0aG9yLW9wdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfSB9XG5cbi5pbm5lci1zY3JvbGwgLnRhZy1vcHRpb24gLnRhZyB7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgcGFkZGluZzogNXB4IDEwcHggMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5pbm5lci1zY3JvbGwgLnRhZy1vcHRpb24gLnRhZyB7XG4gICAgICBmb250LXNpemU6IDE4cHg7IH0gfVxuXG4uc2VsZWN0LWxpc3QtaW5uZXIge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmctYm90dG9tOiA2cmVtOyB9XG5cbi50YWdzLWxpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLnRhZ3MtbGlzdC52LWlubmVyLXNjcm9sbCB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLnRhZ3MtbGlzdC52LWlubmVyLXNjcm9sbCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4OyB9IH1cbiAgLnBlcnNvbmFsLXdyYXAgLnRhZ3MtbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucGVyc29uYWwtd3JhcCAudGFncy1saXN0IHtcbiAgICAgICAgbWF4LXdpZHRoOiA5MzdweDtcbiAgICAgICAgbWFyZ2luOiA0cmVtIGF1dG8gMDsgfSB9XG5cbi5hdXRob3Itb3B0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiA4NnB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYXV0aG9yLW9wdGlvbiB7XG4gICAgICB3aWR0aDogMTE1cHg7IH0gfVxuICAuYXV0aG9yLW9wdGlvbiAuYXV0aG9yLWltZyB7XG4gICAgd2lkdGg6IDg2cHg7XG4gICAgaGVpZ2h0OiA4NnB4O1xuICAgIG1hcmdpbjogMCBhdXRvIDEuNXJlbTsgfVxuICAuYXV0aG9yLW9wdGlvbiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIG1hcmdpbjogMDtcbiAgICB6LWluZGV4OiAxO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA4MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAwOyB9XG4gICAgLmF1dGhvci1vcHRpb24gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcZTkzMVwiO1xuICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiOyB9XG4gICAgLmF1dGhvci1vcHRpb24gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgfiAuYXV0aG9yLWltZyBpbWcge1xuICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMCk7IH1cbiAgICAuYXV0aG9yLW9wdGlvbiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCB+IC5hdXRob3ItbWV0YSAuYXV0aG9yLW5hbWUge1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAuYXV0aG9yLW9wdGlvbiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZDpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGU5MzJcIjtcbiAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICAgIGNvbG9yOiAjMmM4YTgyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBlcnNvbmFsLXdyYXAgLmF1dGhvci1vcHRpb24ge1xuICAgICAgbWFyZ2luOiAwLjVyZW07IH0gfVxuXG4uYXV0aG9yLW9wdGlvbiAuYXV0aG9yLW1ldGEge1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC1mYW1pbHk6IFwiT3Blbi1TYW5zXCI7XG4gIGNvbG9yOiAjOTI5ODk4OyB9XG4gIC5hdXRob3Itb3B0aW9uIC5hdXRob3ItbWV0YSAuYXV0aG9yLW5hbWUge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubXktYXV0aG9ycyAuYXV0aG9ycy1saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXg6IDEgMCAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5teS1hdXRob3JzIC5hdXRob3JzLWxpc3QgLm1DU0JfY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9IH1cblxuLm15LWF1dGhvcnMgLmF1dGhvci1vcHRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm15LWF1dGhvcnMgLmF1dGhvci1pbWcge1xuICAgIHdpZHRoOiA5OXB4O1xuICAgIGhlaWdodDogOTlweDsgfSB9XG5cbi5tYW5hZ2UtYmxvY2s6bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2QxZDVkNTtcbiAgcGFkZGluZy10b3A6IDJyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1hbmFnZS1ibG9jayBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIHRvcDogOTBweDsgfSB9XG5cbi5hZGQtbW9yZSB7XG4gIGNvbG9yOiAjMmM4YTgyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLmFkZC1tb3JlIHtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAuYWRkLW1vcmUgaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5hZGQtbW9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRmMGVmO1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAgIC5hZGQtbW9yZTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlNGVkZWM7XG4gICAgICAgIGNvbG9yOiAjMmM4YTgyOyB9XG4gICAgICAuYWRkLW1vcmUuYmlnIHtcbiAgICAgICAgd2lkdGg6IDk5cHg7XG4gICAgICAgIGhlaWdodDogOTlweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9XG4gICAgICAgIC5hZGQtbW9yZS5iaWcgaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjc1cmVtOyB9XG4gICAgICAuYWRkLW1vcmUuc21hbGwge1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4OyB9XG4gICAgICAgIC5hZGQtbW9yZS5zbWFsbCBpIHtcbiAgICAgICAgICBmb250LXNpemU6IDAuNjg3NXJlbTsgfSB9XG4gIC5hZGQtbW9yZS5idXR0b24ge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgIG1hcmdpbjogMC41cmVtOyB9XG4gIC5hZGQtbW9yZSBzcGFuIHtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmNhdGVnb3J5LW1lbnUgLmFkZC1tb3JlIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRmMGVmO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgaGVpZ2h0OiAzMHB4OyB9XG4gICAgICAuY2F0ZWdvcnktbWVudSAuYWRkLW1vcmU6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlZGVjO1xuICAgICAgICBjb2xvcjogIzJjOGE4MjsgfVxuICAgICAgLmNhdGVnb3J5LW1lbnUgLmFkZC1tb3JlIGkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG4ud3JpdGVyLWNoZWNrIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLndyaXRlci1jaGVjayBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNmNGYzO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB3aWR0aDogMjZweDtcbiAgICBoZWlnaHQ6IDI2cHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiAjMmM4YTgyO1xuICAgIHBhZGRpbmctdG9wOiA3cHg7XG4gICAgei1pbmRleDogMTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA4MHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLndyaXRlci1jaGVjayBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Q5ZWRlYjsgfVxuICAgIC53cml0ZXItY2hlY2sgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIu6ku1wiO1xuICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiOyB9XG4gICAgLndyaXRlci1jaGVjayBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmM4YTgyOyB9XG4gICAgICAud3JpdGVyLWNoZWNrIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwi7qS8XCI7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogOHB4OyB9XG5cbi5sb3R0aWUtd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5sb3R0aWUtd3JhcCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07IH0gfVxuICAubG90dGllLXdyYXAgLmxvdHRpZS1jaGVjayB7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICAubG90dGllLXdyYXAgLmxvdHRpZS1jaGVjayBzdmcge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VjZjRmMztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDI2cHggIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogMjZweCAhaW1wb3J0YW50O1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwOyB9XG5cbi5tdWx0aS1jaGVjayB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAubXVsdGktY2hlY2sgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuYXV0aG9ycy1saXN0IC5tdWx0aS1jaGVjazpob3ZlciBpbWcge1xuICAgIGZpbHRlcjogZ3JheXNjYWxlKDApOyB9XG5cbi50YWctb3B0aW9uIHtcbiAgbWFyZ2luOiAwLjVyZW07IH1cbiAgLnRhZy1vcHRpb246aG92ZXIgLnRhZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJjOGE4MjtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAudGFnLW9wdGlvbiAudGFnIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2VkOWQ4O1xuICAgIHBhZGRpbmc6IDAuNXJlbSAycmVtIDAuMnJlbTtcbiAgICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5teS10YWdzIC50YWctb3B0aW9uIC50YWcsXG4gICAgLm1vZGFsLXdyYXAgLnRhZy1vcHRpb24gLnRhZyB7XG4gICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC50YWctb3B0aW9uIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC50YWctb3B0aW9uIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIH4gLnRhZyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmM4YTgyO1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5uZXdzbGV0dGVyLWljbyBsb3R0aWUtcGxheWVyIHtcbiAgd2lkdGg6IDE3NnB4O1xuICBoZWlnaHQ6IDE3NnB4O1xuICBtYXJnaW46IDAgYXV0bzsgfVxuXG4uZW50cnktc3Vic2NyaWJlIC5uZXdzbGV0dGVyLWljbyB7XG4gIG1hcmdpbi1ib3R0b206IC0zcmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5uZXdzbGV0dGVyLWxpc3Qge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoMiwgYXV0byk7XG4gICAgZ3JpZC1hdXRvLWNvbHVtbnM6IDFmcjtcbiAgICBncmlkLWF1dG8tZmxvdzogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcm93LWdhcDogMnJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wZXJzb25hbC13cmFwIC5uZXdzbGV0dGVyLWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogNTBweDtcbiAgICBtYXJnaW4tdG9wOiA0cmVtOyB9IH1cblxuLm5ld3NsZXR0ZXItaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjZjRmMztcbiAgd2lkdGg6IDMxNXB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLm5ld3NsZXR0ZXItaXRlbSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIGFuZCAobWF4LXdpZHRoOiAxMTgxcHgpIHtcbiAgICAubmV3c2xldHRlci1pdGVtIHtcbiAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5uZXdzbGV0dGVyLWl0ZW0ge1xuICAgICAgd2lkdGg6IDI5MnB4O1xuICAgICAgcGFkZGluZzogMnJlbSAxcmVtIDFyZW07IH0gfVxuICAubmV3c2xldHRlci1pdGVtIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5uZXdzbGV0dGVyLWl0ZW0gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgfiAuY2hlY2tib3gtYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyYzhhODI7IH1cbiAgICAgIC5uZXdzbGV0dGVyLWl0ZW0gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgfiAuY2hlY2tib3gtYnV0dG9uIC5pY29uLWVudmVsb3AyIHtcbiAgICAgICAgZm9udC1zaXplOiAxMXB4OyB9XG4gICAgICAgIC5uZXdzbGV0dGVyLWl0ZW0gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgfiAuY2hlY2tib3gtYnV0dG9uIC5pY29uLWVudmVsb3AyOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcXGU5M2NcIjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5wcm9maWxlLW5ld3NsZXR0ZXIgLm5ld3NsZXR0ZXItaXRlbSB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnBlcnNvbmFsLXdyYXAtbmV3c2xldHRlciAubmV3c2xldHRlci1pdGVtIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGVyc29uYWwtd3JhcC1uZXdzbGV0dGVyIC5uZXdzbGV0dGVyLWl0ZW0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5uZXdzbGV0dGVyLWl0ZW0taW5mbyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLm5ld3NsZXR0ZXItaXRlbS1pY29uIGltZyB7XG4gICAgd2lkdGg6IDQ5cHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubmV3c2xldHRlci1pdGVtLWljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0ycmVtO1xuICAgIHJpZ2h0OiAxcmVtOyB9IH1cblxuLm5ld3NsZXR0ZXItaXRlbS1hY3Rpb24ge1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuXG4ubmV3c2xldHRlci1pdGVtLXRpdGxlIGgzIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMTZweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5uZXdzbGV0dGVyLWl0ZW0tdGl0bGUgaDMge1xuICAgICAgZm9udC1zaXplOiAyMnB4OyB9IH1cblxuLm5ld3NsZXR0ZXItaXRlbS1tZXRhIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBtYXJnaW4tdG9wOiAwO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGNvbG9yOiAjM2IzYjNiO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjsgfVxuXG4uY2hlY2tib3gtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgcGFkZGluZzogMC4zcmVtIDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY2hlY2tib3gtYnV0dG9uIHtcbiAgICAgIHBhZGRpbmc6IDAuOHJlbSAxLjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMDsgfSB9XG4gIC5jaGVja2JveC1idXR0b24gLmljb21vb24taWNvbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5jc3RtLWlucHQge1xuICAgIG1hcmdpbi10b3A6IC0xNXB4OyB9IH1cblxuLmVuZC1tZXNzYWdlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogM3JlbSAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTVyZW0pOyB9XG4gIC5lbmQtbWVzc2FnZSAuYnV0dG9uIHtcbiAgICBtYXJnaW46IDAgYXV0byAxcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDE4cHg7IH1cbiAgLmVuZC1tZXNzYWdlIC5zdWNjZXNzLWxvdHRpZSB7XG4gICAgd2lkdGg6IDEzOHB4O1xuICAgIGhlaWdodDogMTM4cHg7XG4gICAgbWFyZ2luOiAwIGF1dG8gMS41cmVtOyB9XG4gIC5lbmQtbWVzc2FnZS1zdWNjZXNzIGgzIHtcbiAgICBmb250LXNpemU6IDEuNzVyZW07IH1cbiAgLmVuZC1tZXNzYWdlLXN1Y2Nlc3MgcCB7XG4gICAgZm9udC1mYW1pbHk6IFwiT3Blbi1TYW5zXCI7IH1cblxuLnJldmVhbCAudmVydGljYWwtc2Nyb2xsLXdyYXBwZXIsXG4ubW9kYWwtd3JhcCAudmVydGljYWwtc2Nyb2xsLXdyYXBwZXIge1xuICBoZWlnaHQ6IDQ1MHB4O1xuICBvdmVyZmxvdy15OiBhdXRvOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnJldmVhbCAudmVydGljYWwtc2Nyb2xsLXdyYXBwZXIsXG4gICAgLm1vZGFsLXdyYXAgLnZlcnRpY2FsLXNjcm9sbC13cmFwcGVyIHtcbiAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTsgfVxuICAgICAgLnJldmVhbCAudmVydGljYWwtc2Nyb2xsLXdyYXBwZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLFxuICAgICAgLm1vZGFsLXdyYXAgLnZlcnRpY2FsLXNjcm9sbC13cmFwcGVyOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ucmV2ZWFsIC52ZXJ0aWNhbC1zY3JvbGwtaW5uZXIsXG4ubW9kYWwtd3JhcCAudmVydGljYWwtc2Nyb2xsLWlubmVyIHtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5yZXZlYWwtb3ZlcmxheSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC45NSk7IH1cblxuLnN1YnNjcmliZS1hbGwge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc3Vic2NyaWJlLWFsbCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgICAgei1pbmRleDogMjsgfSB9XG5cbi5ub3RpZi1tZXNzYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuNXJlbTsgfVxuXG4vKiAtLS0tLS0tIFBFUlNPTkFMSVpFIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG4vKiAtLS0tLS0tIENVU1RPTSBNT0RBTCAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG4ubW9kYWwtb3BlbiB7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjsgfVxuXG4ubW9kYWwtdG9nZ2xlIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5tb2RhbC13cmFwIHtcbiAgcGFkZGluZzogMnJlbTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxMDAwMDtcbiAgLyogMSAqL1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAubW9kYWwtd3JhcCB7XG4gICAgICBvdmVyZmxvdzogYXV0bzsgfSB9XG5cbi5tb2RhbC13cmFwLmlzLXZpc2libGUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5tb2RhbC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA5OTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluOyB9XG5cbi5tb2RhbC13cmFwLmlzLXZpc2libGUgLm1vZGFsLW92ZXJsYXkge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuXG4ubW9kYWwtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogOTk5OTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDk1JTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJveC1zaGFkb3c6IDAgMCAxLjVlbSByZ2JhKDAsIDAsIDAsIDAuMzUpOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1vZGFsLXdyYXBwZXIge1xuICAgICAgd2lkdGg6IDYwcmVtOyB9XG4gICAgICAubm90aWZpY2F0aW9uLW1vZGFsIC5tb2RhbC13cmFwcGVyIHtcbiAgICAgICAgd2lkdGg6IDM5MHB4OyB9IH1cbiAgLm5vdGlmaWNhdGlvbi1tb2RhbCAubW9kYWwtd3JhcHBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNjA1NztcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBib3JkZXItcmFkaXVzOiAzNnB4OyB9XG4gICAgLm5vdGlmaWNhdGlvbi1tb2RhbCAubW9kYWwtd3JhcHBlciBpbWcge1xuICAgICAgd2lkdGg6IDIwOHB4OyB9XG5cbi5tb2RhbC10cmFuc2l0aW9uIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgMC4xMnM7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAlKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4ubW9kYWwtd3JhcC5pcy12aXNpYmxlIC5tb2RhbC10cmFuc2l0aW9uIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgdG9wOiAxcmVtO1xuICBvcGFjaXR5OiAxOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1vZGFsLXdyYXAuaXMtdmlzaWJsZSAubW9kYWwtdHJhbnNpdGlvbiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB0b3A6IDUwJTsgfSB9XG5cbi5tb2RhbC1jbG9zZSxcbi5nYW1lLWNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBwYWRkaW5nOiAwLjhlbTtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLm5vdGlmaWNhdGlvbi1tb2RhbCAubW9kYWwtY2xvc2UsIC5ub3RpZmljYXRpb24tbW9kYWxcbiAgLmdhbWUtY2xvc2Uge1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5tb2RhbC1jbG9zZTpob3ZlcixcbiAgLmdhbWUtY2xvc2U6aG92ZXIge1xuICAgIGNvbG9yOiAjNzc3OyB9XG5cbi5tb2RhbC1iZWZvcmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDFyZW07IH1cbiAgLm1vZGFsLWJlZm9yZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogc3RhdGljOyB9XG4gIC5tb2RhbC1iZWZvcmUgLmJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubW9kYWwtaW5uZXIge1xuICBwYWRkaW5nOiAwIDFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubW9kYWwtaW5uZXIge1xuICAgICAgcGFkZGluZzogMCAzcmVtOyB9IH1cbiAgLm5vdGlmaWNhdGlvbi1tb2RhbCAubW9kYWwtaW5uZXIge1xuICAgIHBhZGRpbmc6IDIwcHggMjBweCA1MHB4O1xuICAgIC8qIE1vYmlsZSBMYW5kc2NhcGUgKi8gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDMyMHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDg5NnB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMikgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgICAubm90aWZpY2F0aW9uLW1vZGFsIC5tb2RhbC1pbm5lciB7XG4gICAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgICAgIG92ZXJmbG93OiBzY3JvbGw7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDQxMnB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDkxNnB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMikgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgICAubm90aWZpY2F0aW9uLW1vZGFsIC5tb2RhbC1pbm5lciB7XG4gICAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgICAgIG92ZXJmbG93OiBzY3JvbGw7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiA2MDFweCkgYW5kIChtaW4taGVpZ2h0OiA2MDBweCkge1xuICAgICAgLm5vdGlmaWNhdGlvbi1tb2RhbCAubW9kYWwtaW5uZXIge1xuICAgICAgICBoZWlnaHQ6IDUwMHB4O1xuICAgICAgICBvdmVyZmxvdzogc2Nyb2xsOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm5vdGlmaWNhdGlvbi1tb2RhbCAubW9kYWwtaW5uZXIge1xuICAgICAgICBwYWRkaW5nOiAzNXB4IDFyZW0gNzVweDsgfSB9XG5cbi5zZWxlY3QtYWxsIHtcbiAgZm9udC1mYW1pbHk6IFwiT3Blbi1TYW5zXCI7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDFyZW07XG4gIHJpZ2h0OiAxcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnNlbGVjdC1hbGwge1xuICAgICAgbGluZS1oZWlnaHQ6IDAuMjsgfSB9XG4gIC5zZWxlY3QtYWxsIGkge1xuICAgIGZvbnQtc2l6ZTogN3B4O1xuICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XG5cbi5uZXdzbGV0dGVyLW1vZGFsIC5uZXdzbGV0dGVyLWljbyB7XG4gIG1hcmdpbi10b3A6IC0yNnB4OyB9XG5cbi5uZXdzbGV0dGVyLW1vZGFsIC5tb2RhbC1pbm5lciB7XG4gIHBhZGRpbmctYm90dG9tOiA0M3B4OyB9XG5cbi5uZXdzbGV0dGVyLW1vZGFsIGZvcm0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLm5ld3NsZXR0ZXItbW9kYWwgZm9ybSA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3JkZXI6IDI7IH1cblxuLm5ld3NsZXR0ZXItbW9kYWwgLm1haWxjaGltcC1uZXdzbGV0dGVyLXN1YnNjcmliZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMXJlbSBhdXRvIDA7IH1cblxuLm5ld3NsZXR0ZXItbW9kYWwgLm5ld3NsZXR0ZXItY29udGVudCAubWFpbGNoaW1wLW5ld3NsZXR0ZXItc3Vic2NyaWJlIHtcbiAgbWF4LXdpZHRoOiA1OTBweDtcbiAgb3JkZXI6IDM7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLm5ld3NsZXR0ZXItbW9kYWwge1xuICAgIG92ZXJmbG93OiBzY3JvbGw7IH0gfVxuXG4ubmV3c2xldHRlci1tb2RhbCAubWVzc2FnZXMge1xuICBtYXJnaW4tdG9wOiAyMHB4OyB9XG5cbi5uZXdzbGV0dGVyLW1vZGFsIC5tZXNzYWdlcy5tZXNzYWdlcy0tc3RhdHVzIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAyNXB4O1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgY29sb3I6ICMyYzhhODI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubmV3c2xldHRlci1tb2RhbCAubWVzc2FnZXMubWVzc2FnZXMtLXN0YXR1czpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi7qSyXCI7XG4gICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG5cbi5uZXdzbGV0dGVyLWNvbnRlbnQgLm1haWxjaGltcC1pbm5lciB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLm5ld3NsZXR0ZXItY29udGVudCAubWFpbGNoaW1wLWlubmVyIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgYWNjZW50LWNvbG9yOiAjMDAwMDAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5uZXdzbGV0dGVyLWNvbnRlbnQgLm1haWxjaGltcC1uZXdzbGV0dGVyLXdyYXBwZXIge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfSB9XG5cbi5uZXdzbGV0dGVyLWNvbnRlbnQgLm1haWxjaGltcC1uZXdzbGV0dGVyLXN1YnNjcmliZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTsgfVxuXG4ubmV3c2xldHRlci1jb250ZW50IC5mb3JtLXJlcXVpcmVkIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAubmV3c2xldHRlci1jb250ZW50IC5qcy1mb3JtLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH0gfVxuXG4ubmV3c2xldHRlci1jb250ZW50IC5tYWlsY2hpbXAtbmV3c2xldHRlci1tZXJnZWZpZWxkcyB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLm5ld3NsZXR0ZXItY29udGVudCBpbnB1dC5mb3JtLWVtYWlsIHtcbiAgYm9yZGVyLWNvbG9yOiAjODQ4ZThkO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZGlyZWN0aW9uOiBsdHI7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi5uZXdzbGV0dGVyLWNvbnRlbnQgLmZvcm0tc3VibWl0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAyLjczNzVyZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5uZXdzbGV0dGVyLWNvbnRlbnQgLmZvcm0tc3VibWl0IHtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAzcmVtOyB9IH1cbiAgLm5ld3NsZXR0ZXItY29udGVudCAuZm9ybS1zdWJtaXQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyYzhhODI7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7IH1cblxuLm5vdGlmaWNhdGlvbi1tb2RhbCAuYnV0dG9uIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbjogMCAwLjJyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubm90aWZpY2F0aW9uLW1vZGFsIC5idXR0b24ge1xuICAgICAgbWFyZ2luOiAwIDAuNXJlbTsgfSB9XG5cbi5ub3RpZmljYXRpb24tbW9kYWwgLmJ1dHRvbi5kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgY29sb3I6ICNmZmZmZmY7IH1cblxuLm5vdGlmaWNhdGlvbi1tb2RhbCAuYnV0dG9uLmxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm5vdGlmaWNhdGlvbi1tb2RhbCBpbWcge1xuICAgIGhlaWdodDogMjI5cHg7IH0gfVxuXG4ubm90aWZpY2F0aW9uLW1vZGFsIHAge1xuICBmb250LXNpemU6IDE5cHg7XG4gIGNvbG9yOiAjZWZlY2UyO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5ub3RpZmljYXRpb24tbW9kYWwgLmNob2ljZXMge1xuICBtYXJnaW4tdG9wOiA0NXB4O1xuICBtYXJnaW4tYm90dG9tOiAzNXB4OyB9XG5cbi8qIC0tLS0tLS0gQ1VTVE9NIE1PREFMIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG4vKiAtLS0tLS0tIDQwNCBOT1QgRk9VTkQgLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLm5vdC1mb3VuZC13cmFwIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubm90LWZvdW5kLXdyYXAgLm5vdC1mb3VuZC10ZXh0IHtcbiAgICB3aWR0aDogMzByZW07IH0gfVxuXG4ubm90LWZvdW5kLXdyYXAgLm5vdC1mb3VuZC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubm90LWZvdW5kLXdyYXAgLm5vdC1mb3VuZC1pbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAtMTsgfSB9XG5cbi5ub3QtZm91bmQtbnVtIHtcbiAgZm9udC1zaXplOiA2LjEyNXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFNlcmlmXCIsIHNlcmlmO1xuICBmb250LXdlaWdodDogYm9sZGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm5vdC1mb3VuZC1udW0ge1xuICAgICAgZm9udC1zaXplOiA5LjYyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ub3QtZm91bmQtdHh0IHtcbiAgICBtYXJnaW46IDFyZW0gMCA0cmVtOyB9IH1cblxuLm5vdC1mb3VuZC10eHQgaDIge1xuICBmb250LXNpemU6IDJyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGNvbG9yOiAjMmM4YTgyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm5vdC1mb3VuZC10eHQgaDIge1xuICAgICAgZm9udC1zaXplOiAzLjM3NXJlbTsgfSB9XG5cbi5ub3QtZm91bmQtdHh0IHAge1xuICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgY29sb3I6ICM0ZDRkNGQ7IH1cblxuLm5vdC1mb3VuZC1idG4gLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcGFkZGluZzogMXJlbSAzcmVtOyB9XG4gIC5ub3QtZm91bmQtYnRuIC5idXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyYzhhODI7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cblxuLyogLS0tLS0tLSA0MDQgTk9UIEZPVU5EIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cbi8qIC0tLS0tIFdFQVRIRVIgV0lER0VUIC0tLS0tLSBTVEFSVCAtLS0tLS0gKi9cbi53ZWF0aGVyLXdpZGdldCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cblxuI2N1cnJlbnRXZWF0aGVyIHtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi53ZWF0aGVyLW91dGxpbmUge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIC1tb3otYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgLW8tYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDFyZW0gMnJlbSAxcmVtO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAvKiBuZXRib29rIG9ubHkgKi8gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC53ZWF0aGVyLW91dGxpbmUge1xuICAgICAgcGFkZGluZzogMXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIC53ZWF0aGVyLW91dGxpbmUge1xuICAgICAgcGFkZGluZzogMXJlbTsgfSB9XG5cbi5yYWlueSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvd2VhdGhlci9yYWlueS5qcGcpOyB9XG5cbi5jbG91ZHkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL3dlYXRoZXIvY2xvdWR5LmpwZyk7IH1cblxuLnNhbmRzdG9ybSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvd2VhdGhlci9zYW5kc3Rvcm0uanBnKTsgfVxuXG4uY2xlYXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL3dlYXRoZXIvY2xlYXIuanBnKTsgfVxuXG4ud2VhdGhlci1pY28ge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgLW1vei1iYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIC1vLWJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBoZWlnaHQ6IDI2NHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgLndlYXRoZXItaWNvIHtcbiAgICAgIGhlaWdodDogMjQwcHg7IH0gfVxuXG4uc3VuLWljbyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi93ZWF0aGVyL2NvbmRpdGlvbi9zdW4uc3ZnKTsgfVxuXG4ubW9vbi1pY28ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb24vd2VhdGhlci9jb25kaXRpb24vbW9vbi5zdmcpOyB9XG5cbi5zdW5fY2xvdWRzLWljbyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi93ZWF0aGVyL2NvbmRpdGlvbi9zdW5fY2xvdWRzLnN2Zyk7IH1cblxuLm1vb25fY2xvdWRzLWljbyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi93ZWF0aGVyL2NvbmRpdGlvbi9tb29uX2Nsb3Vkcy5zdmcpOyB9XG5cbi5jbG91ZHMtaWNvIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29uL3dlYXRoZXIvY29uZGl0aW9uL2Nsb3Vkcy5zdmcpOyB9XG5cbi5yYWluLWljbyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi93ZWF0aGVyL2NvbmRpdGlvbi9yYWluLnN2Zyk7IH1cblxuLmxpZ2h0bmluZy1pY28ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb24vd2VhdGhlci9jb25kaXRpb24vbGlnaHRuaWdodC5zdmcpOyB9XG5cbi5zdW5fcmFpbl9zbm93LWljbyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi93ZWF0aGVyL2NvbmRpdGlvbi9zdW5fcmFpbl9zbm93LnN2Zyk7IH1cblxuLm1vb25fcmFpbl9zbm93LWljbyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi93ZWF0aGVyL2NvbmRpdGlvbi9tb29uX3JhaW5fc25vdy5zdmcpOyB9XG5cbi5mb2ctaWNvIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29uL3dlYXRoZXIvY29uZGl0aW9uL2ZvZy5zdmcpOyB9XG5cbi53ZWF0aGVyLWljb24ge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIC1tb3otYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgLW8tYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMjJweDsgfVxuXG4ubW9ybmluZy1pY28ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb24vd2VhdGhlci9tb3JuaW5nLnN2Zyk7IH1cblxuLm5pZ2h0LWljbyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi93ZWF0aGVyL25pZ2h0LnN2Zyk7IH1cblxuLndlYXRoZXItZGV0YWlscyB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLndlYXRoZXItb3V0bGluZS1jaXR5IHtcbiAgZm9udC1zaXplOiAzLjEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLndlYXRoZXItb3V0bGluZS1jb25kaXRpb24ge1xuICBmb250LXNpemU6IDE4cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiA0cmVtO1xuICB3aWR0aDogMjM1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8qIFNtYWxsZXN0IG9ubHkgKi9cbiAgLyogbmV0Ym9vayBvbmx5ICovIH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAud2VhdGhlci1vdXRsaW5lLWNvbmRpdGlvbiB7XG4gICAgICBsZWZ0OiAtMnJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgLndlYXRoZXItb3V0bGluZS1jb25kaXRpb24ge1xuICAgICAgd2lkdGg6IDIwNXB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLndlYXRoZXItb3V0bGluZS1jb25kaXRpb24ge1xuICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgbGVmdDogLTFyZW07IH0gfVxuXG4ud2VhdGhlci1vdXRsaW5lLWluZm8ge1xuICBtYXJnaW4tdG9wOiBhdXRvOyB9XG5cbi53ZWF0aGVyLW91dGxpbmUtc3RhdHVzIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiAtNHJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLndlYXRoZXItdG9kYXkge1xuICBsaW5lLWhlaWdodDogMTsgfVxuICAud2VhdGhlci10b2RheSBzcGFuIHtcbiAgICBmb250LXNpemU6IDE4cHg7IH1cbiAgLndlYXRoZXItdG9kYXkgdGltZSB7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIGZvbnQtZmFtaWx5OiBcIk9wZW4tU2Fuc1wiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpOyB9XG5cbi53ZWF0aGVyLXRlbXBlcmF0dXJlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAxMDBweDtcbiAgbWFyZ2luLWxlZnQ6IDNyZW07XG4gIGRpcmVjdGlvbjogbHRyO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgLyogU21hbGwgb25seSAqL1xuICAvKiBuZXRib29rIG9ubHkgKi8gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge1xuICAgIC53ZWF0aGVyLXRlbXBlcmF0dXJlIHtcbiAgICAgIGZvbnQtc2l6ZTogODBweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLndlYXRoZXItdGVtcGVyYXR1cmUge1xuICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgICBmb250LXNpemU6IDgwcHg7IH0gfVxuICAud2VhdGhlci10ZW1wZXJhdHVyZTpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogM3JlbTtcbiAgICByaWdodDogLTJyZW07XG4gICAgd2lkdGg6IDI1cHg7XG4gICAgaGVpZ2h0OiAyNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBib3JkZXI6IDVweCBzb2xpZCAjZmZmZmZmO1xuICAgIC8qIFNtYWxsIG9ubHkgKi9cbiAgICAvKiBuZXRib29rIG9ubHkgKi8gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgICAud2VhdGhlci10ZW1wZXJhdHVyZTpiZWZvcmUge1xuICAgICAgICB0b3A6IDJyZW07XG4gICAgICAgIHJpZ2h0OiAtMS41cmVtO1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC53ZWF0aGVyLXRlbXBlcmF0dXJlOmJlZm9yZSB7XG4gICAgICAgIHRvcDogMnJlbTtcbiAgICAgICAgcmlnaHQ6IC0xLjVyZW07XG4gICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICBoZWlnaHQ6IDE4cHg7IH0gfVxuXG4uZGF5cGFydCB7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VmZWZlZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDAgMC4ycmVtIDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5kYXlwYXJ0LmFjdGl2ZSwgLmRheXBhcnQ6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogI2U0ZjBlZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzZlMmRmOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmRheXBhcnQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbi5kYXlwYXJ0LWRheSB7XG4gIGNvbG9yOiAjMmM4YTgyO1xuICBmb250LXNpemU6IDE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW07IH1cblxuLmRheXBhcnQtZGF0ZSB7XG4gIGNvbG9yOiAjYmNiY2JjO1xuICBmb250LXNpemU6IDExcHg7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4tU2Fuc1wiOyB9XG5cbi53ZWF0aGVyLWluZm8taXRlbSB7XG4gIG1hcmdpbjogMC41cmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC1mYW1pbHk6IFwiT3Blbi1TYW5zXCI7IH1cbiAgLndlYXRoZXItaW5mby1pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDFkNWQ1OyB9XG5cbi53ZWF0aGVyLWljb24ge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cblxuLyogLS0tLS0gV0VBVEhFUiBXSURHRVQgLS0tLS0tIEVORCAtLS0tLS0gKi9cbi8qIC0tLS0tIFBPRENBU1QgQkxPQ0stLS0tLS0gU1RBUlQgLS0tLS0tICovXG4uc2lkZWJhci13cmFwIC5wb2RjYXN0LWxpc3QgcCB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjsgfVxuXG4ucG9kY2FzdC1saXN0IC5kYXRlLWZpZWxkLFxuLnBvZGNhc3QtbGlzdCAucG9kY2FzdC10aW1lIHtcbiAgZm9udC1mYW1pbHk6IFwiT3Blbi1TYW5zXCI7XG4gIGNvbG9yOiAjMmM4YTgyOyB9XG4gIC5wb2RjYXN0LWxpc3QgLmRhdGUtZmllbGQgaSxcbiAgLnBvZGNhc3QtbGlzdCAucG9kY2FzdC10aW1lIGkge1xuICAgIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAucG9kY2FzdC1saXN0IC5kYXRlLWZpZWxkIHRpbWUsXG4gIC5wb2RjYXN0LWxpc3QgLnBvZGNhc3QtdGltZSB0aW1lIHtcbiAgICBmb250LXNpemU6IDAuNjg3NXJlbTsgfVxuICAucG9kY2FzdC1saXN0IC5kYXRlLWZpZWxkIGEsXG4gIC5wb2RjYXN0LWxpc3QgLmRhdGUtZmllbGQgYnV0dG9uLFxuICAucG9kY2FzdC1saXN0IC5wb2RjYXN0LXRpbWUgYSxcbiAgLnBvZGNhc3QtbGlzdCAucG9kY2FzdC10aW1lIGJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG4gICAgLnBvZGNhc3QtbGlzdCAuZGF0ZS1maWVsZCBhOmhvdmVyLFxuICAgIC5wb2RjYXN0LWxpc3QgLmRhdGUtZmllbGQgYnV0dG9uOmhvdmVyLFxuICAgIC5wb2RjYXN0LWxpc3QgLnBvZGNhc3QtdGltZSBhOmhvdmVyLFxuICAgIC5wb2RjYXN0LWxpc3QgLnBvZGNhc3QtdGltZSBidXR0b246aG92ZXIge1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cblxuLnBvZGNhc3QtYmxvY2sge1xuICBwYWRkaW5nOiAxMHB4IDFyZW07IH1cblxuLnBvZGNhc3QtdGltZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnBvZGNhc3QtdGltZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG4gIC5wb2RjYXN0LXRpbWUgaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHBhZGRpbmc6IDAgMTBweCAwIDA7IH1cbiAgICAuYmxvY2stY29udGVudCAucG9kY2FzdC10aW1lIGkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZmFmYTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAubmV3cy10aWNrZXItYXJlYSAucG9kY2FzdC10aW1lIGEsIC5uZXdzLXRpY2tlci1hcmVhXG4gIC5wb2RjYXN0LXRpbWUgYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDExcHg7IH1cbiAgLm5ld3MtdGlja2VyLWFyZWEgLnBvZGNhc3QtdGltZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAubmV3cy10aWNrZXItYXJlYSAucG9kY2FzdC10aW1lIGkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAgIGNvbG9yOiAjMmM4YTgyO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgcGFkZGluZzogOHB4O1xuICAgICAgd2lkdGg6IDI5cHg7XG4gICAgICBoZWlnaHQ6IDI5cHg7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH1cbiAgICAgIC5uZXdzLXRpY2tlci1hcmVhIC5wb2RjYXN0LXRpbWUgaSAuaWNvbi1wbGF5LWdyZWVuOmJlZm9yZSB7XG4gICAgICAgIGNvbG9yOiAjNGQ4YTg4OyB9XG4gICAgLm5ld3MtdGlja2VyLWFyZWEgLnBvZGNhc3QtdGltZSBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7XG4gICAgICBjb2xvcjogIzJjOGE4MjsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLm5ld3MtdGlja2VyLWFyZWEgLnBvZGNhc3QtdGltZSBzcGFuIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogOHB4OyB9IH1cblxuLnBvZGNhc3QtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgcGFkZGluZzogMC44MTI1cmVtOyB9XG4gIC5wb2RjYXN0LWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC44NzVyZW07IH1cbiAgLnBvZGNhc3QtaXRlbSAubWVkaWEtb2JqZWN0IHtcbiAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5wb2RjYXN0LWl0ZW0gLm1lZGlhLW9iamVjdCBwIHtcbiAgICAgIGNvbG9yOiAjNTU1NTU1O1xuICAgICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gICAgLnBvZGNhc3QtaXRlbSAubWVkaWEtb2JqZWN0IGg2IHtcbiAgICAgIGNvbG9yOiAjMjUzYzNhOyB9XG4gIC5wb2RjYXN0LWl0ZW06aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGY3Zjc7IH1cbiAgLnBvZGNhc3QtaXRlbSA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMTtcbiAgICB0b3A6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucG9kY2FzdC1ncmlkIC5wb2RjYXN0LWl0ZW0ge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuLnBvZGNhc3QtaWZyYW1lLWVwaXNvZGVzIHtcbiAgbWFyZ2luOiAxcmVtIGF1dG87IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucG9kY2FzdC1pZnJhbWUtZXBpc29kZXMge1xuICAgICAgd2lkdGg6IDgwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBvZGNhc3QtaWZyYW1lLWVwaXNvZGVzIHtcbiAgICAgIHdpZHRoOiA3MCU7IH0gfVxuXG4ucG9kY2FzdC1sYWJlbCB7XG4gIGNvbG9yOiAjMjUzYzNhO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgLnBvZGNhc3QtbGFiZWwgaSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH1cbiAgLnBvZGNhc3QtbGFiZWwgbG90dGllLXBsYXllciB7XG4gICAgd2lkdGg6IDIycHg7XG4gICAgaGVpZ2h0OiAxOXB4O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTsgfVxuICAub3Bpbmlvbi1hdXRob3JzLWxpc3QgLnBvZGNhc3QtbGFiZWwge1xuICAgIGNvbG9yOiAjMmM4YTgyO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0IDBzOyB9XG4gIC5hdWRpby1wbGF5ZXItdG9wIC5wb2RjYXN0LWxhYmVsOmhvdmVyIHtcbiAgICBjb2xvcjogIzJjOGE4MjsgfVxuXG4ucG9kY2FzdC1ncmlkIC5kYXRlLWZpZWxkIGEge1xuICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuXG4ucG9kY2FzdC1ncmlkIC5wb2RjYXN0LXRpbWUgaSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGZvbnQtc2l6ZTogMXJlbTsgfVxuXG4ucG9kY2FzdC1ncmlkIC5wb2RjYXN0LXRpbWUgdGltZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4tU2Fuc1wiO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAwOyB9XG5cbi5wb2RjYXN0LXNjcmVlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2Y0ZjM7XG4gIHBhZGRpbmc6IDFyZW0gMDtcbiAgbWFyZ2luLWJvdHRvbTogLTFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucG9kY2FzdC1zY3JlZW4ge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBvZGNhc3Qtc2NyZWVuIHtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0yLjVyZW07IH0gfVxuXG4ucG9kY2FzdC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5wb2RjYXN0LXRpdGxlIHtcbiAgICAgIG1hcmdpbi10b3A6IDJyZW07IH1cbiAgICAgIC5wb2RjYXN0LXRpdGxlIGg0IHtcbiAgICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wb2RjYXN0LXRpdGxlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMXJlbTsgfSB9XG5cbi5wb2RjYXN0LWVwaXNvZGUtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5wb2RjYXN0LWVwaXNvZGUtdGl0bGUgaDIge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wb2RjYXN0LWVwaXNvZGUtdGl0bGUgaDIge1xuICAgICAgICBmb250LXNpemU6IDIuMDYyNXJlbTsgfSB9XG5cbi5wb2RjYXN0LXNwZWFrZXIge1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBjb2xvcjogIzJjOGE4MjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wb2RjYXN0LXNwZWFrZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfSB9XG4gIC5wb2RjYXN0LXNwZWFrZXIgYSB7XG4gICAgY29sb3I6ICMyYzhhODI7IH1cbiAgICAucG9kY2FzdC1zcGVha2VyIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cblxuLnBvZGNhc3QtZXBpc29kZS1tZXRhIHtcbiAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLnBvZGNhc3QtZXBpc29kZS1tZXRhIC5wb2RjYXN0LWxlbmd0aCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjOTI5ODk4OyB9XG5cbi5wb2RjYXN0LWVwaXNvZGUtY29udGVudCB7XG4gIHBhZGRpbmc6IDAgMS41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnBvZGNhc3QtZXBpc29kZS1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDAgNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBvZGNhc3QtZXBpc29kZS1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDAgMTNyZW07IH0gfVxuICAucG9kY2FzdC1lcGlzb2RlLWNvbnRlbnQgcCB7XG4gICAgY29sb3I6ICM0ZDRkNGQ7IH1cblxuLnBvZGNhc3QtZXBpc29kZS1pdGVtIC5ncmlkLXgge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbi5wb2RjYXN0LWVwaXNvZGUtaXRlbSAucG9kY2FzdC1pbWcge1xuICB3aWR0aDogMTQxcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucG9kY2FzdC1lcGlzb2RlLWl0ZW0gLnBvZGNhc3QtaW1nIHtcbiAgICAgIHdpZHRoOiAyMzVweDsgfSB9XG5cbi5wb2RjYXN0LWVwaXNvZGUtaXRlbSAucG9kY2FzdC10aXRsZSBoNCB7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLnBvZGNhc3QtYnRuIHtcbiAgbWFyZ2luOiAycmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLnBvZGNhc3QtZXBpc29kZS1pdGVtIC5wb2RjYXN0LWJ0biB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDsgfVxuXG4ucGxheS1wb2RjYXN0LWJ0biB7XG4gIGJhY2tncm91bmQ6ICMwMDAwMDA7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIHBhZGRpbmc6IDAuNXJlbSAycmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgd2lkdGg6IDE4MHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLnBsYXktcG9kY2FzdC1idG4gaSB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAucGxheS1wb2RjYXN0LWJ0bjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5hdWRpby1wbGF5ZXItdG9wLFxuLnBsYXktcG9kY2FzdC1idG4ge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLmF1ZGlvLXBsYXllci10b3AucGxheWluZyAuaWNvbi1wbGF5LWdyZWVuLFxuICAucGxheS1wb2RjYXN0LWJ0bi5wbGF5aW5nIC5pY29uLXBsYXktZ3JlZW4ge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAgIC5hdWRpby1wbGF5ZXItdG9wLnBsYXlpbmcgLmljb24tcGxheS1ncmVlbjpiZWZvcmUsXG4gICAgLnBsYXktcG9kY2FzdC1idG4ucGxheWluZyAuaWNvbi1wbGF5LWdyZWVuOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcZTkyM1wiOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5wb2RjYXN0LXNvY2lhbHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuXG4ucG9kY2FzdC1zb2NpYWxzIGEge1xuICBtYXJnaW46IDFyZW0gMS41cmVtIDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wb2RjYXN0LXNvY2lhbHMgYS5nb29nbGUtcG9kY2FzdC1idG4gaW1nIHtcbiAgICB3aWR0aDogMTIwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBvZGNhc3Qtc29jaWFscyBhLmFwcGxlLXBvZGNhc3QtYnRuIGltZyB7XG4gICAgd2lkdGg6IDExMnB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAucG9kY2FzdC1zb2NpYWxzIGEgaW1nIHtcbiAgICAgIHdpZHRoOiAyNHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBvZGNhc3Qtc29jaWFscyBhIGltZyB7XG4gICAgICB3aWR0aDogMTAwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wb2RjYXN0LXNvY2lhbHMgYSB7XG4gICAgICBtYXJnaW46IDFyZW0gMXJlbSAwOyB9IH1cblxuLnBvZGNhc3Qtc29jaWFscy10aXRsZSB7XG4gIGZsZXgtZ3JvdzogMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4ucG9kY2FzdC1iYW5uZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMzUwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNmIxOGM7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLnBvZGNhc3QtYmFubmVyIHtcbiAgICAgIGhlaWdodDogMTAwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnBvZGNhc3QtYmFubmVyIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICB0ZXh0LWFsaWduOiBpbml0aWFsOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucG9kY2FzdC1iYW5uZXIge1xuICAgICAgaGVpZ2h0OiAyMTBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH0gfVxuXG4ucG9kY2FzdC1iYW5uZXIgLnBvZGNhc3QtaW1nIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGluaXRpYWw7XG4gIGJvdHRvbTogLTVyZW07XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnBvZGNhc3QtYmFubmVyIC5wb2RjYXN0LWltZyB7XG4gICAgICB0b3A6IC02cmVtO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogNDUwcHg7IH0gfVxuXG4ucG9kY2FzdC1jb250ZW50IHtcbiAgcGFkZGluZzogMS41cmVtO1xuICB6LWluZGV4OiAxO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucG9kY2FzdC1jb250ZW50IHtcbiAgICAgIHdpZHRoOiA1MCU7IH0gfVxuICAucG9kY2FzdC1jb250ZW50IGgzIHtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAucG9kY2FzdC1jb250ZW50IHAge1xuICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtOyB9XG5cbi5yZXR1cm4tYnRuIHtcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIGZvbnQtc2l6ZTogMTRweDsgfVxuICAucmV0dXJuLWJ0biBhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLnJldHVybi1idG4gaSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuXG4ubW9yZS1idG4ge1xuICBtYXJnaW46IDJyZW07IH1cbiAgLm1vcmUtYnRuIC5idXR0b24ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAycmVtOyB9XG5cbi5wYWdlLWJ0bnMge1xuICB6LWluZGV4OiAxO1xuICBtYXJnaW46IDAgYXV0bzsgfVxuICAucGFnZS1idG5zIC5lbnRyeS1zaGFyZS1yb3cuZW50cnktYm9va21hcmsge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAucGFnZS1idG5zLmZsZXgtY29udGFpbmVyIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAucGFnZS1idG5zLmZsZXgtY29udGFpbmVyIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG5cbi5vcGluaW9uLWF1dGhvcnMtbGlzdC5oYXMtc2VwYXJhdG9yID4gZGl2IC5hcnRpY2xlLWl0ZW0ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2QxZDVkNTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm9waW5pb24tYXV0aG9ycy1saXN0IC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuLm9waW5pb24tYXV0aG9ycy1saXN0IH4gLm9waW5pb24tYXV0aG9ycy1saXN0Omxhc3QtY2hpbGQuaGFzLXNlcGFyYXRvciA+IGRpdjpsYXN0LWNoaWxkIC5hcnRpY2xlLWl0ZW0ge1xuICBib3JkZXItYm90dG9tOiB0cmFuc3BhcmVudDsgfVxuXG4ucGxheS1wb2RjYXN0LWJ0biB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnBsYXktcG9kY2FzdC1idG4gLmxibC1wbGF5aW5nIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5wbGF5LXBvZGNhc3QtYnRuLnBsYXlpbmcgLmxibC1wYXVzZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnBsYXktcG9kY2FzdC1idG4ucGxheWluZyAubGJsLXBsYXlpbmcge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4ucG9kY2FzdC1zaW5nbGUtYmxvY2sge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNmIxOGM7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBwYWRkaW5nOiAzcmVtIDJyZW0gMDsgfVxuICAucG9kY2FzdC1zaW5nbGUtYmxvY2sgLnBvZGNhc3QtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS42ODc1cmVtO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgZm9udC1zaXplOiBib2xkOyB9XG4gIC5wb2RjYXN0LXNpbmdsZS1ibG9jayBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5wb2RjYXN0LXNpbmdsZS1ibG9jayAucG9kY2FzdC1pbWcge1xuICAgIHdpZHRoOiAxNjZweDtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuXG4vKiAtLS0tLSBQT0RDQVNUIEJMT0NLLS0tLS0tIEVORCAtLS0tLS0gKi9cbi8qIC0tLS0tIENBUklDQVRVUkUgQkxPQ0sgLS0tLS0tIFNUQVJUIC0tLS0tLSAqL1xuLmNhcmljYXR1cmUtc2xpZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5jYXJpY2F0dXJlLXNsaWRlciB7XG4gICAgICBmbGV4LWZsb3c6IG5vd3JhcDtcbiAgICAgIG92ZXJmbG93LXg6IHNjcm9sbCAhaW1wb3J0YW50O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHNjcm9sbC1zbmFwLXR5cGU6IHggbWFuZGF0b3J5O1xuICAgICAgbWFyZ2luOiAwIC0xcmVtO1xuICAgICAgZ2FwOiAyMHB4O1xuICAgICAgcGFkZGluZzogMCAxcmVtO1xuICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyB9XG4gICAgICAuY2FyaWNhdHVyZS1zbGlkZXI6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLmNhcmljYXR1cmUtc2xpZGVyID4gLmNhcmljYXR1cmUtc2xpZGUge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCkgIWltcG9ydGFudDtcbiAgICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7IH0gfVxuXG4uY2FyaWNhdHVyZS1zbGlkZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLyogLS0tLS0gQ0FSSUNBVFVSRSBCTE9DSyAtLS0tLS0gRU5EIC0tLS0tLSAqL1xuLyogLS0tLS0gTkVXU1RJQ0tFUiBXSURHRVQgLS0tLS0tIFNUQVJUIC0tLS0tLSAqL1xuLnNtYXJ0aWNrZXIuYWxlcnQgLnNtYXJ0aWNrZXItY2F0ZWdvcnkgYSB7XG4gIGNvbG9yOiAjYmQzYzJmOyB9XG5cbi5zbWFydGlja2VyLmFsZXJ0IC5zbWFydGlja2VyLWNhdHM6YmVmb3JlIHtcbiAgY29sb3I6ICNiZDNjMmY7IH1cblxuLnNtYXJ0aWNrZXIgLnNtYXJ0aWNrZXItY2F0ZWdvcnkgaW1nIHtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cblxuLnNtYXJ0aWNrZXIgLnNtYXJ0aWNrZXItY2F0ZWdvcnkgbGk6bm90KC5hY3RpdmUtYWcpIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubmV3c3RpY2tlci1hcmVhLS12MiAuYWNtZS1uZXdzLXRpY2tlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIGhlaWdodDogMzBweDsgfVxuXG4ubmV3c3RpY2tlci1hcmVhLS12MiAuYWNtZS1uZXdzLXRpY2tlci1ib3gge1xuICBwYWRkaW5nLXRvcDogMDsgfVxuICAubmV3c3RpY2tlci1hcmVhLS12MiAuYWNtZS1uZXdzLXRpY2tlci1ib3ggdWwge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjk7IH1cbiAgICAubmV3c3RpY2tlci1hcmVhLS12MiAuYWNtZS1uZXdzLXRpY2tlci1ib3ggdWwgbGkge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG4ubmV3c3RpY2tlci1hcmVhLS12MiAuYWNtZS1uZXdzLXRpY2tlci1sYWJlbCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogI2JkM2MyZjtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMTBweDsgfVxuICAubmV3c3RpY2tlci1hcmVhLS12MiAuYWNtZS1uZXdzLXRpY2tlci1sYWJlbDphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJ8XCI7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGNvbG9yOiAjY2UzMjMyO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5uZXdzLXRpY2tlci1hcmVhIHtcbiAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTlmMmVmOyB9XG5cbi8qIC0tLS0tIE5FV1NUSUNLRVIgV0lER0VUIC0tLS0tLSBFTkQgLS0tLS0tICovXG4vKiAtLS0tLS0tIE1PU1QgUEFHRVMgIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cbi5ib3R0b21GaXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogOTsgfVxuXG4uYm9va21hcmstY2hlY2sge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuYm9va21hcmstY2hlY2sgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAucGFnZS1idG5zIC5ib29rbWFyay1jaGVjayBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5ib29rbWFyay1jaGVjayBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCB+IGkge1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAgIC5ib29rbWFyay1jaGVjayBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCB+IGk6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCLupL1cIjsgfVxuICAuYm9va21hcmstY2hlY2sgaSB7XG4gICAgY29sb3I6ICMyYzhhODI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjdmNjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgaGVpZ2h0OiAzOHB4O1xuICAgIHdpZHRoOiAzOHB4O1xuICAgIHBhZGRpbmc6IDEycHggMTBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuICAgIC50LWgtY29udGVudCAuYm9va21hcmstY2hlY2sgaSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgICAgLnQtaC1jb250ZW50IC5ib29rbWFyay1jaGVjayBpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAucG9kY2FzdC1zY3JlZW4gLmJvb2ttYXJrLWNoZWNrIGkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5ib29rbWFyay1jaGVjayBpOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkOWVkZWI7IH1cblxuLmZvbGxvdy10YWcge1xuICBkaXNwbGF5OiBibG9jazsgfVxuICAuZm9sbG93LXRhZyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIG1hcmdpbjogMDsgfVxuICAgIC5mb2xsb3ctdGFnIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIH4gLmZvbGxvdy1jaGVjayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmM4YTgyO1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAgIC5mb2xsb3ctdGFnIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIH4gLmZvbGxvdy1jaGVjayBpOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwi7qS8XCI7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5mb2xsb3ctdGFnIC5mb2xsb3ctY2hlY2sge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgICBjb2xvcjogIzJjOGE4MjtcbiAgICBwYWRkaW5nOiA3cHggMTNweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAuZm9sbG93LXRhZyAuZm9sbG93LWNoZWNrIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH0gfVxuICAgIC5mb2xsb3ctdGFnIC5mb2xsb3ctY2hlY2sgaSB7XG4gICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDNweDsgfVxuXG4udC1oIHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4udGh1bWIge1xuICB3aWR0aDogNzVweDtcbiAgaGVpZ2h0OiA3NXB4OyB9XG4gIC50aHVtYiBpbWcge1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5vcC1zbGlkZXIgLm9wLXNsaWRlci1pdGVtIC5wb2RjYXN0LWl0ZW0ge1xuICBtYXJnaW4tcmlnaHQ6IDEuMjgxMjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAxLjI4MTI1cmVtOyB9XG5cbi5vcC1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICBtYXJnaW4tcmlnaHQ6IC0xLjI4MTI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTEuMjgxMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtOyB9XG5cbi5vcC1zbGlkZXIgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOWUyZTA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnNwb3RsaWdodC1jYXJvdXNlbCAuYXJ0aWNsZS1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuLnNwb3RsaWdodC1jYXJvdXNlbCxcbi52aWRlby1jYXJvdXNlbCB7XG4gIC8qIE1vYmlsZSBMYW5kc2NhcGUgKi9cbiAgLyogTW9iaWxlIFBvcnRyYXRlICovXG4gIC8qIE1vYmlsZSBQb3J0cmF0ZSAtIExhbmRzY2FwZSAqLyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDMyMHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDg5NnB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMikgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLnNwb3RsaWdodC1jYXJvdXNlbCA+IC5jZWxsLFxuICAgIC52aWRlby1jYXJvdXNlbCA+IC5jZWxsIHtcbiAgICAgIHdpZHRoOiBjYWxjKDcwJSAtIDQwcHgpICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA4OTZweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLnNwb3RsaWdodC1jYXJvdXNlbCA+IC5jZWxsLFxuICAgIC52aWRlby1jYXJvdXNlbCA+IC5jZWxsIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KSAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aDogMzIwcHgpIGFuZCAobWF4LWRldmljZS13aWR0aDogODk2cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSB7XG4gICAgLnNwb3RsaWdodC1jYXJvdXNlbCxcbiAgICAudmlkZW8tY2Fyb3VzZWwge1xuICAgICAgZmxleC1mbG93OiBub3dyYXA7XG4gICAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgICBzY3JvbGwtc25hcC10eXBlOiB4IG1hbmRhdG9yeTtcbiAgICAgIG1hcmdpbi1yaWdodDogLTFyZW0gIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAwLjQ3NXJlbTtcbiAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTsgfVxuICAgICAgLnNwb3RsaWdodC1jYXJvdXNlbDo6LXdlYmtpdC1zY3JvbGxiYXIsXG4gICAgICAudmlkZW8tY2Fyb3VzZWw6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLnNwb3RsaWdodC1jYXJvdXNlbCA+IC5jZWxsLFxuICAgICAgLnZpZGVvLWNhcm91c2VsID4gLmNlbGwge1xuICAgICAgICBzY3JvbGwtc25hcC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgICAgIC5zcG90bGlnaHQtY2Fyb3VzZWwuZ3V0dGVycy0xeCA+IC5jZWxsLFxuICAgICAgLnZpZGVvLWNhcm91c2VsLmd1dHRlcnMtMXggPiAuY2VsbCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zcG90bGlnaHQtY2Fyb3VzZWwge1xuICAgIHJvdy1nYXA6IDMwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAub2JqZWN0cy1saXN0LnZpZGVvLWNhcm91c2VsIHtcbiAgICBmbGV4LWZsb3c6IG5vd3JhcDtcbiAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgMC40NzVyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyB9XG4gICAgLm9iamVjdHMtbGlzdC52aWRlby1jYXJvdXNlbDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vYmplY3RzLWxpc3QudmlkZW8tY2Fyb3VzZWwgPiAub2JqZWN0LWl0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpICFpbXBvcnRhbnQ7XG4gICAgICBzY3JvbGwtc25hcC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgIGZsZXg6IDAgMCBhdXRvOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmxpc3Qtc2Nyb2xsIHtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gICAgLyogSW50ZXJuZXQgRXhwbG9yZXIgMTArICovXG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAgIC8qIEZpcmVmb3ggKi9cbiAgICBmbGV4LWZsb3c6IG5vd3JhcDtcbiAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgMC40NzVyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLmxpc3Qtc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgLyogU2FmYXJpIGFuZCBDaHJvbWUgKi8gfVxuICAgIC5saXN0LXNjcm9sbCAuc2VlLW1vcmUtbGluayB7XG4gICAgICBmbGV4LXNocmluazogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5zcG90bGlnaHQtY2Fyb3VzZWwgLnNsaWNrLWxpc3QsXG4gIC5zbS1jYXJvdXNlbCAuc2xpY2stbGlzdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwcHggIWltcG9ydGFudDsgfVxuICAuc3BvdGxpZ2h0LWNhcm91c2VsIC5zbGljay1zbGlkZSxcbiAgLnNtLWNhcm91c2VsIC5zbGljay1zbGlkZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9XG4gIC5zcG90bGlnaHQtY2Fyb3VzZWwgLm93bC1zdGFnZS1vdXRlcixcbiAgLnNtLWNhcm91c2VsIC5vd2wtc3RhZ2Utb3V0ZXIge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmZsZXgtZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDI3JSAzMy4zMyU7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImEgYiBiXCIgXCJjIGIgYlwiIFwiYyBiIGJcIjsgfVxuICAgIC5mbGV4LWdyaWQgLmMxIHtcbiAgICAgIGdyaWQtYXJlYTogYTsgfVxuICAgIC5mbGV4LWdyaWQgLmMyIHtcbiAgICAgIGdyaWQtYXJlYTogYjsgfVxuICAgIC5mbGV4LWdyaWQgLmMzIHtcbiAgICAgIGdyaWQtYXJlYTogYzsgfSB9XG5cbi5hdXRob3ItaXRlbS10aXRsZSB7XG4gIGNvbG9yOiAjMmM4YTgyOyB9XG5cbi5hdXRob3ItaXRlbSAubWVkaWEtb2JqZWN0OmhvdmVyIGltZyB7XG4gIGZpbHRlcjogZ3JheXNjYWxlKDApOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5maXhlZC15IHtcbiAgICBoZWlnaHQ6IDgwdmg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC52ZXJ0aWNhbC1zY3JvbGwge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgaGVpZ2h0OiA4MHZoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgICAvKiBJRSBhbmQgRWRnZSAqL1xuICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTtcbiAgICAvKiBGaXJlZm94ICovIH1cbiAgICAudmVydGljYWwtc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmNhdGVnb3J5LW1lbnUge1xuICBwYWRkaW5nOiAxcmVtIDA7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB3aWR0aDogMTAwJTsgfVxuICAuY2F0ZWdvcnktbWVudS5maXhlZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiA5O1xuICAgIGJhY2tncm91bmQ6ICNlOWYyZWY7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuLmNhdGVnb3J5LW1lbnUtYWRkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH1cblxuLmNhdGVnb3J5LW1lbnUtdGFncyB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5jYXRlZ29yeS10YWdzIHtcbiAgcGFkZGluZzogMXJlbSAwO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmNhdGVnb3J5LXRhZ3MgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH1cbiAgICAuY2F0ZWdvcnktdGFncyBsaS5hY3RpdmUgYSwgLmNhdGVnb3J5LXRhZ3MgbGkuaXMtYWN0aXZlIGEge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMDAwMDAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmNhdGVnb3J5LXRhZ3MgbGkuYWN0aXZlIGJ1dHRvbiwgLmNhdGVnb3J5LXRhZ3MgbGkuaXMtYWN0aXZlIGJ1dHRvbiB7XG4gICAgICBib3JkZXItY29sb3I6ICMwMDAwMDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmNhdGVnb3J5LXRhZ3MgYnV0dG9uOm5vdCguYXV0aG9yLXRhZyksXG4gIC5jYXRlZ29yeS10YWdzIGE6bm90KC5hdXRob3ItdGFnKSB7XG4gICAgZm9udC1mYW1pbHk6IFwiT3Blbi1TYW5zXCI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2M3ZDhkNjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgIGNvbG9yOiAjNjQ3ZTdjO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAuY2F0ZWdvcnktdGFncyBidXR0b246bm90KC5hdXRob3ItdGFnKTpob3ZlciwgLmNhdGVnb3J5LXRhZ3MgYnV0dG9uOm5vdCguYXV0aG9yLXRhZykuYWN0aXZlLFxuICAgIC5jYXRlZ29yeS10YWdzIGE6bm90KC5hdXRob3ItdGFnKTpob3ZlcixcbiAgICAuY2F0ZWdvcnktdGFncyBhOm5vdCguYXV0aG9yLXRhZykuYWN0aXZlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzAwMDAwMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuY2F0ZWdvcnktbWVudSAuY2F0ZWdvcnktdGFncyB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5hdXRob3ItdGFncyB7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5hdXRob3ItdGFncyAub3dsLXN0YWdlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmF1dGhvci10YWdzIGJ1dHRvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5hdXRob3ItdGFncyBsaTpub3QoLmFsbC10YWcpLmlzLWFjdGl2ZSBhLCAuYXV0aG9yLXRhZ3MgbGk6bm90KC5hbGwtdGFnKTpob3ZlciBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogIzJjOGE4MjsgfVxuICAuYXV0aG9yLXRhZ3MgbGk6bm90KC5hbGwtdGFnKS5pcy1hY3RpdmUgYnV0dG9uLCAuYXV0aG9yLXRhZ3MgbGk6bm90KC5hbGwtdGFnKTpob3ZlciBidXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjMmM4YTgyO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5jYXRfanMub3dsLWNhcm91c2VsIGEge1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLmNhdF9qcy5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGhlaWdodDogMzBweDtcbiAgd2lkdGg6IDI3cHg7XG4gIGZvbnQtc2l6ZTogMjVweCAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBjb2xvcjogIzY0N2U3YzsgfVxuICAuY2F0X2pzLm93bC1jYXJvdXNlbCAub3dsLW5hdiBidXR0b246aG92ZXIge1xuICAgIGNvbG9yOiAjMmM4YTgyOyB9XG4gIC5jYXRfanMub3dsLWNhcm91c2VsIC5vd2wtbmF2IGJ1dHRvbi5kaXNhYmxlZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4uY2F0X2pzLm93bC1jYXJvdXNlbCAub3dsLW5hdiBidXR0b24ub3dsLXByZXYge1xuICBsZWZ0OiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgYmFja2dyb3VuZDogI2U5ZjJlZjtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDI0MiwgMjQ4LCAyNDYsIDApIDAlLCByZ2JhKDI0MiwgMjQ4LCAyNDYsIDAuODUpIDQ1JSwgI2U5ZjJlZiAxMDAlKTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj1cIiNmMmY4ZjZcIixlbmRDb2xvcnN0cj1cIiNmMmY4ZjZcIixHcmFkaWVudFR5cGU9MSk7IH1cblxuLmNhdF9qcy5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgYnV0dG9uLm93bC1uZXh0IHtcbiAgcmlnaHQ6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBiYWNrZ3JvdW5kOiAjZTlmMmVmO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKDI0MiwgMjQ4LCAyNDYsIDApIDAlLCByZ2JhKDI0MiwgMjQ4LCAyNDYsIDAuODUpIDQ1JSwgI2U5ZjJlZiAxMDAlKTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj1cIiNmMmY4ZjZcIixlbmRDb2xvcnN0cj1cIiNmMmY4ZjZcIixHcmFkaWVudFR5cGU9MSk7IH1cblxuLmF1dGhvci10YWcge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLXJpZ2h0OiAzNXB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmF1dGhvci10YWcge1xuICAgICAgcGFkZGluZy1yaWdodDogMzBweDsgfSB9XG4gIC5hdXRob3ItdGFnIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gIC5hdXRob3ItdGFnIGltZyB7XG4gICAgd2lkdGg6IDMzcHg7XG4gICAgaGVpZ2h0OiAzM3B4O1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDsgfVxuICAgIC5vd2wtY2Fyb3VzZWwgLmF1dGhvci10YWcgaW1nIHtcbiAgICAgIHdpZHRoOiAzM3B4O1xuICAgICAgaGVpZ2h0OiAzM3B4OyB9XG5cbi5jLXRhYnMge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q1ZGNkYztcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWYyZWY7XG4gIHotaW5kZXg6IDI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYy10YWJzIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfSB9XG4gIC5jLXRhYnMgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiA0MHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jLXRhYnMgbGkge1xuICAgICAgICB3aWR0aDogMzMuMzMlOyB9XG4gICAgICAgIC5jLXRhYnMgbGk6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgICAgLmMtdGFicyBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDsgfSB9XG4gIC5jLXRhYnMgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDEwcHggMCA2cHg7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiAjOTY5Njk2O1xuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuXG4uYy10YWJzX2pzIGEuaXMtYWN0aXZlIHtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjMmM4YTgyOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5jLXRhYi1jb250ZW50X2pzIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC50YWItYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbmhyIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2QxZDVkNTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGhyIHtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1jb2x1bW4tMiBocixcbiAgICAuYmxvY2std3JhcHBlciBociB7XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfSB9XG5cbi50YWJzLWNvbnRlbnQge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAudGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5udW1iZXJzLWNvdW50IHtcbiAgY29sb3I6ICMyYzhhODI7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4udG9wLWZpdmUgLnRhYnMtY29udGVudCBhOmhvdmVyIHtcbiAgY29sb3I6ICMyYzhhODI7IH1cblxuLnRvcC1maXZlIC5udW1iZXJzLWNvdW50IHtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cblxuLyogLS0tLS0tLSBNT1NUIFBBR0VTICAgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0gVklERU8gQkxPQ0sgLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuLmJsb2NrLWNvbnRlbnQgLnRhYnMtcGFuZWwge1xuICBwYWRkaW5nOiAwOyB9XG5cbi5jYXRlZ29yeS1uYW1lIHtcbiAgY29sb3I6ICMyYzhhODI7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiT3Blbi1TYW5zXCI7IH1cbiAgLmJsb2NrLXdyYXBwZXIgLmNhdGVnb3J5LW5hbWUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmNhdGVnb3J5LW5hbWUgYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgICAuY2F0ZWdvcnktbmFtZSBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiByZ2JhKDQ0LCAxMzgsIDEzMCwgMC43Mik7IH1cblxuLnZpZGVvLXNlY3Rpb24gLnRhYnMge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzU1NTU1NTtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC52aWRlby1zZWN0aW9uIC50YWJzIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pIHtcbiAgICAudmlkZW8tc2VjdGlvbiAudGFicyB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTsgfVxuICAgICAgLnZpZGVvLXNlY3Rpb24gLnRhYnMuaGFzLXNlcGFyYXRvciBsaSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pIHtcbiAgICAudmlkZW8tc2VjdGlvbiAudGFicyBsaSB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxcmVtKTtcbiAgICAgIGJvcmRlci1ib3R0b206IHRyYW5zcGFyZW50O1xuICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07IH0gfVxuICAudmlkZW8tc2VjdGlvbiAudGFicyBsaTpsYXN0LWNoaWxkIC5tZWRpYS1vYmplY3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtYXgtd2lkdGg6IDEzNjhweCkge1xuICAgIC52aWRlby1zZWN0aW9uIC50YWJzIGxpOmZpcnN0LWNoaWxkLCAudmlkZW8tc2VjdGlvbiAudGFicyBsaTpudGgtY2hpbGQoMykge1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZDFkNWQ1OyB9IH1cbiAgLnZpZGVvLXNlY3Rpb24gLnRhYnMgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAgICAgLnZpZGVvLXNlY3Rpb24gLnRhYnMgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pIHtcbiAgLnZpZGVvLXNlY3Rpb24udmVydGljYWwtc2VwYXJhdG9yID4gZGl2Om5vdCg6bGFzdC1jaGlsZCk6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9IH1cblxuLnZpZGVvLXNlY3Rpb24gLnRhYnMtdGl0bGUsXG4udmlkZW8tc2VjdGlvbiAudGFicy12aWRlby1pdGVtIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgcGFkZGluZzogMDsgfVxuICAudmlkZW8tc2VjdGlvbiAudGFicy10aXRsZSA+IGEsXG4gIC52aWRlby1zZWN0aW9uIC50YWJzLXZpZGVvLWl0ZW0gPiBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLnZpZGVvLXNlY3Rpb24gLnRhYnMtdGl0bGUgPiBhOmZvY3VzLCAudmlkZW8tc2VjdGlvbiAudGFicy10aXRsZSA+IGFbYXJpYS1zZWxlY3RlZD1cInRydWVcIl0sIC52aWRlby1zZWN0aW9uIC50YWJzLXRpdGxlID4gYTpob3ZlcixcbiAgICAudmlkZW8tc2VjdGlvbiAudGFicy12aWRlby1pdGVtID4gYTpmb2N1cyxcbiAgICAudmlkZW8tc2VjdGlvbiAudGFicy12aWRlby1pdGVtID4gYVthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSxcbiAgICAudmlkZW8tc2VjdGlvbiAudGFicy12aWRlby1pdGVtID4gYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiBpbmhlcml0OyB9XG4gIC52aWRlby1zZWN0aW9uIC50YWJzLXRpdGxlLmlzLWFjdGl2ZSBhLCAudmlkZW8tc2VjdGlvbiAudGFicy10aXRsZTpob3ZlciBhLFxuICAudmlkZW8tc2VjdGlvbiAudGFicy12aWRlby1pdGVtLmlzLWFjdGl2ZSBhLFxuICAudmlkZW8tc2VjdGlvbiAudGFicy12aWRlby1pdGVtOmhvdmVyIGEge1xuICAgIGNvbG9yOiAjMmM4YTgyOyB9XG4gIC52aWRlby1zZWN0aW9uIC50YWJzLXRpdGxlIC5tZWRpYS1vYmplY3QsXG4gIC52aWRlby1zZWN0aW9uIC50YWJzLXZpZGVvLWl0ZW0gLm1lZGlhLW9iamVjdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAudmlkZW8tc2VjdGlvbiAudGFicy10aXRsZSAubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQsXG4gIC52aWRlby1zZWN0aW9uIC50YWJzLXZpZGVvLWl0ZW0gLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC52aWRlby1zZWN0aW9uIC50YWJzLXRpdGxlIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCxcbiAgICAgIC52aWRlby1zZWN0aW9uIC50YWJzLXZpZGVvLWl0ZW0gLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBmbGV4LXdyYXA6IGluaXRpYWw7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgICAgICAudmlkZW8tc2VjdGlvbiAudGFicy10aXRsZSAubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQgLnZpZGVvLWl0ZW0tZGF0YSxcbiAgICAgICAgLnZpZGVvLXNlY3Rpb24gLnRhYnMtdGl0bGUgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIGgzLFxuICAgICAgICAudmlkZW8tc2VjdGlvbiAudGFicy12aWRlby1pdGVtIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCAudmlkZW8taXRlbS1kYXRhLFxuICAgICAgICAudmlkZW8tc2VjdGlvbiAudGFicy12aWRlby1pdGVtIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCBoMyB7XG4gICAgICAgICAgZmxleDogMTsgfVxuICAgICAgICAudmlkZW8tc2VjdGlvbiAudGFicy10aXRsZSAubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQgLnZpZGVvLWl0ZW0tc2hhcmUsXG4gICAgICAgIC52aWRlby1zZWN0aW9uIC50YWJzLXZpZGVvLWl0ZW0gLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIC52aWRlby1pdGVtLXNoYXJlIHtcbiAgICAgICAgICBmbGV4LXNocmluazogMTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAudmlkZW8tc2VjdGlvbiAudGFicy12aWRlby1pdGVtIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9IH1cblxuLnZpZGVvLXNlY3Rpb24gLnRhYnMtdmlkZW8taXRlbSAubWVkaWEtb2JqZWN0LWltZyB7XG4gIHdpZHRoOiA2NS41NHB4O1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudmlkZW8tc2VjdGlvbiAudGFicy12aWRlby1pdGVtIC5tZWRpYS1vYmplY3QtaW1nIHtcbiAgICAgIHdpZHRoOiAxNDRweDsgfSB9XG5cbi52aWRlby1zZWN0aW9uIC50YWJzLXZpZGVvLWl0ZW0gLm1lZGlhLW9iamVjdCBpbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGFzcGVjdC1yYXRpbzogMy8yO1xuICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAudmlkZW8tc2VjdGlvbiAudGFicy12aWRlby1pdGVtIC5tZWRpYS1vYmplY3Qge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9IH1cblxuLnZpZGVvLXNlY3Rpb24gLnRhYnMtdmlkZW8taXRlbSBoMyB7XG4gIGZvbnQtc2l6ZTogMTZweDsgfVxuXG4udmlkZW8tc2VjdGlvbiAudmlkZW8taXRlbS1zaGFyZSB7XG4gIGNvbG9yOiAjMmM4YTgyO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4tU2Fuc1wiOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnZpZGVvLXNlY3Rpb24gLnZpZGVvLWl0ZW0tc2hhcmUge1xuICAgICAgbWFyZ2luLXRvcDogYXV0bzsgfSB9XG4gIC52aWRlby1zZWN0aW9uIC52aWRlby1pdGVtLXNoYXJlIGkge1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAudmlkZW8tc2VjdGlvbiAudmlkZW8taXRlbS1zaGFyZTpob3ZlciB7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnZpZGVvLXRhYnMtY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfSB9XG5cbi52aWRlby10YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwge1xuICBwYWRkaW5nOiAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC52aWRlby10YWJzLWNvbnRlbnQgLmFydGljbGUtaXRlbS12aWRlbyAuanctZmxhZy1mbG9hdGluZyAuanctd3JhcHBlci5qdy1yZXNldCB7XG4gICAgdG9wOiBpbmhlcml0O1xuICAgIGJvdHRvbTogM3JlbTsgfSB9XG5cbi5hcnRpY2xlLXZpZGVvIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAudmlkZW8tY2Fyb3VzZWwge1xuICAgIG1hcmdpbi1yaWdodDogLTMuNXJlbTsgfVxuICAgIC52aWRlby1jYXJvdXNlbCAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDAgMC41cmVtOyB9XG4gICAgLnZpZGVvLWNhcm91c2VsIC5zbGljay1saXN0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMHB4ICFpbXBvcnRhbnQ7IH0gfVxuXG4udmlkZW8tY2Fyb3VzZWwgLnZpZGVvLWl0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5zaG93LW92ZXJib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnNob3ctb3ZlcmJveCAub3ZlcmJveCB7XG4gICAgb3BhY2l0eTogMTsgfVxuXG4ub3ZlcmJveCB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlIDBzO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZDogIzA2MjYyNjtcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDYsIDM4LCAzOCwgMCkgMCUsIHJnYmEoNiwgMzgsIDM4LCAwLjMyNTM2OCkgNDIlLCByZ2JhKDYsIDM4LCAzOCwgMC40OTkwMzcpIDcwJSwgYmxhY2sgMTAwJSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSg2LCAzOCwgMzgsIDApIDAlLCByZ2JhKDYsIDM4LCAzOCwgMC4zMjUzNjgpIDQyJSwgcmdiYSg2LCAzOCwgMzgsIDAuNDk5MDM3KSA3MCUsIGJsYWNrIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDYsIDM4LCAzOCwgMCkgMCUsIHJnYmEoNiwgMzgsIDM4LCAwLjMyNTM2OCkgNDIlLCByZ2JhKDYsIDM4LCAzOCwgMC40OTkwMzcpIDcwJSwgYmxhY2sgMTAwJSk7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9XCIjMDYyNjI2XCIsZW5kQ29sb3JzdHI9XCIjMDAwMDAwXCIsR3JhZGllbnRUeXBlPTEpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDsgfVxuICAub3ZlcmJveC5sb2NrZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg2LCAzOCwgMzgsIDAuOCk7IH1cbiAgLm92ZXJib3ggc3Bhbi5idXR0b24uaG9sbG93IHtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyLXdpZHRoOiA0cHg7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmZmZmO1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLm92ZXJib3ggc3Bhbi5idXR0b24uaG9sbG93OmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMmM4YTgyOyB9XG4gIC5vdmVyYm94IC53YXRjaC1ub3cge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAub3ZlcmJveCAud2F0Y2gtbm93IGltZyB7XG4gICAgICAgIHdpZHRoOiA0NnB4OyB9IH1cbiAgLm92ZXJib3ggLnZpZGVvLWRldGFpbHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgYm90dG9tOiAwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcmlnaHQ6IDA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHBhZGRpbmc6IDFyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm92ZXJib3ggLnZpZGVvLWRldGFpbHMge1xuICAgICAgICBwYWRkaW5nOiAycmVtOyB9IH1cbiAgICAub3ZlcmJveCAudmlkZW8tZGV0YWlscyAudmlkZW8tc3RhbXAge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgIC5vdmVyYm94IC52aWRlby1kZXRhaWxzIC52aWRlby1zdGFtcCB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgLm92ZXJib3ggLnZpZGVvLWRldGFpbHMgaDIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgIC5vdmVyYm94IC52aWRlby1kZXRhaWxzIGgyIHtcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuXG4ub3ZlcmJveC1pbm5lciB7XG4gIHBhZGRpbmc6IDVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB6LWluZGV4OiAxOyB9XG4gIC5vdmVyYm94LWlubmVyIGkuaWNvbi1hcnJvdy1sZWZ0MiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2ZmZmZmZjtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtOyB9XG5cbiNoYXMtdmlkZW8ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIC0tLS0tLS0gVklERU8gQkxPQ0sgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0gVklERU8gUEFHRVMgLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuLnZpZGVvLWhlcm8ge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC52aWRlby1oZXJvIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTFyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTFyZW07IH0gfVxuICAudmlkZW8taGVybzphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZDogIzE5MTkxYztcbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjUsIDI1LCAyOCwgMCkgMCUsIHJnYmEoNiwgNiwgNiwgMC44NzE1ODYpIDU3JSk7XG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1LCAyNSwgMjgsIDApIDAlLCByZ2JhKDYsIDYsIDYsIDAuODcxNTg2KSA1NyUpO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjUsIDI1LCAyOCwgMCkgMCUsIHJnYmEoNiwgNiwgNiwgMC44NzE1ODYpIDU3JSk7XG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj1cIiMxOTE5MWNcIixlbmRDb2xvcnN0cj1cIiMwNjA2MDZcIixHcmFkaWVudFR5cGU9MSk7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwOyB9XG4gIC52aWRlby1oZXJvIC52aWRlby1jb250ZW50IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgei1pbmRleDogMTsgfVxuICAudmlkZW8taGVybyAudmlkZW8tdGl0bGUge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LXNlbGY6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAxMCU7IH1cbiAgICAudmlkZW8taGVybyAudmlkZW8tdGl0bGUgaDEge1xuICAgICAgY29sb3I6ICNmYzJjMmM7XG4gICAgICBmb250LXdlaWdodDogOTAwOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAudmlkZW8taGVybyAudmlkZW8tdGl0bGUgaDEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMy40Mzc1cmVtOyB9IH1cbiAgICAudmlkZW8taGVybyAudmlkZW8tdGl0bGUgaDYge1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLnZpZGVvLWhlcm8gLnZpZGVvLWNvbnRlbnQtYWZ0ZXIge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgIHBhZGRpbmc6IDFyZW0gMnJlbTsgfVxuICAgIC52aWRlby1oZXJvIC52aWRlby1jb250ZW50LWFmdGVyIHAge1xuICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07IH1cbiAgLnZpZGVvLWhlcm8gLmJ1dHRvbiB7XG4gICAgcGFkZGluZzogMC41cmVtIDJyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC52aWRlby1oZXJvIC5idXR0b24gaSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTsgfVxuICAudmlkZW8taGVybyAudmlkZW8taW1nIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICBvYmplY3QtcG9zaXRpb246IHRvcDsgfVxuXG4udmlkZW8tc2NyZWVuIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnZpZGVvLXNjcmVlbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzcmVtOyB9IH1cbiAgLnZpZGVvLXNjcmVlbiAudmlkZW8tZGV0YWlscyB7XG4gICAgY29sb3I6ICM5Mjk4OTg7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIG1hcmdpbi10b3A6IDFyZW07IH1cbiAgLnZpZGVvLXNjcmVlbiAuYXJ0aWNsZS1pdGVtLW1ldGEge1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG5cbiNoYXMtdmlkZW8ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC52aWRlby1pdGVtLWhlcm8gLnZpZGVvLWl0ZW0ge1xuICAgIG1hcmdpbi1yaWdodDogLTFyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0xcmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnZpZGVvLWl0ZW0taGVybyAudmlkZW8taXRlbSB7XG4gICAgcGFkZGluZy10b3A6IDFyZW07IH0gfVxuXG4udmlkZW8taXRlbS1oZXJvIC52aWRlby1pdGVtIC5yZXNwb25zaXZlLWVtYmVkIHtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC52aWRlby1pdGVtLWhlcm8gLnZpZGVvLWl0ZW0gLnJlc3BvbnNpdmUtZW1iZWQge1xuICAgICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgfSB9XG5cbi52aWRlby1pdGVtLWhlcm8gLnZpZGVvLWl0ZW0tY29udGVudCB7XG4gIG1hcmdpbi10b3A6IDFyZW07IH1cbiAgLnZpZGVvLWl0ZW0taGVybyAudmlkZW8taXRlbS1jb250ZW50IHAge1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgIGNvbG9yOiAjOWQ5ZDlkOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC52aWRlby1pdGVtLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cblxuLnZpZGVvLWl0ZW0tdGl0bGUgaDIgYTpob3ZlciB7XG4gIGNvbG9yOiAjMmM4YTgyOyB9XG5cbi52aWRlby1hc2lkZS1tZXRhIHtcbiAgd2lkdGg6IDMwMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnZpZGVvLWFzaWRlLW1ldGEge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAudmlkZW8tbWFpbiAudmlkZW8td3JhcCAudmlkZW8tZ3JpZCAudmlkZW8tbGlzdCB7XG4gICAgcm93LWdhcDogNDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9IH1cblxuLyogLS0tLS0tLSBWSURFTyBQQUdFUyAtLS0tLS0tIEVORCAtLS0tLS0tLSAqL1xuLyogLS0tLS0tLSBBTklNQVRFICAgLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIHNvZCB7XG4gIGZyb20ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApOyB9XG4gIHRvIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9IH1cblxuQGtleWZyYW1lcyBzb2Qge1xuICBmcm9tIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsgfVxuICB0byB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfSB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzb3Uge1xuICBmcm9tIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG4gIHRvIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsgfSB9XG5cbkBrZXlmcmFtZXMgc291IHtcbiAgZnJvbSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuICB0byB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7IH0gfVxuXG4uc29kIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc29kO1xuICBhbmltYXRpb24tbmFtZTogc29kOyB9XG5cbi5zb3Uge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzb3U7XG4gIGFuaW1hdGlvbi1uYW1lOiBzb3U7IH1cblxuLmFuaW1hdGVkIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7IH1cblxuLyogLS0tLS0tLSBBTklNQVRFICAgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0gUFJJTlQtRURJVElPTiBQQUdFIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cbi5wcmludC1lZGl0aW9uLWNvdmVyIGltZyB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5wcmludC1lZGl0aW9uLWNvdmVyX19idG4ge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgZm9udC1zaXplOiAxNnB4OyB9XG4gIC5wcmludC1lZGl0aW9uLWNvdmVyX19idG4gaSB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG5cbi8qIC0tLS0tLS0gUFJJTlQtRURJVElPTiBQQUdFIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG4vKiAtLS0tLS0tIElOLUZPQ1VTIFNFQ1RJT04gLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuLmluLWZvY3VzIHtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA4OTZweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIHtcbiAgICAuaW4tZm9jdXM6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGZlY2U3O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogLTEwcHg7XG4gICAgICByaWdodDogLTEwcHg7XG4gICAgICBib3R0b206IDA7XG4gICAgICB0b3A6IDA7IH0gfVxuXG4uYmxvY2stb3ZlcmxheS1iZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgLyogTW9iaWxlIExhbmRzY2FwZSBhbmQgUG9ydHJhdGUgKi8gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA4OTZweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIHtcbiAgICAuYmxvY2stb3ZlcmxheS1iZyB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogIzAwMDAwMCAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYmxvY2stb3ZlcmxheS1iZyB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDI1JTtcbiAgICAgIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIC1tb3otYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIC1vLWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgcGFkZGluZzogMS41cmVtIDEuNXJlbSAwLjVyZW07IH0gfVxuICAuYmxvY2stb3ZlcmxheS1iZzpiZWZvcmUge1xuICAgIC8qIE1vYmlsZSBMYW5kc2NhcGUgYW5kIFBvcnRyYXRlICovIH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA4OTZweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIHtcbiAgICAgIC5ibG9jay1vdmVybGF5LWJnOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ibG9jay1vdmVybGF5LWJnOmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDAuMzEpIDAsIHJnYmEoMCwgMCwgMCwgMC45NSkgMTAwJSk7IH0gfVxuICAuYmxvY2stb3ZlcmxheS1iZyAuYXJ0aWNsZS1pdGVtLXRpdGxlIGEge1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG4gICAgLmJsb2NrLW92ZXJsYXktYmcgLmFydGljbGUtaXRlbS10aXRsZSBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMmM4YTgyOyB9XG4gIC5ibG9jay1vdmVybGF5LWJnIC5zZWN0aW9uLXRpdGxlIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tdG9wOiAycmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5ibG9jay1vdmVybGF5LWJnIC5zZWN0aW9uLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogN3JlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5ibG9jay1vdmVybGF5LWJnIC5zZWN0aW9uLXRpdGxlIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmJsb2NrLW92ZXJsYXktYmcgLnNlY3Rpb24tdGl0bGUgaDMge1xuICAgICAgICBmb250LXNpemU6IDMwcHg7IH0gfVxuICAgIC5ibG9jay1vdmVybGF5LWJnIC5zZWN0aW9uLXRpdGxlIGgzIGltZyB7XG4gICAgICB3aWR0aDogMzZweDsgfVxuICAuYmxvY2stb3ZlcmxheS1iZyAubW9yZSB7XG4gICAgcmlnaHQ6IDEuNXJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxcmVtO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLyogTW9iaWxlIExhbmRzY2FwZSBhbmQgUG9ydHJhdGUgKi8gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDMyMHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDg5NnB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMikge1xuICAgICAgLmJsb2NrLW92ZXJsYXktYmcgLm1vcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAuYmxvY2stb3ZlcmxheS1iZyAubW9yZSBhIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgICAuYmxvY2stb3ZlcmxheS1iZyAubW9yZSBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICMyYzhhODI7IH1cblxuLyogLS0tLS0tLSBJTi1GT0NVUyBTRUNUSU9OIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG4vKiAtLS0tLS0tIEVESVRPUlMgLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuLmVkaXRvci1pbWcge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHdpZHRoOiAyMTJweDtcbiAgaGVpZ2h0OiAyMTJweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAtd2Via2l0LW1hc2staW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KHdoaXRlLCBibGFjayk7IH1cbiAgLm1haW4tZWRpdG9ycyAuZWRpdG9yLWltZyB7XG4gICAgd2lkdGg6IDMwMnB4O1xuICAgIGhlaWdodDogMzAycHg7IH1cbiAgICAubWFpbi1lZGl0b3JzIC5lZGl0b3ItaW1nIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5lZGl0b3ItaW1nLmFydGljbGUtaXRlbS1pbWcgaW1nIHtcbiAgICAgIGFzcGVjdC1yYXRpbzogaW5pdGlhbDsgfSB9XG5cbi5lZGl0b3JpYWwtbGlzdCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uZWRpdG9yLWl0ZW0tbmFtZSBoMyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5lZGl0b3ItaXRlbS1uYW1lIGg1IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjNyZW07IH1cblxuLmVkaXRvci1pdGVtLWNhdCBoNiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDAuODc1cmVtOyB9XG5cbi5lZGl0b3ItaXRlbS1kZXNjIHAge1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cblxuLyogLS0tLS0tLSBFRElUT1JTIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG4vKiAtLS0tLS0tIFRBR1MgTUVOVSAoZXguIHBvZGNhc3QtbXVsdGlwbGUgcGFnZSkgLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuLnBhZ2UtdGFncyB7XG4gIG1hcmdpbjogMXJlbSAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhZ2UtdGFncyB7XG4gICAgICBtYXJnaW46IDJyZW0gMCAzcmVtOyB9IH1cbiAgLnBhZ2UtdGFncyA+IHVsIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2QxZDVkNTsgfVxuICAgIC5wYWdlLXRhZ3MgPiB1bCBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyLjVyZW07XG4gICAgICBtYXJnaW4tdG9wOiAwLjhyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtOyB9XG4gICAgICAucGFnZS10YWdzID4gdWwgbGkuYWN0aXZlLCAucGFnZS10YWdzID4gdWwgbGk6aG92ZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgLnBhZ2UtdGFncyA+IHVsIGxpLmFjdGl2ZTphZnRlciwgLnBhZ2UtdGFncyA+IHVsIGxpOmhvdmVyOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3R0b206IC0xcHg7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmM4YTgyOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAucGFnZS10YWdzID4gdWwgbGkge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgICAgICBmb250LXNpemU6IDEzcHg7IH0gfVxuICAgICAgLnBhZ2UtdGFncyA+IHVsIGxpIGEge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgICAgLnBhZ2UtdGFncyA+IHVsIGxpLmFjdGl2ZSBhLCAucGFnZS10YWdzID4gdWwgbGk6aG92ZXIgYSB7XG4gICAgICAgIGNvbG9yOiAjMmM4YTgyOyB9XG4gIC5wYWdlLXRhZ3Muc3R5bGUtMiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmY4ZjY7XG4gICAgei1pbmRleDogOTsgfVxuICAgIC5wYWdlLXRhZ3Muc3R5bGUtMiA+IHVsIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnBhZ2UtdGFncy5zdHlsZS0yID4gdWwge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFweDsgfSB9XG4gICAgICAucGFnZS10YWdzLnN0eWxlLTIgPiB1bCBsaSBhIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuICAgICAgLnBhZ2UtdGFncy5zdHlsZS0yID4gdWwgbGkuYWN0aXZlLCAucGFnZS10YWdzLnN0eWxlLTIgPiB1bCBsaTpob3ZlciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07IH1cbiAgICAgICAgLnBhZ2UtdGFncy5zdHlsZS0yID4gdWwgbGkuYWN0aXZlIGEsIC5wYWdlLXRhZ3Muc3R5bGUtMiA+IHVsIGxpOmhvdmVyIGEge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgICAucGFnZS10YWdzLnN0eWxlLTIgPiB1bCBsaTpvbmx5LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgICAucGFnZS10YWdzLnN0eWxlLTIgPiB1bCBsaTpvbmx5LWNoaWxkIGEge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuXG4ubXktdGFncy1tZW51IHtcbiAgei1pbmRleDogOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjhmNjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5teS10YWdzLW1lbnUjc2Nyb2xsLWNhdCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtOyB9IH1cbiAgLm15LXRhZ3MtbWVudSB1bCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubXktdGFncy1tZW51IHVsIGxpIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAgIC5teS10YWdzLW1lbnUgdWwgbGkgYSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG5cbi8qIC0tLS0tLS0gVEFHUyBNRU5VIChleC4gcG9kY2FzdC1tdWx0aXBsZSBwYWdlKSAtLS0tLS0tIEVORCAtLS0tLS0tLSAqL1xuLnJlZ2lzdGVyLXdpZGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA2MDU3O1xuICBwYWRkaW5nOiAyLjVyZW0gMXJlbSAycmVtO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgbWFyZ2luLXRvcDogMnJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5yZWdpc3Rlci13aWRlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnJlZ2lzdGVyLXdpZGUge1xuICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgIGhlaWdodDogMjcwcHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLnJlZ2lzdGVyLXdpZGUgPiAuZ3JpZC1jb250YWluZXIge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnJlZ2lzdGVyLXdpZGUgLmdyaWQteCB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG4gIC5yZWdpc3Rlci13aWRlIGgyIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogMjhweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucmVnaXN0ZXItd2lkZSBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzZweDsgfSB9XG4gIC5yZWdpc3Rlci13aWRlIGg0IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGZvbnQtc2l6ZTogMThweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucmVnaXN0ZXItd2lkZSBoNCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnJlZ2lzdGVyLXdpZGVfX2ltZyB7XG4gICAgICBtYXJnaW46IDAgYXV0byAxcmVtOyB9XG4gICAgICAucmVnaXN0ZXItd2lkZV9faW1nIGltZyB7XG4gICAgICAgIHdpZHRoOiAxNzhweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnJlZ2lzdGVyLXdpZGVfX2ltZyB7XG4gICAgICBtYXJnaW4tbGVmdDogNXJlbTsgfSB9XG4gIC5yZWdpc3Rlci13aWRlX19idG4ge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogIzA0MmIyNztcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgcGFkZGluZzogNXB4IDMwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMTBweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZSAwcztcbiAgICBsaW5lLWhlaWdodDogMjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAucmVnaXN0ZXItd2lkZV9fYnRuIGkge1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UgMHM7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH1cbiAgICAgIFtkaXI9XCJsdHJcIl0gLnJlZ2lzdGVyLXdpZGVfX2J0biBpIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucmVnaXN0ZXItd2lkZV9fYnRuIHtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4OyB9IH1cbiAgICAucmVnaXN0ZXItd2lkZV9fYnRuOmhvdmVyIHtcbiAgICAgIGNvbG9yOiBpbml0aWFsO1xuICAgICAgb3BhY2l0eTogMC45OyB9XG4gICAgICAucmVnaXN0ZXItd2lkZV9fYnRuOmhvdmVyIGkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTsgfVxuICAucmVnaXN0ZXItd2lkZV9fbGVmdCB7XG4gICAgbWFyZ2luOiAxcmVtIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5yZWdpc3Rlci13aWRlX19sZWZ0IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9IH1cbiAgLnJlZ2lzdGVyLXdpZGVfX2Nsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMXJlbTtcbiAgICBsZWZ0OiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4vKiAtLS0tLS0tIE5ld3NsZXR0ZXIgYmxvY2sgb24gaG9tZXBhZ2UgLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuLm5ld3NsZXR0ZXItaG9sZGVyIHtcbiAgcGFkZGluZzogMi41cmVtIDEuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5uZXdzbGV0dGVyLWhvbGRlciB7XG4gICAgICBwYWRkaW5nOiAxLjVyZW07IH0gfVxuICAubmV3c2xldHRlci1ob2xkZXIgaW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5uZXdzbGV0dGVyLWhvbGRlciBpbWcge1xuICAgICAgICB3aWR0aDogMTY4cHg7IH0gfVxuICAubmV3c2xldHRlci1ob2xkZXIgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNjA1NztcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLm5ld3NsZXR0ZXItaG9sZGVyIC5idXR0b24gaSB7XG4gICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAgICAgW2Rpcj1cImx0clwiXSAubmV3c2xldHRlci1ob2xkZXIgLmJ1dHRvbiBpIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qIC0tLS0tLS0gTmV3c2xldHRlciBibG9jayBvbiBob21lcGFnZSAtLS0tLS0tIEVORCAtLS0tLS0tLSAqL1xuLm1hcC1pZnJhbWUge1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjsgfVxuXG4uZW1wdHktY29udGVudCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuZW1wdHktY29udGVudC10ZXh0IHtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgY29sb3I6ICM3MTcxNzE7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5lbXB0eS1jb250ZW50LXRleHQge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICBmb250LXNpemU6IDM4cHg7IH0gfVxuICAuZW1wdHktY29udGVudC1idXR0b24ge1xuICAgIHBhZGRpbmc6IDAuODVlbSAzZW07IH1cblxuLnJhdGlvLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAucmF0aW8tY29udGFpbmVyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAvKiAxNjo5ID0gNTYuMjUlID0gY2FsYyg5IC8gMTYgKiAxMDAlKSAqL1xuICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IH1cbiAgICAuZ3JpZC1pdGVtcyAucmF0aW8tY29udGFpbmVyOmFmdGVyIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IH1cbiAgICAubGlmZXN0eWxlLWdyaWQgLnJhdGlvLWNvbnRhaW5lcjphZnRlciB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogODUlOyB9XG4gICAgLnZpZGVvLXNjcmVlbiAucmF0aW8tY29udGFpbmVyOmFmdGVyIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzOCU7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgIC52aWRlby1zY3JlZW4gLnJhdGlvLWNvbnRhaW5lcjphZnRlciB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMCU7IH0gfVxuICAucmF0aW8tY29udGFpbmVyLmVudHJ5LW1lZGlhLWhlcm86YWZ0ZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA5NC4yNSU7IH1cbiAgLnJhdGlvLWNvbnRhaW5lci5hYm91dC12aWRlbzphZnRlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDMxJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAucmF0aW8tY29udGFpbmVyLmFib3V0LXZpZGVvOmFmdGVyIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDkzLjM0JTsgfSB9XG4gIC5yYXRpby1jb250YWluZXIgPiBhLFxuICAucmF0aW8tY29udGFpbmVyID4gdmlkZW8ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMTtcbiAgICB0b3A6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgLnJhdGlvLWNvbnRhaW5lciBpbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyOyB9XG5cbi5zbGljay1sb2FkZXIge1xuICBtYXgtaGVpZ2h0OiA1MDBweDtcbiAgbWluLWhlaWdodDogMjAwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCguLi9pbWcvbG9hZGVyLnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMzBweDsgfVxuICAuc2xpY2stbG9hZGVyLnNsaWNrLWluaXRpYWxpemVkLCAuc2xpY2stbG9hZGVyLm93bC1sb2FkZWQge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiBpbml0aWFsO1xuICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAuc2xpY2stbG9hZGVyIC5zbGljay1saXN0IHtcbiAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMjUwbXMgZWFzZS1pbi1vdXQ7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnNsaWNrLWxvYWRlci1zbSB7XG4gICAgbWF4LWhlaWdodDogNDAwcHg7XG4gICAgbWluLWhlaWdodDogMjAwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoLi4vaW1nL2xvYWRlci5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDsgfVxuICAgIC5zbGljay1sb2FkZXItc20gPiBkaXYge1xuICAgICAgb3BhY2l0eTogMDsgfVxuICAgIC5zbGljay1sb2FkZXItc20uc2xpY2staW5pdGlhbGl6ZWQsIC5zbGljay1sb2FkZXItc20ub3dsLWxvYWRlZCB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtYXgtaGVpZ2h0OiBpbml0aWFsO1xuICAgICAgbWluLWhlaWdodDogYXV0bztcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAgICAgLnNsaWNrLWxvYWRlci1zbS5zbGljay1pbml0aWFsaXplZCA+IGRpdiwgLnNsaWNrLWxvYWRlci1zbS5vd2wtbG9hZGVkID4gZGl2IHtcbiAgICAgICAgb3BhY2l0eTogMTsgfVxuICAgIC5zbGljay1sb2FkZXItc20gLnNsaWNrLWxpc3Qge1xuICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IDI1MG1zIGVhc2UtaW4tb3V0OyB9IH1cblxuLnNsaWRlci12MS5hdWRpby1wb2RjYXN0LFxuLnNsaWRlci12MS53cml0ZXJzLWxpc3Qge1xuICBoZWlnaHQ6IDQ1MHB4O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5zbGlkZXItdjEuYXVkaW8tcG9kY2FzdC5zbGljay1pbml0aWFsaXplZCxcbiAgLnNsaWRlci12MS53cml0ZXJzLWxpc3Quc2xpY2staW5pdGlhbGl6ZWQge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiBpbml0aWFsO1xuICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAuc2xpZGVyLXYxLmF1ZGlvLXBvZGNhc3QgLnNsaWNrLWxpc3QsXG4gIC5zbGlkZXItdjEud3JpdGVycy1saXN0IC5zbGljay1saXN0IHtcbiAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMjUwbXMgZWFzZS1pbi1vdXQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIC5zbGlkZXItdjEuYXVkaW8tcG9kY2FzdCAuc2xpY2stbGlzdCxcbiAgICAgIC5zbGlkZXItdjEud3JpdGVycy1saXN0IC5zbGljay1saXN0IHtcbiAgICAgICAgbWFyZ2luOiAwIC0xNXB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLnNsaWRlci12MS5hdWRpby1wb2RjYXN0IC5zbGljay1zbGlkZSxcbiAgICAuc2xpZGVyLXYxLndyaXRlcnMtbGlzdCAuc2xpY2stc2xpZGUge1xuICAgICAgbWFyZ2luOiAwIDE1cHg7IH0gfVxuXG4ub3dsLWRvdHMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLm93bC1kb3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMCA1cHg7IH1cbiAgLm93bC1kb3Qgc3BhbiB7XG4gICAgd2lkdGg6IDQ3cHg7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLm93bC1kb3QuYWN0aXZlIHNwYW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7IH1cblxuLnBhZ2luYXRpb24td3JhcCB7XG4gIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgLnBhZ2luYXRpb24td3JhcCAucGFnaW5hdGlvbiBsaSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5wYWdpbmF0aW9uLXdyYXAgLnBhZ2luYXRpb24gbGkuY3VycmVudCxcbiAgICAucGFnaW5hdGlvbi13cmFwIC5wYWdpbmF0aW9uIGxpOm5vdCgucGFnZXJfX2l0ZW0tLWZpcnN0KTpub3QoLnBhZ2VyX19pdGVtLS1wcmV2aW91cyk6bm90KFxuICAgIC5wYWdlcl9faXRlbS0tbmV4dCk6bm90KC5wYWdlcl9faXRlbS0tbGFzdCkgYSB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjg7IH1cbiAgICAucGFnaW5hdGlvbi13cmFwIC5wYWdpbmF0aW9uIGxpLmN1cnJlbnQgYSB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5wYWdpbmF0aW9uLXdyYXAgLnBhZ2luYXRpb24gbGkucGFnZXJfX2l0ZW0tLWZpcnN0IGEsIC5wYWdpbmF0aW9uLXdyYXAgLnBhZ2luYXRpb24gbGkucGFnZXJfX2l0ZW0tLXByZXZpb3VzIGEsIC5wYWdpbmF0aW9uLXdyYXAgLnBhZ2luYXRpb24gbGkucGFnZXJfX2l0ZW0tLW5leHQgYSwgLnBhZ2luYXRpb24td3JhcCAucGFnaW5hdGlvbiBsaS5wYWdlcl9faXRlbS0tbGFzdCBhIHtcbiAgICAgIHBhZGRpbmc6IDVweCAxMHB4IDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLnBhZ2luYXRpb24td3JhcCAucGFnaW5hdGlvbiBsaS5wYWdlcl9faXRlbS0tZmlyc3QsIC5wYWdpbmF0aW9uLXdyYXAgLnBhZ2luYXRpb24gbGkucGFnZXJfX2l0ZW0tLWxhc3Qge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLyogLS0tLS0tLS0gRmluYWwgc2F5IC0tLS0tLS0tLS0tLS0tLS0gU3RhcnQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5oLXNwYWNlZCA+IGRpdjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWJvdHRvbTogMi4zcmVtOyB9XG5cbi5jb2xvcmVkLXNlcGFyYXRvciA+IGRpdjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkMWQ1ZDU7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNvbG9yZWQtc2VwYXJhdG9yID4gZGl2Om5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMyYzhhODI7IH0gfVxuXG4ubW9yZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICM3MTcxNzE7IH1cbiAgLm1vcmUgYSB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtZmFtaWx5OiBcIk9wZW4tU2Fuc1wiO1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLm1vcmUgaSB7XG4gICAgZm9udC1zaXplOiA4cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cblxuLnNlZS1tb3JlLWxpbmsge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtdW5kZXJsaW5lLW9mZnNldDogNXB4O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuc2VlLW1vcmUtbGluayB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuICAuc2VlLW1vcmUtbGluay5wcmltYXJ5IHtcbiAgICBjb2xvcjogIzJjOGE4MjsgfVxuICAgIC5zZWUtbW9yZS1saW5rLnByaW1hcnk6aG92ZXIge1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cblxuLnNlY3Rpb24tYmctMSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYWYzZjI7IH1cblxuLmJsb2NrLWN1c3RvbS1iZywgLnBvZGNhc3QtYmxvY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBjb2xvcjogIzAwMDAwMDsgfVxuXG4uYmxvY2stY3VzdG9tLWJnLTIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRmMGVmO1xuICBjb2xvcjogIzAwMDAwMDsgfVxuXG4uYmxvY2stY3VzdG9tLWJnLTMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlZGVjO1xuICBjb2xvcjogIzAwMDAwMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5ibG9jay1jdXN0b20tYmctMy5oYXMtcGFkZGluZyB7XG4gICAgICBwYWRkaW5nOiAxcmVtIDA7IH0gfVxuXG4uYmxvY2stY3VzdG9tLWJnLTQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGZlM2UzO1xuICBjb2xvcjogIzAwMDAwMDsgfVxuXG5sYWJlbCBzcGFuLnJlcXVpcmVkIHtcbiAgY29sb3I6IHJlZDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtY29sbGFwc2Uge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnNtYWxsLWdyaWQtY29sbGFwc2Uge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuLnNtYWxsLWdyaWQtY29sbGFwc2UgLnBhZGRpbmctaG9yaXpvbnRhbC1mb3Itc21hbGwgLmJsb2NrLXRpdGxlLnN0eWxlLXYzIHNwYW4sXG4uc21hbGwtZ3JpZC1jb2xsYXBzZSAucGFkZGluZy1ob3Jpem9udGFsLWZvci1zbWFsbCAuc2VjdGlvbi10aXRsZS5zdHlsZS12MyBzcGFuLFxuLnNtYWxsLWdyaWQtY29sbGFwc2UgLnBhZGRpbmctaG9yaXpvbnRhbC1mb3Itc21hbGwgLnBhZ2UtdGl0bGUuc3R5bGUtdjMgc3BhbiB7XG4gIHBhZGRpbmc6IDA7IH1cblxuLnNtYWxsLWdyaWQtY29sbGFwc2UgLnBhZGRpbmctaG9yaXpvbnRhbC1mb3Itc21hbGwgLmFydGljbGUtaXRlbS1vdmVyYm94LWlubmVyIHtcbiAgcGFkZGluZzogMDsgfVxuXG4ubmV3c2xldHRlci1hcmVhIHtcbiAgZGlyZWN0aW9uOiBsdHI7IH1cbiAgZm9vdGVyIC5uZXdzbGV0dGVyLWFyZWEgaW5wdXRbdHlwZT1cImVtYWlsXCJdIHtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMjBweDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMjBweDsgfVxuICAgIGZvb3RlciAubmV3c2xldHRlci1hcmVhIGlucHV0W3R5cGU9XCJlbWFpbFwiXTpmb2N1cyB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMmM4YTgyOyB9XG4gIGZvb3RlciAubmV3c2xldHRlci1hcmVhIC5pbnB1dC1ncm91cC1idXR0b24gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAyMHB4O1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDIwcHg7IH1cbiAgICBmb290ZXIgLm5ld3NsZXR0ZXItYXJlYSAuaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJjOGE4MjsgfVxuICAubmV3c2xldHRlci1hcmVhIGlucHV0W3R5cGU9XCJlbWFpbFwiXSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIHBhZGRpbmctdG9wOiAxMXB4OyB9XG4gICAgLm5ld3NsZXR0ZXItYXJlYSBpbnB1dFt0eXBlPVwiZW1haWxcIl06Zm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGJvcmRlci1jb2xvcjogIzJjOGE4MjsgfVxuICAgIC5uZXdzbGV0dGVyLWFyZWEgaW5wdXRbdHlwZT1cImVtYWlsXCJdOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgLm5ld3NsZXR0ZXItYXJlYSBpbnB1dFt0eXBlPVwiZW1haWxcIl06cGxhY2Vob2xkZXItc2hvd24ge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubmV3c2xldHRlci1hcmVhIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIGJvcmRlcjogMDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAubmV3c2xldHRlci1hcmVhIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJjOGE4MjsgfVxuICAgIFtkaXI9XCJsdHJcIl0gLm5ld3NsZXR0ZXItYXJlYSBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG5cbi5uZXdzbGV0dGVyLWludHJvIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAubmV3c2xldHRlci1pbnRybyBoNSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5uZXdzbGV0dGVyLWludHJvIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07IH0gfVxuICAgIGZvb3RlciAubmV3c2xldHRlci1pbnRybyBoNSB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgZm9vdGVyIC5uZXdzbGV0dGVyLWludHJvIGg1IHtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJTVElYIFR3byBUZXh0XCI7XG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIC5uZXdzbGV0dGVyLWludHJvIGg2IHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjtcbiAgICBmb250LXNpemU6IDAuODc1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgZm9vdGVyIC5uZXdzbGV0dGVyLWludHJvIHtcbiAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTsgfSB9XG5cbi5tY19lbWJlZF9zaWdudXAgZGl2I21jZS1yZXNwb25zZXMge1xuICBmbG9hdDogcmlnaHQ7XG4gIHRvcDogLTEuNGVtO1xuICBwYWRkaW5nOiAwZW0gMC41ZW0gMGVtIDAuNWVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogOTAlO1xuICBtYXJnaW46IDAgNSU7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5tY19lbWJlZF9zaWdudXAgZGl2LnJlc3BvbnNlIHtcbiAgbWFyZ2luOiAxZW0gMDtcbiAgcGFkZGluZzogMWVtIDAuNWVtIDAuNWVtIDA7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmbG9hdDogcmlnaHQ7XG4gIHRvcDogLTEuNWVtO1xuICB6LWluZGV4OiAxO1xuICB3aWR0aDogODAlOyB9XG5cbi5tY19lbWJlZF9zaWdudXAgI21jZS1lcnJvci1yZXNwb25zZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm1jX2VtYmVkX3NpZ251cCAjbWNlLXN1Y2Nlc3MtcmVzcG9uc2Uge1xuICBjb2xvcjogIzUyOTIxNDtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubWNfZW1iZWRfc2lnbnVwIGxhYmVsLmVycm9yIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiAxLjA1ZW07XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBwYWRkaW5nOiAwLjVlbSAwOyB9XG5cbi8qIC0tLS0tLS0gU29jaWFscyBCdG5zIFN0eWxlcyAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc29jaWFscy1idG5zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBnYXA6IDE2cHg7IH0gfVxuXG4uY2FudmFzLXBhbmVsIC5zb2NpYWxzLWJ0bnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi5zb2NpYWxzLWJ0bnMgc3BhbiB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1haW4taGVhZGVyLWJlZm9yZSAuc29jaWFscy1idG5zIHNwYW4ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA2OHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLm1haW4tZm9vdGVyLWJlZm9yZSAuc29jaWFscy1idG5zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG5cbi5zb2NpYWwtYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjMjUzYzNhO1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAwOyB9XG4gIC5zb2NpYWwtYnRuOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi0tcmlnaHQ6IDA7IH1cbiAgLnNvY2lhbC1idG4gaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cbiAgLnNvY2lhbC1idG46aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGxpbmVhcjsgfVxuICBmb290ZXIgLnNvY2lhbC1idG4ge1xuICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgY29sb3I6ICM3YzlhOTQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgZm9vdGVyIC5zb2NpYWwtYnRuIHtcbiAgICAgICAgbWFyZ2luOiAxcmVtOyB9IH1cbiAgLm5hdnBhbmVsIC5zb2NpYWwtYnRuIHtcbiAgICBjb2xvcjogIzdjOWE5NDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAubmF2cGFuZWwgLnNvY2lhbC1idG4ge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuICAubWFpbi1oZWFkZXItYmVmb3JlIC5zb2NpYWwtYnRuOmhvdmVyLCAubWFpbi1oZWFkZXItYmVmb3JlIC5zb2NpYWwtYnRuOmZvY3VzIHtcbiAgICBjb2xvcjogIzJjOGE4MjsgfVxuICAuYmxvY2std3JhcHBlciAuc29jaWFsLWJ0biB7XG4gICAgbWFyZ2luOiAwIDAuODVyZW07XG4gICAgZm9udC1zaXplOiAycmVtOyB9XG4gIC5ldmVudHMtbGlzdCAuc29jaWFsLWJ0biB7XG4gICAgbWFyZ2luOiAwIDAuODVyZW0gMCAwO1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH1cblxuLnNvY2lhbHMtYmxvY2sgYSB7XG4gIG1hcmdpbjogMCAwLjI1cmVtO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIHBhZGRpbmc6IDAuNzVyZW07IH1cbiAgLnNvY2lhbHMtYmxvY2sgYSBpIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5vcGluaW9uLWF1dGhvciAuc29jaWFscy1ibG9jayA+IGRpdiB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cblxuLm9waW5pb24tYXV0aG9yIC5zb2NpYWxzLWJsb2NrIGEge1xuICBjb2xvcjogIzk2OTY5NjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDFyZW07XG4gIHBhZGRpbmc6IDdweDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAub3Bpbmlvbi1hdXRob3IgLnNvY2lhbHMtYmxvY2sgYTpob3ZlciwgLm9waW5pb24tYXV0aG9yIC5zb2NpYWxzLWJsb2NrIGE6YWN0aXZlLCAub3Bpbmlvbi1hdXRob3IgLnNvY2lhbHMtYmxvY2sgYTpmb2N1cyB7XG4gICAgY29sb3I6ICMyYzhhODI7IH1cblxuLm9waW5pb24tYXV0aG9yIC5zb2NpYWxzLWJsb2NrIHNwYW4ge1xuICBtYXJnaW4tbGVmdDogNXB4OyB9XG5cbi52aWRlby1wb3B1cC1tb2RhbCB7XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3MDcwNzA7XG4gIHBhZGRpbmc6IDUwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogMDtcbiAgdG9wOiA1MCUgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiA2MDBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC52aWRlby1wb3B1cC1tb2RhbCB7XG4gICAgICBwYWRkaW5nOiA0MHB4IDIwcHg7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gNjBweCkgIWltcG9ydGFudDtcbiAgICAgIHJpZ2h0OiA1MCUgIWltcG9ydGFudDtcbiAgICAgIHRvcDogMjAlICFpbXBvcnRhbnQ7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgIWltcG9ydGFudDtcbiAgICAgIGxlZnQ6IGF1dG87IH0gfVxuICAudmlkZW8tcG9wdXAtbW9kYWwgLmNsb3NlLWJ1dHRvbixcbiAgLnZpZGVvLXBvcHVwLW1vZGFsIC5tb2RhbC1jbG9zZSB7XG4gICAgcmlnaHQ6IDUwcHg7XG4gICAgdG9wOiAzNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLnZpZGVvLXBvcHVwLW1vZGFsIC5jbG9zZS1idXR0b24sXG4gICAgICAudmlkZW8tcG9wdXAtbW9kYWwgLm1vZGFsLWNsb3NlIHtcbiAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgIHRvcDogNDBweDsgfSB9XG4gIC52aWRlby1wb3B1cC1tb2RhbCBoMiB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGNvbG9yOiAjMmM4YTgyO1xuICAgIG1hcmdpbjogMCAwIDI3cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkY2UwZTA7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnZpZGVvLXBvcHVwLW1vZGFsIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAzM3B4OyB9IH1cbiAgLnZpZGVvLXBvcHVwLW1vZGFsIGg1IHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAudmlkZW8tcG9wdXAtbW9kYWwgaDUge1xuICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAudmlkZW8tcG9wdXAtbW9kYWwgLnNoYXJlLWljb25zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyN3B4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC52aWRlby1wb3B1cC1tb2RhbCAuc2hhcmUtaWNvbnMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7IH0gfVxuICAgIC52aWRlby1wb3B1cC1tb2RhbCAuc2hhcmUtaWNvbnMgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBnYXA6IDMzcHg7IH1cbiAgICAgIC52aWRlby1wb3B1cC1tb2RhbCAuc2hhcmUtaWNvbnMgdWwgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLnZpZGVvLXBvcHVwLW1vZGFsIC5zaGFyZS1pY29ucyB1bCBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiA1MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogNTBweCAhaW1wb3J0YW50O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDogI2U0ZWRlYzsgfVxuICAgICAgICAudmlkZW8tcG9wdXAtbW9kYWwgLnNoYXJlLWljb25zIHVsIGEgaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgIGNvbG9yOiAjMmM4YTgyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnZpZGVvLXBvcHVwLW1vZGFsIC5jb3B5LWxpbmsge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuICAudmlkZW8tcG9wdXAtbW9kYWwgLmNvcHktbGluayAuY29weS1saW5rLWlucHV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnZpZGVvLXBvcHVwLW1vZGFsIC5jb3B5LWxpbmsgLmNvcHktbGluay1pbnB1dCB7XG4gICAgICAgIHdpZHRoOiAzMjhweDsgfSB9XG4gICAgLnZpZGVvLXBvcHVwLW1vZGFsIC5jb3B5LWxpbmsgLmNvcHktbGluay1pbnB1dC5jb3BpZWQ6aG92ZXI6YmVmb3JlLCAudmlkZW8tcG9wdXAtbW9kYWwgLmNvcHktbGluayAuY29weS1saW5rLWlucHV0LmNvcGllZDpob3ZlcjphZnRlciwgLnZpZGVvLXBvcHVwLW1vZGFsIC5jb3B5LWxpbmsgLmNvcHktbGluay1pbnB1dC5jb3BpZWQ6YWN0aXZlOmJlZm9yZSwgLnZpZGVvLXBvcHVwLW1vZGFsIC5jb3B5LWxpbmsgLmNvcHktbGluay1pbnB1dC5jb3BpZWQ6YWN0aXZlOmFmdGVyLCAudmlkZW8tcG9wdXAtbW9kYWwgLmNvcHktbGluayAuY29weS1saW5rLWlucHV0LmNvcGllZDpmb2N1czpiZWZvcmUsIC52aWRlby1wb3B1cC1tb2RhbCAuY29weS1saW5rIC5jb3B5LWxpbmstaW5wdXQuY29waWVkOmZvY3VzOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC52aWRlby1wb3B1cC1tb2RhbCAuY29weS1saW5rIC5jb3B5LWxpbmstaW5wdXQuY29waWVkOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiAxMDAwMDAxO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlcjogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgYm90dG9tOiAtNXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IC01cHg7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7IH1cbiAgICAudmlkZW8tcG9wdXAtbW9kYWwgLmNvcHktbGluayAuY29weS1saW5rLWlucHV0LmNvcGllZDphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiAxMDAwMDAwO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDVweCA4cHg7XG4gICAgICBmb250OiBub3JtYWwgbm9ybWFsIDExcHgvMS41IEhlbHZldGljYSwgYXJpYWwsIG5pbWJ1c3NhbnNsLCBsaWJlcmF0aW9uc2FucywgZnJlZXNhbnMsIGNsZWFuLCBzYW5zLXNlcmlmLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCI7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgICAgd2hpdGUtc3BhY2U6IHByZTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogc3VicGl4ZWwtYW50aWFsaWFzZWQ7XG4gICAgICBjb250ZW50OiBcIkNvcGllZCFcIjtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIHJpZ2h0OiA1MCU7XG4gICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTAlKTsgfVxuICAgIC52aWRlby1wb3B1cC1tb2RhbCAuY29weS1saW5rIC5jb3B5LWxpbmstaW5wdXQgaW5wdXQge1xuICAgICAgYm9yZGVyLXJhZGl1czogMjhweDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkY2RmZGY7XG4gICAgICBwYWRkaW5nOiA1cHggMTdweDtcbiAgICAgIGhlaWdodDogNDdweDtcbiAgICAgIGNvbG9yOiAjNzE3MTcxO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLnZpZGVvLXBvcHVwLW1vZGFsIC5jb3B5LWxpbmsgLmNvcHktbGluay1pbnB1dCBidXR0b24ge1xuICAgICAgd2lkdGg6IDQ1cHg7XG4gICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAxcHg7XG4gICAgICB0b3A6IDFweDtcbiAgICAgIGJhY2tncm91bmQ6ICMyYzhhODI7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLyogLS0tLS0tLSBTb2NpYWxzIEJ0bnMgU3R5bGVzIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG4vKiAtLS0tLS0tIExlYWRlcmJvYXJkIEFkIFN0eWxlcyAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG4ubGVhZGVyYm9hcmQtYmxvY2sge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7IH1cbiAgLnN0aWNreSAubGVhZGVyYm9hcmQtYmxvY2sge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAubGVhZGVyYm9hcmQtYmxvY2sge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfSB9XG5cbi8qIC0tLS0tLS0gTGVhZGVyYm9hcmQgQWQgU3R5bGVzIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG4vKiAtLS0tLS0tIExlYWRlcmJvYXJkIEFkIFN0eWxlcyAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG4uZW50cnktYWR2ZXJ0b3JpYWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDEwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuZW50cnktYWR2ZXJ0b3JpYWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogOHB4OyB9IH1cbiAgLmVudHJ5LWFkdmVydG9yaWFsIGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuZW50cnktYWR2ZXJ0b3JpYWwgc3BhbiB7XG4gICAgcGFkZGluZzogMCA2cHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBmb250LXNpemU6IDEyLjhweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5lbnRyeS1hZHZlcnRvcmlhbCBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzBweDsgfSB9XG5cbi8qIC0tLS0tLS0gTGVhZGVyYm9hcmQgQWQgU3R5bGVzIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG4vKiAtLS0tLS0tLSBGaW5hbCBzYXkgLS0tLS0tLS0tLS0tLS0tLSBFbmQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbmJvZHkge1xuICBkaXJlY3Rpb246IGx0cjtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07IH1cblxuLmJsb2NrLXRpdGxlLFxuLnNlY3Rpb24tdGl0bGUsXG4ucGFnZS10aXRsZSxcbi50aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4tU2Fuc1wiOyB9XG5cbnVsLCBzcGFuLCAuc29jaWFsLWxibCwgLmFsZXJ0IHtcbiAgZm9udC1mYW1pbHk6IFwiT3Blbi1TYW5zXCI7IH1cblxuaDEge1xuICBsaW5lLWhlaWdodDogMTsgfVxuXG5oMiB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE7IH1cblxuaDMge1xuICBsaW5lLWhlaWdodDogMS4yOyB9XG5cbmg2IHtcbiAgbGluZS1oZWlnaHQ6IDEuNzsgfVxuXG4uYnJlYWtpbmctbmV3cy1hcmVhIGg2LFxuLmJyZWFraW5nLW5ld3MtYXJlYSAubGFiZWwge1xuICBmb250LXNpemU6IDE0cHg7IH1cblxuLmljb24tYXJyb3ctcmlnaHQtYmxhY2sge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG5cbi5sYWJlbCB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4tU2Fuc1wiOyB9XG4gIC5sYWJlbC5hYnMtZWwge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgLmxhYmVsLmxhYmVsLWNlbnRlciB7XG4gICAgbGVmdDogNTAlO1xuICAgIHJpZ2h0OiBpbml0aWFsOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDIge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAgIC5oZXJvLW1haW4gLmFydGljbGUtaXRlbS10aXRsZSBoMiB7XG4gICAgICBmb250LXNpemU6IDJyZW07IH0gfVxuXG4uYXJ0aWNsZS1pdGVtLW1ldGEsIC5nYWxsZXJ5LW1ldGEge1xuICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjsgfVxuICAuYXJ0aWNsZS1pdGVtLW1ldGEgLm1ldGEtYXV0aG9yLCAuZ2FsbGVyeS1tZXRhIC5tZXRhLWF1dGhvciB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFydGljbGUtaXRlbS1tZXRhIHtcbiAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTsgfSB9XG5cbi5pbWctY2FwdGlvbiB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4tU2Fuc1wiOyB9XG5cbi5zZWN0aW9uLXRpdGxlIGgyLFxuLnNlY3Rpb24tdGl0bGUgaDMsXG4uYmxvY2stdGl0bGUgaDIsXG4uYmxvY2stdGl0bGUgaDMge1xuICBmb250LXNpemU6IDEuMzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjsgfVxuXG4ucG9kY2FzdC1saXN0IC5kYXRlLWZpZWxkIGEge1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbi5wb2RjYXN0LWxpc3QgLmRhdGUtZmllbGQgYSwgLnBvZGNhc3QtbGlzdCAucG9kY2FzdC10aW1lIGEge1xuICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjsgfVxuXG4uc2VlLW1vcmUtbGluayBhLCAubW9yZSBhIHtcbiAgZm9udC1mYW1pbHk6IFwiT3Blbi1TYW5zXCI7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuXG4uY2F0ZWdvcnktbmFtZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4tU2Fuc1wiO1xuICBmb250LXdlaWdodDogNjAwOyB9XG5cbi52aWRlby1zdGFtcC5hYnMtZWwge1xuICBmb250LWZhbWlseTogXCJPcGVuLVNhbnNcIjsgfVxuXG4uZW50cnktaGlnaGxpZ2h0IHVsIHtcbiAgZm9udC1mYW1pbHk6IFwiU1RJWCBUd28gVGV4dFwiO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5lbnRyeS1oaWdobGlnaHQgdWwgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDAuN3JlbTsgfVxuXG4uaGVyby1tYWluIC5lbnRyeS1oaWdobGlnaHQge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTsgfVxuXG4uZW50cnktYXNpZGUtbWV0YSAuZW50cnktZGF0ZSB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuZW50cnktdGl0bGUgaDEge1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7IH0gfVxuXG4ubWVudS1oaWdobGlnaHRzIC5vYmplY3QtaXRlbSB7XG4gIG1pbi13aWR0aDogMTQwcHg7IH1cblxuLnNlY3Rpb24tbWVudS13cmFwcGVyIHtcbiAgZm9udC1mYW1pbHk6IFwiT3Blbi1TYW5zXCI7IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIHtcbiAgLm5vLXNwYWNlciB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cbiAgLm5vLXRvcC1zcGFjZXIge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50OyB9XG4gIC5uby1ib3R0b20tc3BhY2VyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAubm8tbGVmdC1zcGFjZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLm5vLXJpZ2h0LXNwYWNlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50OyB9XG4gIC50b3Atc3BhY2VyLS14bCB7XG4gICAgbWFyZ2luLXRvcDogM3JlbSAhaW1wb3J0YW50OyB9XG4gIC50b3Atc3BhY2VyLS1sIHtcbiAgICBtYXJnaW4tdG9wOiAyLjVyZW0gIWltcG9ydGFudDsgfVxuICAudG9wLXNwYWNlci0tbSB7XG4gICAgbWFyZ2luLXRvcDogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC50b3Atc3BhY2VyIHtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDsgfVxuICAudG9wLXNwYWNlci0tcyB7XG4gICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC50b3Atc3BhY2VyLS14cyB7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLmJvdHRvbS1zcGFjZXItLXhsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLmJvdHRvbS1zcGFjZXItLWwge1xuICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5ib3R0b20tc3BhY2VyLS1tIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgLmJvdHRvbS1zcGFjZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC5ib3R0b20tc3BhY2VyLS1zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLmJvdHRvbS1zcGFjZXItLXhzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW0gIWltcG9ydGFudDsgfSB9XG5cbi50ZXh0LXRyYW5zZm9ybS11cHBlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi50ZXh0LXRyYW5zZm9ybS1jYXBpdGFsaXplIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cblxuLnNtYWxsLXVwLTEgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbi5zbWFsbC11cC0xIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTIgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbi5zbWFsbC11cC0yIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTMgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbi5zbWFsbC11cC0zIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTQgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbi5zbWFsbC11cC00IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTUgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbi5zbWFsbC11cC01IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTYgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbi5zbWFsbC11cC02IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTcgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbi5zbWFsbC11cC03IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTggLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbi5zbWFsbC11cC04IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS11cC0xIC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsXG4gIC5tZWRpdW0tdXAtMSAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1lZGl1bS11cC0yIC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsXG4gIC5tZWRpdW0tdXAtMiAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1lZGl1bS11cC0zIC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsXG4gIC5tZWRpdW0tdXAtMyAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1lZGl1bS11cC00IC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsXG4gIC5tZWRpdW0tdXAtNCAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1lZGl1bS11cC01IC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsXG4gIC5tZWRpdW0tdXAtNSAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1lZGl1bS11cC02IC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsXG4gIC5tZWRpdW0tdXAtNiAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1lZGl1bS11cC03IC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsXG4gIC5tZWRpdW0tdXAtNyAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1lZGl1bS11cC04IC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsXG4gIC5tZWRpdW0tdXAtOCAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtdXAtMSAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLFxuICAubGFyZ2UtdXAtMSAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTIgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLmxhcmdlLXVwLTIgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS11cC0zIC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsXG4gIC5sYXJnZS11cC0zIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtNCAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLFxuICAubGFyZ2UtdXAtNCAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTUgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLmxhcmdlLXVwLTUgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS11cC02IC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsXG4gIC5sYXJnZS11cC02IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtNyAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLFxuICAubGFyZ2UtdXAtNyAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTggLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLmxhcmdlLXVwLTggLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLXVwLTEgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLnhsYXJnZS11cC0xIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAueGxhcmdlLXVwLTIgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLnhsYXJnZS11cC0yIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAueGxhcmdlLXVwLTMgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLnhsYXJnZS11cC0zIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAueGxhcmdlLXVwLTQgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLnhsYXJnZS11cC00IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAueGxhcmdlLXVwLTUgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLnhsYXJnZS11cC01IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAueGxhcmdlLXVwLTYgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLnhsYXJnZS11cC02IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAueGxhcmdlLXVwLTcgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLnhsYXJnZS11cC03IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAueGxhcmdlLXVwLTggLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLnhsYXJnZS11cC04IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIFtkaXI9XCJydGxcIl0gLmxhcmdlLXVuY2VudGVyZWQsXG4gIFtkaXI9XCJydGxcIl0gLmxhcmdlLXB1c2gtMCxcbiAgW2Rpcj1cInJ0bFwiXSAubGFyZ2UtcHVsbC0wIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7IH0gfVxuXG4udmVydGljYWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG5cbi5jZW50ZXItZWxlbWVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7IH1cblxuLnVzZS1sb2FkZXIge1xuICBoZWlnaHQ6IDM2MHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2xvYWRlci5naWYpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyIHRyYW5zcGFyZW50OyB9XG5cbi5yb3VuZCB7XG4gIGJvcmRlci1yYWRpdXM6IDEwMDBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLXdlYmtpdC1tYXNrLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudCh3aGl0ZSwgYmxhY2spOyB9XG5cbi5idXR0b24tcmFkaXVzIHtcbiAgYm9yZGVyLXJhZGl1czogNDBweDsgfVxuXG4uZ3V0dGVycy0xeCB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gIC5ndXR0ZXJzLTF4ID4gLmNlbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH1cblxuLmd1dHRlcnMtLTF4IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC4xNTYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjE1NjI1cmVtOyB9XG4gIC5ndXR0ZXJzLS0xeCA+IC5jZWxsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjE1NjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4xNTYyNXJlbTsgfVxuXG4uZ3V0dGVycy1tYXJnaW4tMXgge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTsgfVxuICAuZ3V0dGVycy1tYXJnaW4tMXggLmNlbGwge1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ndXR0ZXItMjAucm93IHtcbiAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtOyB9XG4gIC5ndXR0ZXItMjAgLmNvbHVtbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ndXR0ZXItMTAucm93IHtcbiAgICBtYXJnaW4tbGVmdDogLTAuMzEyNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjMxMjVyZW07IH1cbiAgLmd1dHRlci0xMCAuY29sdW1uIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjMxMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjMxMjVyZW07IH0gfVxuXG4ubWFyZ2luLXRvcC1hdXRvIHtcbiAgbWFyZ2luLXRvcDogYXV0byAhaW1wb3J0YW50OyB9XG5cbi5mbGV4LWNvbC1mdWxsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5uby1ib3JkZXIge1xuICBib3JkZXI6IDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnBhZGRpbmctaG9yaXpvbnRhbC1mb3Itc21hbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtOyB9IH1cblxuLndpdGgtcGFkZGluZyB7XG4gIHBhZGRpbmc6IDFyZW07IH1cblxuLmhhcy1wYWRkaW5nIHtcbiAgcGFkZGluZzogMnJlbSAxLjVyZW07IH1cblxuLnZlcnRpY2FsLXBhZGQge1xuICBwYWRkaW5nOiAxcmVtIDA7IH1cblxuLmJsYWNrLWJnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgfVxuXG4ud2hpdGUtYmcsIC5uZXdzbGV0dGVyLWhvbGRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cblxuLm1heFdpZHRoLW1lZGl1bSxcbi5tYXhXaWR0aC1zbWFsbCxcbi5tYXhXaWR0aC14c21hbGwge1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuXG4ubWF4V2lkdGgtbWVkaXVtIHtcbiAgbWF4LXdpZHRoOiA4MDBweDsgfVxuXG4ubWF4V2lkdGgtc21hbGwge1xuICBtYXgtd2lkdGg6IDY3MHB4OyB9XG5cbi5tYXhXaWR0aC14c21hbGwge1xuICBtYXgtd2lkdGg6IDM2MHB4OyB9XG5cbi5mdWxsLWJnLCAucG9kY2FzdC1zaW5nbGUtYmxvY2ssIC5yZWdpc3Rlci13aWRlIHtcbiAgd2lkdGg6IDEwMHZ3O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLXJpZ2h0OiAtNTB2dztcbiAgbWFyZ2luLWxlZnQ6IC01MHZ3OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5mdWxsLWJnLXNtLCAubmV3c2xldHRlci1ob2xkZXIge1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAtNTB2dztcbiAgICBtYXJnaW4tbGVmdDogLTUwdnc7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYm9yZGVyLWJvdHRvbS1tZC1zbSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkMWQ1ZDU7IH1cbiAgICAuYm9yZGVyLWJvdHRvbS1tZC1zbS5hcnRpY2xlLWl0ZW0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmJvcmRlci1ib3R0b20tc21hbGwge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDFkNWQ1O1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtOyB9IH1cblxuLmhpZGUtbGFiZWwgLmxhYmVsIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uaGlkZS1sYWJlbC1oMyBoMyAubGFiZWwtbGl2ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmhpZGUtZmlyc3QtdGl0bGUgLmZpcnN0LXRpdGxlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uaGlkZS1zZWNvbmQtdGl0bGUgLnNlY29uZC10aXRsZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmhpZGUtbG9uZy1kZXNjcmlwdGlvbiAubG9uZy1kZXNjcmlwdGlvbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmhpZGUtc2hvcnQtZGVzY3JpcHRpb24gLnNob3J0LWRlc2NyaXB0aW9uIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uaGlkZS1oaWdobGlnaHQgLmVudHJ5LWhpZ2hsaWdodCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmhpZGUtbWV0YSAuYXJ0aWNsZS1pdGVtLW1ldGEge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5oaWRlLWRhdGUgLmFydGljbGUtaXRlbS1tZXRhIC5pY29uLXRpbWUsXG4uaGlkZS1kYXRlIC5hcnRpY2xlLWl0ZW0tbWV0YSB0aW1lIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uaGlkZS1pbWcgLmFydGljbGUtaXRlbS1pbWcsXG4uaGlkZS1pbWcgLm1lZGlhLW9iamVjdC1pbWcge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oaWRlLWltZy1sZyAuYXJ0aWNsZS1pdGVtLWltZyxcbiAgLmhpZGUtaW1nLWxnIC5tZWRpYS1vYmplY3QtaW1nIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmhpZGUtY2F0ZWdvcnkgLmFydGljbGUtaXRlbS1jYXRlZ29yeSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uaGlkZS1jYXRlZ29yeS1uYW1lIC5jYXRlZ29yeS1uYW1lIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuaGlkZS1jYXRlZ29yeS1zbSAuY2F0ZWdvcnktbmFtZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5oaWRlLWNvbnRlbnQgLmFydGljbGUtaXRlbS1jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uaGlkZS1hdXRob3IgLm1ldGEtYXV0aG9yIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5oaWRlLWhpZ2hsaWdodCAuZW50cnktaGlnaGxpZ2h0IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uaG92ZXItem9vbSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmhvdmVyLXpvb20gaW1nIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuNXM7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjVzO1xuICAgIHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuNXM7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXM7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMsIC13ZWJraXQtdHJhbnNmb3JtIDAuNXM7IH1cbiAgLmhvdmVyLXpvb206aG92ZXIgaW1nIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTsgfVxuXG4uaW5wdXQtY2hlY2tib3gsIC53cml0ZXItY2hlY2sgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLCAubG90dGllLXdyYXAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLCAubXVsdGktY2hlY2sgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLCAuYm9va21hcmstY2hlY2sgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLCAuZm9sbG93LXRhZyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAvKiBBZGQgaWYgbm90IHVzaW5nIGF1dG9wcmVmaXhlciAqL1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC8qIFJlbW92ZSBtb3N0IGFsbCBuYXRpdmUgaW5wdXQgc3R5bGVzICovXG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAwOyB9XG4iLCJAaW1wb3J0IFwidmFyaWFibGVzXCI7XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJyN7JGljb21vb24tZm9udC1mYW1pbHl9JztcbiAgc3JjOlxuICAgIHVybCgnI3skaWNvbW9vbi1mb250LXBhdGh9LyN7JGljb21vb24tZm9udC1mYW1pbHl9LndvZmYyP3Z2czUnKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgdXJsKCcjeyRpY29tb29uLWZvbnQtcGF0aH0vI3skaWNvbW9vbi1mb250LWZhbWlseX0udHRmP3Z2czUnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgdXJsKCcjeyRpY29tb29uLWZvbnQtcGF0aH0vI3skaWNvbW9vbi1mb250LWZhbWlseX0ud29mZj92dnM1JykgZm9ybWF0KCd3b2ZmJyksXG4gICAgdXJsKCcjeyRpY29tb29uLWZvbnQtcGF0aH0vI3skaWNvbW9vbi1mb250LWZhbWlseX0uc3ZnP3Y1IyN7JGljb21vb24tZm9udC1mYW1pbHl9JykgZm9ybWF0KCdzdmcnKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IGJsb2NrO1xufVxuXG4uaWNvbW9vbi1pY29uIHtcbiAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgZm9udC1mYW1pbHk6ICcjeyRpY29tb29uLWZvbnQtZmFtaWx5fScgIWltcG9ydGFudDtcbiAgc3BlYWs6IG5ldmVyO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4uaWNvbi1saXZlIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWxpdmU7ICAgICBcbiAgICBjb2xvcjogI2YwMDtcbiAgfVxufVxuLmljb24tY2hlY2stZ3JlZW4ge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tY2hlY2stZ3JlZW47ICAgICBcbiAgICBjb2xvcjogIzJjOGE4MjtcbiAgfVxufVxuLmljb24tcGx1cy1ncmVlbiB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1wbHVzLWdyZWVuOyAgICAgXG4gICAgY29sb3I6ICMyYzhhODI7XG4gIH1cbn1cbi5pY29uLXBsYXktY2lyY2xlIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXBsYXktY2lyY2xlOyAgICAgXG4gICAgY29sb3I6ICNmMmYyZjI7XG4gIH1cbn1cbi5pY29uLWhvbGxvdy1jaGVjayB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1ob2xsb3ctY2hlY2s7ICAgICBcbiAgICBjb2xvcjogIzkyOTg5ODtcbiAgfVxufVxuLmljb24tZWFydGgge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tZWFydGg7IFxuICB9XG59XG4uaWNvbi1jb3B5IHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWNvcHk7ICAgICBcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxufVxuLmljb24tZ3JlZW4tY2hlY2sge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tZ3JlZW4tY2hlY2s7ICAgICBcbiAgICBjb2xvcjogIzJjOGE4MjtcbiAgfVxufVxuLmljb24tZmFjZWJvb2stY29sb3JlZCB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1mYWNlYm9vay1jb2xvcmVkOyAgICAgXG4gICAgY29sb3I6ICMxODc3ZjI7XG4gIH1cbn1cbi5pY29uLWJvb2ttYXJrLWdyZWVuIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWJvb2ttYXJrLWdyZWVuOyAgICAgXG4gICAgY29sb3I6ICMyYzhhODI7XG4gIH1cbn1cbi5pY29uLXVzZXItY2lyY2xlLW8tYmxhY2sge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tdXNlci1jaXJjbGUtby1ibGFjazsgXG4gIH1cbn1cbi5pY29uLXNpZ24tb3V0IHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXNpZ24tb3V0OyBcbiAgfVxufVxuLmljb24tYm9va21hcmstb3V0bGluZSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1ib29rbWFyay1vdXRsaW5lOyAgICAgXG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbn1cbi5pY29uLWFycm93LWxlZnQzIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWFycm93LWxlZnQzOyBcbiAgfVxufVxuLmljb24tYXJyb3ctbGVmdDQge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tYXJyb3ctbGVmdDQ7ICAgICBcbiAgICBjb2xvcjogI2VmZWNlMjtcbiAgfVxufVxuLmljb24tYXBwbGUtY29sb3JlZCB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1hcHBsZS1jb2xvcmVkOyBcbiAgfVxufVxuLmljb24tbmV3cyB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1uZXdzOyAgICAgXG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbn1cbi5pY29uLWV5ZTEge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tZXllMTsgICAgIFxuICAgIGNvbG9yOiAjOWE5YTlhO1xuICB9XG59XG4uaWNvbi1sb2NrIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWxvY2s7ICAgICBcbiAgICBjb2xvcjogIzlhOWE5YTtcbiAgfVxufVxuLmljb24tZW52ZWxvcDEge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tZW52ZWxvcDE7ICAgICBcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxufVxuLmljb24tZW52ZWxvcDIge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tZW52ZWxvcDI7ICAgICBcbiAgICBjb2xvcjogIzlhOWE5YTtcbiAgfVxufVxuLmljb24tZW52ZWxvcC1ncmVlbiB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1lbnZlbG9wLWdyZWVuOyAgICAgXG4gICAgY29sb3I6ICMyYzhhODI7XG4gIH1cbn1cbi5pY29uLWRyYWctdmVydGljYWwge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tZHJhZy12ZXJ0aWNhbDsgXG4gIH1cbn1cbi5pY29uLXNoYXJlMiB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1zaGFyZTI7ICAgICBcbiAgICBjb2xvcjogIzJjOGE4MjtcbiAgfVxufVxuLmljb24tc2hhcmUge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tc2hhcmU7ICAgICBcbiAgICBjb2xvcjogIzRkNGQ0ZDtcbiAgfVxufVxuLmljb24tdXBsb2FkIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXVwbG9hZDsgICAgIFxuICAgIGNvbG9yOiAjNGQ0ZDRkO1xuICB9XG59XG4uaWNvbi11c2VyLWNpcmNsZS1vIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXVzZXItY2lyY2xlLW87ICAgICBcbiAgICBjb2xvcjogI2Y3ZmFmYTtcbiAgfVxufVxuLmljb24tZmlsZS1wZGYge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tZmlsZS1wZGY7ICAgICBcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxufVxuLmljb24tZGF0ZSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1kYXRlOyAgICAgXG4gICAgY29sb3I6ICNhZmFmYWY7XG4gIH1cbn1cbi5pY29uLWV5ZSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1leWU7ICAgICBcbiAgICBjb2xvcjogI2FmYWZhZjtcbiAgfVxufVxuLmljb24tcGxheSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1wbGF5OyBcbiAgfVxufVxuLmljb24tcGxheS1ncmVlbiB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1wbGF5LWdyZWVuOyAgICAgXG4gICAgY29sb3I6ICMyYzhhODI7XG4gIH1cbn1cbi5pY29uLWFyY2hpdmUge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tYXJjaGl2ZTsgXG4gIH1cbn1cbi5pY29uLWFsYnVtIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWFsYnVtOyAgICAgXG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbn1cbi5pY29uLWFycm93LXJpZ2h0LWJsYWNrIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWFycm93LXJpZ2h0LWJsYWNrOyBcbiAgfVxufVxuLmljb24tZWRpdCB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1lZGl0OyAgICAgXG4gICAgY29sb3I6ICMyYzhhODI7XG4gIH1cbn1cbi5pY29uLWNhbGVuZGFyIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWNhbGVuZGFyOyAgICAgXG4gICAgY29sb3I6ICNhZmFmYWY7XG4gIH1cbn1cbi5pY29uLW1lbnUge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tbWVudTsgICAgIFxuICAgIGNvbG9yOiAjZmZmO1xuICB9XG59XG4uaWNvbi10d2l0dGVyIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXR3aXR0ZXI7IFxuICB9XG59XG4uaWNvbi10aWt0b2sge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tdGlrdG9rOyBcbiAgfVxufVxuLmljb24tdGVsZWdyYW0ge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tdGVsZWdyYW07ICAgICBcbiAgICBjb2xvcjogIzJjYTVlMDtcbiAgfVxufVxuLmljb24tcGF1c2Uge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tcGF1c2U7IFxuICB9XG59XG4uaWNvbi1pbnN0YWdyYW0ge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24taW5zdGFncmFtOyBcbiAgfVxufVxuLmljb24tc2VhcmNoIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXNlYXJjaDsgXG4gIH1cbn1cbi5pY29uLXByaW50IHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXByaW50OyBcbiAgfVxufVxuLmljb24tcHJpbnQxIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXByaW50MTsgXG4gIH1cbn1cbi5pY29uLXByaW50MiB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1wcmludDI7IFxuICB9XG59XG4uaWNvbi13aW5kIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXdpbmQ7IFxuICB9XG59XG4uaWNvbi1jbG91ZHkge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tY2xvdWR5OyBcbiAgfVxufVxuLmljb24tcmFpbiB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1yYWluOyBcbiAgfVxufVxuLmljb24tbGlnaHRuaWdodCB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1saWdodG5pZ2h0OyBcbiAgfVxufVxuLmljb24tc25vdyB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1zbm93OyBcbiAgfVxufVxuLmljb24td2VhdGhlciB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi13ZWF0aGVyOyBcbiAgfVxufVxuLmljb24tZmlsZS1wZGYxIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWZpbGUtcGRmMTsgXG4gIH1cbn1cbi5pY29uLW1pYyB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1taWM7IFxuICB9XG59XG4uaWNvbi1maXJlIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWZpcmU7IFxuICB9XG59XG4uaWNvbi1ib29rbWFyayB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1ib29rbWFyazsgXG4gIH1cbn1cbi5pY29uLWJvb2ttYXJrMSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1ib29rbWFyazE7IFxuICB9XG59XG4uaWNvbi1oZWFkcGhvbmUge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24taGVhZHBob25lOyBcbiAgfVxufVxuLmljb24tY2FsZW5kYXIxIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWNhbGVuZGFyMTsgXG4gIH1cbn1cbi5pY29uLXRpbWUxIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXRpbWUxOyBcbiAgfVxufVxuLmljb24tdGltZSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi10aW1lOyBcbiAgfVxufVxuLmljb24tY2lyY2xlIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWNpcmNsZTsgXG4gIH1cbn1cbi5pY29uLWNsb3NlIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWNsb3NlOyBcbiAgfVxufVxuLmljb24tbWVudTEge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tbWVudTE7IFxuICB9XG59XG4uaWNvbi1xdW90ZXMtbGVmdCB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1xdW90ZXMtbGVmdDsgXG4gIH1cbn1cbi5pY29uLXF1b3Rlcy1yaWdodCB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1xdW90ZXMtcmlnaHQ7IFxuICB9XG59XG4uaWNvbi1hcnJvdy1yaWdodDEge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tYXJyb3ctcmlnaHQxOyBcbiAgfVxufVxuLmljb24tYXJyb3ctZG93bjEge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tYXJyb3ctZG93bjE7IFxuICB9XG59XG4uaWNvbi1hcnJvdy1sZWZ0MSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1hcnJvdy1sZWZ0MTsgXG4gIH1cbn1cbi5pY29uLWFycm93LXVwMSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1hcnJvdy11cDE7IFxuICB9XG59XG4uaWNvbi1hcnJvdy1sZWZ0IHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWFycm93LWxlZnQ7IFxuICB9XG59XG4uaWNvbi1hcnJvdy1yaWdodCB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1hcnJvdy1yaWdodDsgXG4gIH1cbn1cbi5pY29uLWFycm93LXVwIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWFycm93LXVwOyBcbiAgfVxufVxuLmljb24tYXJyb3ctZG93biB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1hcnJvdy1kb3duOyBcbiAgfVxufVxuLmljb24tdm9sdW1lIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXZvbHVtZTsgXG4gIH1cbn1cbi5pY29uLXBob3RvcyB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1waG90b3M7IFxuICB9XG59XG4uaWNvbi1wbGF5MSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1wbGF5MTsgXG4gIH1cbn1cbi5pY29uLXNlYXJjaDEge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tc2VhcmNoMTsgXG4gIH1cbn1cbi5pY29uLXRlbGVncmFtMSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi10ZWxlZ3JhbTE7IFxuICB9XG59XG4uaWNvbi13aGF0c2FwcCB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi13aGF0c2FwcDsgXG4gIH1cbn1cbi5pY29uLXlvdXR1YmUge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24teW91dHViZTsgXG4gIH1cbn1cbi5pY29uLWxpbmtlZGluIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWxpbmtlZGluOyBcbiAgfVxufVxuLmljb24tZmFjZWJvb2sge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tZmFjZWJvb2s7IFxuICB9XG59XG4uaWNvbi1mYWNlYm9vazEge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tZmFjZWJvb2sxOyBcbiAgfVxufVxuLmljb24tdHdpdHRlci1vbGQge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tdHdpdHRlci1vbGQ7IFxuICB9XG59XG5cbiIsIiRpY29tb29uLWZvbnQtZmFtaWx5OiBcImljb21vb25cIiAhZGVmYXVsdDtcbiRpY29tb29uLWZvbnQtcGF0aDogXCIuLi9mb250c1wiICFkZWZhdWx0O1xuXG4kaWNvbi1saXZlOiBcIlxcZTk0MFwiO1xuJGljb24tY2hlY2stZ3JlZW46IFwiXFxlOTNjXCI7XG4kaWNvbi1wbHVzLWdyZWVuOiBcIlxcZTkzYlwiO1xuJGljb24tcGxheS1jaXJjbGU6IFwiXFxlOTM5XCI7XG4kaWNvbi1ob2xsb3ctY2hlY2s6IFwiXFxlOTMxXCI7XG4kaWNvbi1lYXJ0aDogXCJcXGU5NTNcIjtcbiRpY29uLWNvcHk6IFwiXFxlOTUxXCI7XG4kaWNvbi1ncmVlbi1jaGVjazogXCJcXGU5MzJcIjtcbiRpY29uLWZhY2Vib29rLWNvbG9yZWQ6IFwiXFxlOTM4XCI7XG4kaWNvbi1ib29rbWFyay1ncmVlbjogXCJcXGU5M2RcIjtcbiRpY29uLXVzZXItY2lyY2xlLW8tYmxhY2s6IFwiXFxlOTNmXCI7XG4kaWNvbi1zaWduLW91dDogXCJcXGU5NDhcIjtcbiRpY29uLWJvb2ttYXJrLW91dGxpbmU6IFwiXFxlOTRhXCI7XG4kaWNvbi1hcnJvdy1sZWZ0MzogXCJcXGU5NGZcIjtcbiRpY29uLWFycm93LWxlZnQ0OiBcIlxcZTk1MFwiO1xuJGljb24tYXBwbGUtY29sb3JlZDogXCJcXGU5M2VcIjtcbiRpY29uLW5ld3M6IFwiXFxlOTQyXCI7XG4kaWNvbi1leWUxOiBcIlxcZTk0M1wiO1xuJGljb24tbG9jazogXCJcXGU5NDRcIjtcbiRpY29uLWVudmVsb3AxOiBcIlxcZTk0NlwiO1xuJGljb24tZW52ZWxvcDI6IFwiXFxlOTQ3XCI7XG4kaWNvbi1lbnZlbG9wLWdyZWVuOiBcIlxcZTk0OVwiO1xuJGljb24tZHJhZy12ZXJ0aWNhbDogXCJcXGU5MzdcIjtcbiRpY29uLXNoYXJlMjogXCJcXGU5MzZcIjtcbiRpY29uLXNoYXJlOiBcIlxcZTkyN1wiO1xuJGljb24tdXBsb2FkOiBcIlxcZTk0MVwiO1xuJGljb24tdXNlci1jaXJjbGUtbzogXCJcXGU5M2FcIjtcbiRpY29uLWZpbGUtcGRmOiBcIlxcZTkzNVwiO1xuJGljb24tZGF0ZTogXCJcXGU5MjZcIjtcbiRpY29uLWV5ZTogXCJcXGU5MjhcIjtcbiRpY29uLXBsYXk6IFwiXFxlOTI5XCI7XG4kaWNvbi1wbGF5LWdyZWVuOiBcIlxcZTkyNVwiO1xuJGljb24tYXJjaGl2ZTogXCJcXGU5NGVcIjtcbiRpY29uLWFsYnVtOiBcIlxcZTk0NVwiO1xuJGljb24tYXJyb3ctcmlnaHQtYmxhY2s6IFwiXFxlOTI0XCI7XG4kaWNvbi1lZGl0OiBcIlxcZTk1MlwiO1xuJGljb24tY2FsZW5kYXI6IFwiXFxlOTIxXCI7XG4kaWNvbi1tZW51OiBcIlxcZTkyMlwiO1xuJGljb24tdHdpdHRlcjogXCJcXGU5NTVcIjtcbiRpY29uLXRpa3RvazogXCJcXGU5NTRcIjtcbiRpY29uLXRlbGVncmFtOiBcIlxcZTkwMVwiO1xuJGljb24tcGF1c2U6IFwiXFxlOTIzXCI7XG4kaWNvbi1pbnN0YWdyYW06IFwiXFxlOTFmXCI7XG4kaWNvbi1zZWFyY2g6IFwiXFxlOTAwXCI7XG4kaWNvbi1wcmludDogXCJcXGU5NGJcIjtcbiRpY29uLXByaW50MTogXCJcXGU5NGNcIjtcbiRpY29uLXByaW50MjogXCJcXGU5NGRcIjtcbiRpY29uLXdpbmQ6IFwiXFxlOTJhXCI7XG4kaWNvbi1jbG91ZHk6IFwiXFxlOTJiXCI7XG4kaWNvbi1yYWluOiBcIlxcZTkyY1wiO1xuJGljb24tbGlnaHRuaWdodDogXCJcXGU5MmRcIjtcbiRpY29uLXNub3c6IFwiXFxlOTJmXCI7XG4kaWNvbi13ZWF0aGVyOiBcIlxcZTkwZlwiO1xuJGljb24tZmlsZS1wZGYxOiBcIlxcZTkzNFwiO1xuJGljb24tbWljOiBcIlxcZTkzM1wiO1xuJGljb24tZmlyZTogXCJcXGU5MjBcIjtcbiRpY29uLWJvb2ttYXJrOiBcIlxcZTkyZVwiO1xuJGljb24tYm9va21hcmsxOiBcIlxcZTkzMFwiO1xuJGljb24taGVhZHBob25lOiBcIlxcZTkxZVwiO1xuJGljb24tY2FsZW5kYXIxOiBcIlxcZTkxNVwiO1xuJGljb24tdGltZTE6IFwiXFxlOTE4XCI7XG4kaWNvbi10aW1lOiBcIlxcZTkxOVwiO1xuJGljb24tY2lyY2xlOiBcIlxcZTkxNFwiO1xuJGljb24tY2xvc2U6IFwiXFxlOTEzXCI7XG4kaWNvbi1tZW51MTogXCJcXGU5MTBcIjtcbiRpY29uLXF1b3Rlcy1sZWZ0OiBcIlxcZTkxMVwiO1xuJGljb24tcXVvdGVzLXJpZ2h0OiBcIlxcZTkxMlwiO1xuJGljb24tYXJyb3ctcmlnaHQxOiBcIlxcZTkxYVwiO1xuJGljb24tYXJyb3ctZG93bjE6IFwiXFxlOTFiXCI7XG4kaWNvbi1hcnJvdy1sZWZ0MTogXCJcXGU5MWNcIjtcbiRpY29uLWFycm93LXVwMTogXCJcXGU5MWRcIjtcbiRpY29uLWFycm93LWxlZnQ6IFwiXFxlOTAyXCI7XG4kaWNvbi1hcnJvdy1yaWdodDogXCJcXGU5MDNcIjtcbiRpY29uLWFycm93LXVwOiBcIlxcZTkxN1wiO1xuJGljb24tYXJyb3ctZG93bjogXCJcXGU5MTZcIjtcbiRpY29uLXZvbHVtZTogXCJcXGU5MDRcIjtcbiRpY29uLXBob3RvczogXCJcXGU5MDVcIjtcbiRpY29uLXBsYXkxOiBcIlxcZTkwNlwiO1xuJGljb24tc2VhcmNoMTogXCJcXGU5MDdcIjtcbiRpY29uLXRlbGVncmFtMTogXCJcXGU5MDhcIjtcbiRpY29uLXdoYXRzYXBwOiBcIlxcZTkwOVwiO1xuJGljb24teW91dHViZTogXCJcXGU5MGJcIjtcbiRpY29uLWxpbmtlZGluOiBcIlxcZTkwYVwiO1xuJGljb24tZmFjZWJvb2s6IFwiXFxlOTBjXCI7XG4kaWNvbi1mYWNlYm9vazE6IFwiXFxlOTBkXCI7XG4kaWNvbi10d2l0dGVyLW9sZDogXCJcXGU5MGVcIjtcblxuIiwiJGZvbnQtcGF0aDogXCIuLi9mb250c1wiO1xuXG5AaW1wb3J0ICdpY29tb29uJztcblxuXG4vL3dlYmZvbnRzIGZvciBFTkdMSVNIIGFuZCBUVVJLSVNIXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ1NUSVggVHdvIFRleHQnO1xuICAgIHNyYzogdXJsKCcjeyRmb250LXBhdGh9L1NUSVhUd29UZXh0LVJlZ3VsYXIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgIHVybCgnI3skZm9udC1wYXRofS9TVElYVHdvVGV4dC1SZWd1bGFyLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgdXJsKCcjeyRmb250LXBhdGh9L1NUSVhUd29UZXh0LVJlZ3VsYXIudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdTVElYIFR3byBUZXh0JztcbiAgICBzcmM6IHVybCgnI3skZm9udC1wYXRofS9TVElYVHdvVGV4dC1NZWRpdW0ud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgIHVybCgnI3skZm9udC1wYXRofS9TVElYVHdvVGV4dC1NZWRpdW0ud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vU1RJWFR3b1RleHQtTWVkaXVtLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnU1RJWCBUd28gVGV4dCc7XG4gICAgc3JjOiB1cmwoJyN7JGZvbnQtcGF0aH0vU1RJWFR3b1RleHQtTWVkaXVtSXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vU1RJWFR3b1RleHQtTWVkaXVtSXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgdXJsKCcjeyRmb250LXBhdGh9L1NUSVhUd29UZXh0LU1lZGl1bUl0YWxpYy50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ1NUSVggVHdvIFRleHQnO1xuICAgIHNyYzogdXJsKCcjeyRmb250LXBhdGh9L1NUSVhUd29UZXh0LVNlbWlCb2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vU1RJWFR3b1RleHQtU2VtaUJvbGQud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vU1RJWFR3b1RleHQtU2VtaUJvbGQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdTVElYIFR3byBUZXh0JztcbiAgICBzcmM6IHVybCgnI3skZm9udC1wYXRofS9TVElYVHdvVGV4dC1Cb2xkSXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vU1RJWFR3b1RleHQtQm9sZEl0YWxpYy53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgIHVybCgnI3skZm9udC1wYXRofS9TVElYVHdvVGV4dC1Cb2xkSXRhbGljLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ1NUSVggVHdvIFRleHQnO1xuICAgIHNyYzogdXJsKCcjeyRmb250LXBhdGh9L1NUSVhUd29UZXh0LVNlbWlCb2xkSXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vU1RJWFR3b1RleHQtU2VtaUJvbGRJdGFsaWMud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vU1RJWFR3b1RleHQtU2VtaUJvbGRJdGFsaWMudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdTVElYIFR3byBUZXh0JztcbiAgICBzcmM6IHVybCgnI3skZm9udC1wYXRofS9TVElYVHdvVGV4dC1Cb2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vU1RJWFR3b1RleHQtQm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgIHVybCgnI3skZm9udC1wYXRofS9TVElYVHdvVGV4dC1Cb2xkLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ1NUSVggVHdvIFRleHQnO1xuICAgIHNyYzogdXJsKCcjeyRmb250LXBhdGh9L1NUSVhUd29UZXh0LUl0YWxpYy53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgdXJsKCcjeyRmb250LXBhdGh9L1NUSVhUd29UZXh0LUl0YWxpYy53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgICAgIHVybCgnI3skZm9udC1wYXRofS9TVElYVHdvVGV4dC1JdGFsaWMudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuXG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnT3Blbi1TYW5zJztcbiAgICBzcmM6IHVybCgnI3skZm9udC1wYXRofS9PcGVuU2Fucy1TZW1pYm9sZEl0YWxpYy53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgdXJsKCcjeyRmb250LXBhdGh9L09wZW5TYW5zLVNlbWlib2xkSXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIH1cbiAgXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnT3Blbi1TYW5zJztcbiAgICBzcmM6IHVybCgnI3skZm9udC1wYXRofS9PcGVuU2Fucy1TZW1pYm9sZC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgdXJsKCcjeyRmb250LXBhdGh9L09wZW5TYW5zLVNlbWlib2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIH1cbiAgXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnT3Blbi1TYW5zJztcbiAgICBzcmM6IHVybCgnI3skZm9udC1wYXRofS9PcGVuU2Fucy53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgdXJsKCcjeyRmb250LXBhdGh9L09wZW5TYW5zLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIH1cbiAgXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnT3Blbi1TYW5zJztcbiAgICBzcmM6IHVybCgnI3skZm9udC1wYXRofS9PcGVuU2Fucy1FeHRyYWJvbGRJdGFsaWMud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgIHVybCgnI3skZm9udC1wYXRofS9PcGVuU2Fucy1FeHRyYWJvbGRJdGFsaWMud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIH1cbiAgXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnT3Blbi1TYW5zJztcbiAgICBzcmM6IHVybCgnI3skZm9udC1wYXRofS9PcGVuU2Fuc0xpZ2h0LUl0YWxpYy53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgdXJsKCcjeyRmb250LXBhdGh9L09wZW5TYW5zTGlnaHQtSXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIH1cbiAgXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnT3Blbi1TYW5zJztcbiAgICBzcmM6IHVybCgnI3skZm9udC1wYXRofS9PcGVuU2Fucy1JdGFsaWMud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgIHVybCgnI3skZm9udC1wYXRofS9PcGVuU2Fucy1JdGFsaWMud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgfVxuICBcbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdPcGVuLVNhbnMnO1xuICAgIHNyYzogdXJsKCcjeyRmb250LXBhdGh9L09wZW5TYW5zLUV4dHJhYm9sZC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgdXJsKCcjeyRmb250LXBhdGh9L09wZW5TYW5zLUV4dHJhYm9sZC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgfVxuICBcbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdPcGVuLVNhbnMnO1xuICAgIHNyYzogdXJsKCcjeyRmb250LXBhdGh9L09wZW5TYW5zLUxpZ2h0LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vT3BlblNhbnMtTGlnaHQud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgfVxuICBcbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdPcGVuLVNhbnMnO1xuICAgIHNyYzogdXJsKCcjeyRmb250LXBhdGh9L09wZW5TYW5zLUJvbGQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgIHVybCgnI3skZm9udC1wYXRofS9PcGVuU2Fucy1Cb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICB9XG4gIFxuICBAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ09wZW4tU2Fucyc7XG4gICAgc3JjOiB1cmwoJyN7JGZvbnQtcGF0aH0vT3BlblNhbnMtQm9sZEl0YWxpYy53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICAgdXJsKCcjeyRmb250LXBhdGh9L09wZW5TYW5zLUJvbGRJdGFsaWMud29mZicpIGZvcm1hdCgnd29mZicpO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIH0iLCIvLyAgRm91bmRhdGlvbiBmb3IgU2l0ZXMgU2V0dGluZ3Ncbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cbi8vICBUYWJsZSBvZiBDb250ZW50czpcbi8vXG4vLyAgIDEuIEdsb2JhbFxuLy8gICAyLiBCcmVha3BvaW50c1xuLy8gICAzLiBUaGUgR3JpZFxuLy8gICA0LiBCYXNlIFR5cG9ncmFwaHlcbi8vICAgNS4gVHlwb2dyYXBoeSBIZWxwZXJzXG4vLyAgIDYuIEFiaWRlXG4vLyAgIDcuIEFjY29yZGlvblxuLy8gICA4LiBBY2NvcmRpb24gTWVudVxuLy8gICA5LiBCYWRnZVxuLy8gIDEwLiBCcmVhZGNydW1ic1xuLy8gIDExLiBCdXR0b25cbi8vICAxMi4gQnV0dG9uIEdyb3VwXG4vLyAgMTMuIENhbGxvdXRcbi8vICAxNC4gQ2FyZFxuLy8gIDE1LiBDbG9zZSBCdXR0b25cbi8vICAxNi4gRHJpbGxkb3duXG4vLyAgMTcuIERyb3Bkb3duXG4vLyAgMTguIERyb3Bkb3duIE1lbnVcbi8vICAxOS4gRmxleGJveCBVdGlsaXRpZXNcbi8vICAyMC4gRm9ybXNcbi8vICAyMS4gTGFiZWxcbi8vICAyMi4gTWVkaWEgT2JqZWN0XG4vLyAgMjMuIE1lbnVcbi8vICAyNC4gTWV0ZXJcbi8vICAyNS4gT2ZmLWNhbnZhc1xuLy8gIDI2LiBPcmJpdFxuLy8gIDI3LiBQYWdpbmF0aW9uXG4vLyAgMjguIFByb2dyZXNzIEJhclxuLy8gIDI5LiBQcm90b3R5cGUgQXJyb3dcbi8vICAzMC4gUHJvdG90eXBlIEJvcmRlci1Cb3hcbi8vICAzMS4gUHJvdG90eXBlIEJvcmRlci1Ob25lXG4vLyAgMzIuIFByb3RvdHlwZSBCb3JkZXJlZFxuLy8gIDMzLiBQcm90b3R5cGUgRGlzcGxheVxuLy8gIDM0LiBQcm90b3R5cGUgRm9udC1TdHlsaW5nXG4vLyAgMzUuIFByb3RvdHlwZSBMaXN0LVN0eWxlLVR5cGVcbi8vICAzNi4gUHJvdG90eXBlIE92ZXJmbG93XG4vLyAgMzcuIFByb3RvdHlwZSBQb3NpdGlvblxuLy8gIDM4LiBQcm90b3R5cGUgUm91bmRlZFxuLy8gIDM5LiBQcm90b3R5cGUgU2VwYXJhdG9yXG4vLyAgNDAuIFByb3RvdHlwZSBTaGFkb3dcbi8vICA0MS4gUHJvdG90eXBlIFNpemluZ1xuLy8gIDQyLiBQcm90b3R5cGUgU3BhY2luZ1xuLy8gIDQzLiBQcm90b3R5cGUgVGV4dC1EZWNvcmF0aW9uXG4vLyAgNDQuIFByb3RvdHlwZSBUZXh0LVRyYW5zZm9ybWF0aW9uXG4vLyAgNDUuIFByb3RvdHlwZSBUZXh0LVV0aWxpdGllc1xuLy8gIDQ2LiBSZXNwb25zaXZlIEVtYmVkXG4vLyAgNDcuIFJldmVhbFxuLy8gIDQ4LiBTbGlkZXJcbi8vICA0OS4gU3dpdGNoXG4vLyAgNTAuIFRhYmxlXG4vLyAgNTEuIFRhYnNcbi8vICA1Mi4gVGh1bWJuYWlsXG4vLyAgNTMuIFRpdGxlIEJhclxuLy8gIDU0LiBUb29sdGlwXG4vLyAgNTUuIFRvcCBCYXJcbi8vICA1Ni4gWHkgR3JpZFxuXG5AaW1wb3J0IFwidXRpbC91dGlsXCI7XG5cbi8vIEZvbnQgVmFyaWFibGVzXG4vLyAkZm9udC1wcmltYXJ5OiBcIkFsbWFyYWlcIiAhZGVmYXVsdDtcbi8vICRmb250LXNlY29uZGFyeTogXCJJQk1QbGV4U2Fuc0FyYWJpY1wiICFkZWZhdWx0O1xuJGZvbnQtcHJpbWFyeTogXCJBd3NhdCBEaWdpdGFsXCIgIWRlZmF1bHQ7XG4kZm9udC1zZWNvbmRhcnk6IFwiRWZmcmFcIiAhZGVmYXVsdDtcbiRmb250LWFsdDogXCJCZWlydXRcIiAhZGVmYXVsdDtcbiRmb250LWJvZHk6IFwic2tvbGFyLXNhbnMtYXJhYmljXCIgIWRlZmF1bHQ7XG5cbi8vIGZvbnRzaXplIG9mIGVsZW1lbnRzXG4kaGlnaGxpZ2h0cy10aXRsZS1zaXplOiByZW0tY2FsYygxMik7XG4kbWFpbi1oZWFkZXItYmVmb3JlLXNpemU6IHJlbS1jYWxjKDEzKTtcbiR0YWdzLXNwYW4tc2l6ZTogcmVtLWNhbGMoMjIpICFkZWZhdWx0O1xuJHRhZ3MtYnV0dG9uLXNpemU6IHJlbS1jYWxjKDE4KSAhZGVmYXVsdDtcblxuLy8gLS0tLS0tLS0tXG5cbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlO1xuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTQwMCk7IC8vMTM2My8vIDE0MDAgLy8gMTM1OCArIDQxXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuOCAhZGVmYXVsdDtcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgcHJpbWFyeTogIzJjOGE4MixcbiAgc2Vjb25kYXJ5OiAjNGQ5OThhLFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2JkM2MyZixcbik7XG5cbiRkYXJrLWdyZWVuOiAjMDA2MDU3O1xuJHByaW1hcnktZ3JlZW46ICMyYzhhODI7XG4kbGlnaHQtZ3JlZW46ICNkMWRlZGQ7XG5cbiR3aGl0ZTogI2ZmZmZmZjtcbiRBNTA6ICNmOWZiZmI7XG4kQTEwMDogI2U5ZjJlZjtcbiRBMjAwOiAjZWFlY2YwO1xuJEEzMDA6ICNkMmU0ZTM7XG4kQTgwMDogIzE3MmYyZjtcblxuLypvayovXG4kcHJpbWFyeS1kYXJrOiAjMjUzYzNhO1xuJHByaW1hcnktbGlnaHQ6ICNmN2ZhZmE7XG4kYm9keS1iYWNrZ3JvdW5kLWNvbG9yOiAjZTlmMmVmO1xuXG4kYmxhY2s6ICMwMDAwMDA7XG5cbiR3aGl0ZS1zbW9rZTogI2Y3ZmFmYTtcbiRncmF5OiAjNzE3MTcxO1xuJGxpZ2h0LWdyYXk6ICNkY2RmZGY7XG4kbWVkaXVtLWdyYXk6ICM5NTkyOTI7XG4kZGFyay1ncmF5OiAjNTU1NTU1O1xuJGF0aGVucy1jb2xvcjogI2RjZTBlMDtcbiRzZXBhcmF0b3ItY29sb3I6ICNkMWQ1ZDU7XG4kcmVkOiAjYmQzYzJmO1xuJGVycm9yOiAjZGY2ZDNmO1xuJGxpZ2h0LWdyZWVuMTogI2Q5ZWRlYjtcblxuJGlucHV0LWJvcmRlci1jb2xvcjogJGxpZ2h0LWdyYXk7XG4kaGVhZGVyLWJvcmRlci1jb2xvcjogJGxpZ2h0LWdyYXk7XG4kbmF2cGFuZWwtY29sb3I6ICRwcmltYXJ5LWRhcms7XG4kZm9vdGVyLWJvcmRlci1jb2xvcjogJHByaW1hcnktZGFyaztcblxuJGFib3V0MTogI2YwZWRlMztcbiRhYm91dDI6ICNlZmVjZTI7XG5cbi8qZW5kIG9rKi9cbiRzcHJpbmctd29vZDogI2Y2ZjVlZTtcblxuJGR1c3R5LWdyYXk6ICM4YTM4Mzg7XG4kZW1wZXJvcjogIzU1NTU1NTtcblxuJGplbGx5LWJlYW46ICMyNDk1OTg7XG4kbGltZWQtc3BydWNlOiAjMzk0OTRjO1xuJG5ldmFkYTogIzVmNzE3NjtcbiRzdXNoaTogIzdkYWMzYztcbiRtYWl6ZTogI2Y0ZDQ5ZTtcbiRsaWdodC1ibHVlOiAjZTNlZWY1O1xuXG4keWVsbG93OiAjZWViZjA0O1xuJHdoaXRlMjogI2YyZjJmMjtcbiRibGFjazI6ICM0ZDRkNGQ7XG5cbiRzZWNvbmRhcnktZGFyazogIzFhMzMzMztcblxuJHByaW1hcnktZm9udC1saWdodDogI2IxYzBjMDtcbiRwcmltYXJ5LWZvbnQtbWVkaXVtOiAkbWVkaXVtLWdyYXk7XG4kcHJpbWFyeS1hbmNob3ItbGlnaHQ6ICNjMGQ3ZDI7XG5cbiRib2R5LWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQtY29sb3I7XG4kYm9keS1mb250LWNvbG9yOiAkYmxhY2s7XG4kYm9keS1mb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSwgSGVsdmV0aWNhIE5ldWUsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCxcbiAgc2Fucy1zZXJpZjtcbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlO1xuJGdsb2JhbC1tYXJnaW46IDFyZW07XG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW07XG4kZ2xvYmFsLXBvc2l0aW9uOiAxcmVtO1xuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWw7XG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkO1xuJGdsb2JhbC1yYWRpdXM6IDA7XG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW07XG4kZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjogMXJlbTtcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IHJ0bCAhZGVmYXVsdDtcbiRkZWZhdWx0LWRpcmVjdGlvbjogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PXJ0bCwgcmlnaHQsIGxlZnQpO1xuJG9wcG9zaXRlLWRpcmVjdGlvbjogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PXJ0bCwgbGVmdCwgcmlnaHQpO1xuJGdsb2JhbC1mbGV4Ym94OiB0cnVlO1xuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlO1xuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvO1xuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMDtcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZTtcbiRwcmludC1ocmVmczogdHJ1ZTtcblxuJGZhY2Vib29rOiAjNTE2OGE0O1xuJHR3aXR0ZXI6ICMwMGE2ZDQ7XG4kbGlua2VkaW46ICMwMDdiYjU7XG4kZ3BsdXM6ICNkZDRiMzk7XG4kcGludGVyZXN0OiAjY2IyMDI3O1xuJHJzczogI2ZhOWIzOTtcbiR5b3V0dWJlOiAjYmIwMDAwO1xuJGluc3RhZ3JhbTogI2E2M2YxZjtcbiRsaW5rZWRpbjogIzAwN2JiNjtcbiRlbnZlbG9wZTogI2FhYWFhYTtcbiR3aGF0c2FwcDogIzJiYjM3YztcbiRzbmFwY2hhdDogI2ZmZmMwMDtcbiR0ZWxlZ3JhbTogIzJjYTVlMDtcblxuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG4vLyAyLiBCcmVha3BvaW50c1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKTtcbiRicmVha3BvaW50cy1oaWRwaTogKFxuICBoaWRwaS0xOiAxLFxuICBoaWRwaS0xLTU6IDEuNSxcbiAgaGlkcGktMjogMixcbiAgcmV0aW5hOiAyLFxuICBoaWRwaS0zOiAzLFxuKTtcbiRwcmludC1icmVha3BvaW50OiBsYXJnZTtcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UgeGxhcmdlKTtcblxuJG5ldGJvb2std2lkdGg6IDEwMjRweDtcbiRub3RlYm9vay13aWR0aDogMTM2OXB4O1xuXG5AbWl4aW4gbmJvb2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogI3skbmV0Ym9vay13aWR0aH0pIGFuZCAobWF4LXdpZHRoOiAjeyRub3RlYm9vay13aWR0aCAtIDFweH0pIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyAzLiBUaGUgR3JpZFxuLy8gLS0tLS0tLS0tLS1cblxuJGdyaWQtcm93LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtY29sdW1uLWNvdW50OiAxMjtcbiRncmlkLWNvbHVtbi1ndXR0ZXI6IChcbiAgc21hbGw6IDIwcHgsXG4gIG1lZGl1bTogNDFweCxcbik7XG4kZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZTogdHJ1ZTtcbiRncmlkLWNvbHVtbi1hbGlhczogXCJjb2x1bW5zXCI7XG4kYmxvY2stZ3JpZC1tYXg6IDg7XG5cbi8vIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG4kcGFyYWdyYXBoLWZvbnQtc2l6ZTogMTVweCAhZGVmYXVsdDtcblxuJGhlYWRlci1mb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSwgSGVsdmV0aWNhIE5ldWUsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCxcbiAgc2Fucy1zZXJpZjtcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiRoZWFkZXItY29sb3I6IGluaGVyaXQ7XG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuJGhlYWRlci1zdHlsZXM6IChcbiAgc21hbGw6IChcbiAgICBcImgxXCI6IChcbiAgICAgIFwiZm9udC1zaXplXCI6IDMyLFxuICAgICksXG4gICAgXCJoMlwiOiAoXG4gICAgICBcImZvbnQtc2l6ZVwiOiAyMixcbiAgICApLFxuICAgIFwiaDNcIjogKFxuICAgICAgXCJmb250LXNpemVcIjogMTgsXG4gICAgKSxcbiAgICAvLzIwXG4gICAgXCJoNFwiOlxuICAgICAgKFxuICAgICAgICBcImZvbnQtc2l6ZVwiOiAxNixcbiAgICAgICksXG4gICAgLy8yOFxuICAgIFwiaDVcIjpcbiAgICAgIChcbiAgICAgICAgXCJmb250LXNpemVcIjogMTUsXG4gICAgICApLFxuICAgIFwiaDZcIjogKFxuICAgICAgXCJmb250LXNpemVcIjogMTQsXG4gICAgKSxcbiAgKSxcbiAgbWVkaXVtOiAoXG4gICAgXCJoMVwiOiAoXG4gICAgICBcImZvbnQtc2l6ZVwiOiA1MCxcbiAgICApLFxuICAgIFwiaDJcIjogKFxuICAgICAgXCJmb250LXNpemVcIjogMjIsXG4gICAgKSxcbiAgICAvLzI0XG4gICAgXCJoM1wiOlxuICAgICAgKFxuICAgICAgICBcImZvbnQtc2l6ZVwiOiAxOCxcbiAgICAgICksXG4gICAgLy8yMlxuICAgIFwiaDRcIjpcbiAgICAgIChcbiAgICAgICAgXCJmb250LXNpemVcIjogMTYsXG4gICAgICApLFxuICAgIC8vIDIwXG4gICAgXCJoNVwiOlxuICAgICAgKFxuICAgICAgICBcImZvbnQtc2l6ZVwiOiAxNSxcbiAgICAgICksXG4gICAgLy8gMThcbiAgICBcImg2XCI6XG4gICAgICAoXG4gICAgICAgIFwiZm9udC1zaXplXCI6IDE0LFxuICAgICAgKSxcbiAgICAvLzE1XG4gICAgLy9oNCB0byBoNVxuICAgIC8vaDUgdG8gaDQsXG4gICksXG4pICFkZWZhdWx0O1xuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuJHNtYWxsLWZvbnQtc2l6ZTogODAlO1xuJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNjtcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbTtcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRlbmFibGUtY29kZS1pbmxpbmU6IHRydWU7XG4kYW5jaG9yLWNvbG9yOiAkYmxhY2s7XG4kYW5jaG9yLWNvbG9yLWhvdmVyOiAkcHJpbWFyeS1jb2xvcjtcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmU7XG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kaHItYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG87XG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtO1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpO1xuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGVuYWJsZS1jaXRlLWJsb2NrOiB0cnVlO1xuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrO1xuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApO1xuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjaztcblxuLy8gNS4gVHlwb2dyYXBoeSBIZWxwZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjU7XG4kbGVhZC1saW5laGVpZ2h0OiAxLjY7XG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNDtcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXk7XG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbTtcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuJHN0YXQtZm9udC1zaXplOiAyLjVyZW07XG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRjaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6IFwiXFwyMDE0IFxcMDAyMFwiO1xuJGNvZGUtY29sb3I6ICRibGFjaztcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpO1xuJGNvZGUtYmxvY2stcGFkZGluZzogMXJlbTtcbiRjb2RlLWJsb2NrLW1hcmdpbi1ib3R0b206IDEuNXJlbTtcblxuLy8gNi4gQWJpZGVcbi8vIC0tLS0tLS0tXG5cbiRhYmlkZS1pbnB1dHM6IHRydWU7XG4kYWJpZGUtbGFiZWxzOiB0cnVlO1xuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCk7XG4kaW5wdXQtZXJyb3ItY29sb3I6IGdldC1jb2xvcihhbGVydCk7XG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cbi8vIDcuIEFjY29yZGlvblxuLy8gLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlO1xuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWU7XG4kYWNjb3JkaW9uLXBsdXMtY29udGVudDogXCJcXDAwMkJcIjtcbiRhY2NvcmRpb24tbWludXMtY29udGVudDogXCJcXDIwMTNcIjtcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcblxuLy8gOC4gQWNjb3JkaW9uIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW47XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmc7XG4kYWNjb3JkaW9ubWVudS1hcnJvd3M6IHRydWU7XG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQ6IG51bGw7XG4kYWNjb3JkaW9ubWVudS1ib3JkZXI6IG51bGw7XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kOiBudWxsO1xuJGFjY29yZGlvbi1zdWJtZW51LXRvZ2dsZS1ib3JkZXI6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoOiA0MHB4O1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtaGVpZ2h0OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDtcbiRhY2NvcmRpb25tZW51LWFycm93LXNpemU6IDZweDtcblxuLy8gOS4gQmFkZ2Vcbi8vIC0tLS0tLS0tXG5cbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRiYWRnZS1jb2xvcjogJHdoaXRlO1xuJGJhZGdlLWNvbG9yLWFsdDogJGJsYWNrO1xuJGJhZGdlLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYmFkZ2UtcGFkZGluZzogMC4zZW07XG4kYmFkZ2UtbWlud2lkdGg6IDIuMWVtO1xuJGJhZGdlLWZvbnQtc2l6ZTogMC42cmVtO1xuXG4vLyAxMC4gQnJlYWRjcnVtYnNcbi8vIC0tLS0tLS0tLS0tLS0tLVxuXG4kYnJlYWRjcnVtYnMtbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDogJGJsYWNrO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbTtcbiRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZTogdHJ1ZTtcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvcjogdHJ1ZTtcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtOiBcIi9cIjtcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bDogXCJcXFxcXCI7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I6ICRtZWRpdW0tZ3JheTtcblxuLy8gMTEuIEJ1dHRvblxuLy8gLS0tLS0tLS0tLVxuXG4kYnV0dG9uLWZvbnQtZmFtaWx5OiBpbmhlcml0O1xuJGJ1dHRvbi1mb250LXdlaWdodDogbnVsbDtcbiRidXR0b24tcGFkZGluZzogMC44NWVtIDJlbTtcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRidXR0b24tZmlsbDogc29saWQ7XG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xuJGJ1dHRvbi1jb2xvcjogJHdoaXRlO1xuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjaztcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRidXR0b24tYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4kYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGg6IDFweDtcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbik7XG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlO1xuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlO1xuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiRidXR0b24tcmVzcG9uc2l2ZS1leHBhbmRlZDogZmFsc2U7XG5cbi8vIDEyLiBCdXR0b24gR3JvdXBcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbTtcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHg7XG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6IFwiLmJ1dHRvblwiO1xuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDY7XG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWU7XG5cbi8vIDEzLiBDYWxsb3V0XG4vLyAtLS0tLS0tLS0tLVxuXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGU6IDAlO1xuJGNhbGxvdXQtYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIDAuMjUpO1xuJGNhbGxvdXQtbWFyZ2luOiAwIDAgMXJlbSAwO1xuJGNhbGxvdXQtc2l6ZXM6IChcbiAgc21hbGw6IDAuNXJlbSxcbiAgZGVmYXVsdDogMXJlbSxcbiAgbGFyZ2U6IDNyZW0sXG4pO1xuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kO1xuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRjYWxsb3V0LWxpbmstdGludDogMzAlO1xuLy8gMTQuIENhcmRcbi8vIC0tLS0tLS0tXG5cbiRjYXJkLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRjYXJkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kY2FyZC1kaXZpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGNhcmQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4kY2FyZC1zaGFkb3c6IG5vbmU7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRjYXJkLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRjYXJkLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuXG4vLyAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRjbG9zZWJ1dHRvbi1wb3NpdGlvbjogcmlnaHQgdG9wO1xuJGNsb3NlYnV0dG9uLXotaW5kZXg6IDEwO1xuJGNsb3NlYnV0dG9uLWRlZmF1bHQtc2l6ZTogbWVkaXVtO1xuJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsOiAoXG4gIHNtYWxsOiAwLjY2cmVtLFxuICBtZWRpdW06IDFyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKFxuICBzbWFsbDogMC4zM2VtLFxuICBtZWRpdW06IDAuNXJlbSxcbik7XG4kY2xvc2VidXR0b24tc2l6ZTogKFxuICBzbWFsbDogMS41ZW0sXG4gIG1lZGl1bTogMmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0OiAxO1xuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyOiAkYmxhY2s7XG5cbi8vIDE2LiBEcmlsbGRvd25cbi8vIC0tLS0tLS0tLS0tLS1cblxuJGRyaWxsZG93bi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyO1xuJGRyaWxsZG93bi1hcnJvd3M6IHRydWU7XG4kZHJpbGxkb3duLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJGRyaWxsZG93bi1uZXN0ZWQtbWFyZ2luOiAwO1xuJGRyaWxsZG93bi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kZHJpbGxkb3duLXN1Ym1lbnUtcGFkZGluZzogJGRyaWxsZG93bi1wYWRkaW5nO1xuJGRyaWxsZG93bi1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcmlsbGRvd24tYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGRyaWxsZG93bi1hcnJvdy1zaXplOiA2cHg7XG5cbi8vIDE3LiBEcm9wZG93blxuLy8gLS0tLS0tLS0tLS0tXG5cbiRkcm9wZG93bi1wYWRkaW5nOiAxcmVtO1xuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG4kZHJvcGRvd24tYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogMXJlbTtcbiRkcm9wZG93bi13aWR0aDogMzAwcHg7XG4kZHJvcGRvd24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRkcm9wZG93bi1zaXplczogKFxuICB0aW55OiAxMDBweCxcbiAgc21hbGw6IDIwMHB4LFxuICBsYXJnZTogNDAwcHgsXG4pO1xuXG4vLyAxOC4gRHJvcGRvd24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cblxuJGRyb3Bkb3dubWVudS1hcnJvd3M6IHRydWU7XG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplOiA2cHg7XG4kZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc6IDEuNXJlbTtcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweDtcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogbnVsbDtcbiRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kZHJvcGRvd25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJGRyb3Bkb3dubWVudS1uZXN0ZWQtbWFyZ2luOiAwO1xuJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZztcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IHRyYW5zcGFyZW50O1xuXG4vLyAxOS4gRmxleGJveCBVdGlsaXRpZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQ6IDY7XG4kZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzOiB0cnVlO1xuXG4vLyAyMC4gRm9ybXNcbi8vIC0tLS0tLS0tLVxuXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApO1xuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpO1xuJGZvcm0tc3BhY2luZzogcmVtLWNhbGMoMTYpO1xuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2s7XG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljO1xuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtO1xuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjaztcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjg7XG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kaW5wdXQtY29sb3I6ICRibGFjaztcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJG1lZGl1bS1ncmF5O1xuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0O1xuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlO1xuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuJGlucHV0LXBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyO1xuJGlucHV0LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAwLjEpO1xuJGlucHV0LXNoYWRvdy1mb2N1czogMCAwIDVweCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZDtcbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWU7XG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRmb3JtLWJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyMS4gTGFiZWxcbi8vIC0tLS0tLS0tLVxuXG4kbGFiZWwtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kbGFiZWwtY29sb3I6ICR3aGl0ZTtcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjaztcbiRsYWJlbC1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGxhYmVsLWZvbnQtc2l6ZTogMC44cmVtO1xuJGxhYmVsLXBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xuJGxhYmVsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDIyLiBNZWRpYSBPYmplY3Rcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ6IDEwMCU7XG5cbi8vIDIzLiBNZW51XG4vLyAtLS0tLS0tLVxuXG4kbWVudS1tYXJnaW46IDA7XG4kbWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjtcbiRtZW51LWl0ZW1zLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJG1lbnUtc2ltcGxlLW1hcmdpbjogMXJlbTtcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGU7XG4kbWVudS1pdGVtLWNvbG9yLWFsdC1hY3RpdmU6ICRibGFjaztcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbTtcbiRtZW51LXN0YXRlLWJhY2stY29tcGF0OiB0cnVlO1xuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWU7XG4kbWVudS1pY29ucy1iYWNrLWNvbXBhdDogdHJ1ZTtcblxuLy8gMjQuIE1ldGVyXG4vLyAtLS0tLS0tLS1cblxuJG1ldGVyLWhlaWdodDogMXJlbTtcbiRtZXRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJG1ldGVyLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRtZXRlci1maWxsLWdvb2Q6ICRzdWNjZXNzLWNvbG9yO1xuJG1ldGVyLWZpbGwtbWVkaXVtOiAkd2FybmluZy1jb2xvcjtcbiRtZXRlci1maWxsLWJhZDogJGFsZXJ0LWNvbG9yO1xuXG4vLyAyNS4gT2ZmLWNhbnZhc1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJG9mZmNhbnZhcy1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pO1xuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pO1xuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRvZmZjYW52YXMtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgMC43KTtcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemU6IDIwcHg7XG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpO1xuJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleDogMTE7XG4kb2ZmY2FudmFzLXB1c2gtemluZGV4OiAxMjtcbiRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6IDEzO1xuJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4OiAxMjtcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGg6IDAuNXM7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nOiBlYXNlO1xuJG9mZmNhbnZhcy1maXhlZC1yZXZlYWw6IHRydWU7XG4kb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMjUpO1xuJG1haW5jb250ZW50LWNsYXNzOiBcIm9mZi1jYW52YXMtY29udGVudFwiO1xuXG4vLyAyNi4gT3JiaXRcbi8vIC0tLS0tLS0tLVxuXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU6ICRkYXJrLWdyYXk7XG4kb3JiaXQtYnVsbGV0LWRpYW1ldGVyOiAxLjJyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b206IDAuOHJlbTtcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpO1xuJG9yYml0LWNhcHRpb24tcGFkZGluZzogMXJlbTtcbiRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI6IHJnYmEoJGJsYWNrLCAwLjUpO1xuJG9yYml0LWNvbnRyb2wtcGFkZGluZzogMXJlbTtcbiRvcmJpdC1jb250cm9sLXppbmRleDogMTA7XG5cbi8vIDI3LiBQYWdpbmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrO1xuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKTtcbiRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZzogcmVtLWNhbGMoMSk7XG4kcGFnaW5hdGlvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50OiAkcHJpbWFyeS1jb2xvcjtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJHdoaXRlO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjaztcbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2U7XG4kcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtOiBmYWxzZTtcbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZTtcbiRwYWdpbmF0aW9uLWFycm93LXByZXZpb3VzOiBcIlxcMDBBQlwiO1xuJHBhZ2luYXRpb24tYXJyb3ctbmV4dDogXCJcXDAwQkJcIjtcblxuLy8gMjguIFByb2dyZXNzIEJhclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAxcmVtO1xuJHByb2dyZXNzLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRwcm9ncmVzcy1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRwcm9ncmVzcy1tZXRlci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRwcm9ncmVzcy1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyOS4gUHJvdG90eXBlIEFycm93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYXJyb3ctZGlyZWN0aW9uczogKGRvd24sIHVwLCByaWdodCwgbGVmdCk7XG4kcHJvdG90eXBlLWFycm93LXNpemU6IDAuNDM3NXJlbTtcbiRwcm90b3R5cGUtYXJyb3ctY29sb3I6ICRibGFjaztcblxuLy8gMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1ib3JkZXItYm94LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcblxuLy8gMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlci1ub25lLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcblxuLy8gMzIuIFByb3RvdHlwZSBCb3JkZXJlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlcmVkLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtYm9yZGVyLXdpZHRoOiByZW0tY2FsYygxKTtcbiRwcm90b3R5cGUtYm9yZGVyLXR5cGU6IHNvbGlkO1xuJHByb3RvdHlwZS1ib3JkZXItY29sb3I6ICRtZWRpdW0tZ3JheTtcblxuLy8gMzMuIFByb3RvdHlwZSBEaXNwbGF5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1kaXNwbGF5LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtZGlzcGxheTogKGlubGluZSwgaW5saW5lLWJsb2NrLCBibG9jaywgdGFibGUsIHRhYmxlLWNlbGwpO1xuXG4vLyAzNC4gUHJvdG90eXBlIEZvbnQtU3R5bGluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1mb250LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtd2lkZS1sZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoNCk7XG4kcHJvdG90eXBlLWZvbnQtbm9ybWFsOiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kcHJvdG90eXBlLWZvbnQtYm9sZDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuLy8gMzUuIFByb3RvdHlwZSBMaXN0LVN0eWxlLVR5cGVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtbGlzdC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXN0eWxlLXR5cGUtdW5vcmRlcmVkOiAoZGlzYywgY2lyY2xlLCBzcXVhcmUpO1xuJHByb3RvdHlwZS1zdHlsZS10eXBlLW9yZGVyZWQ6IChcbiAgZGVjaW1hbCxcbiAgbG93ZXItYWxwaGEsXG4gIGxvd2VyLWxhdGluLFxuICBsb3dlci1yb21hbixcbiAgdXBwZXItYWxwaGEsXG4gIHVwcGVyLWxhdGluLFxuICB1cHBlci1yb21hblxuKTtcblxuLy8gMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLW92ZXJmbG93LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtb3ZlcmZsb3c6ICh2aXNpYmxlLCBoaWRkZW4sIHNjcm9sbCk7XG5cbi8vIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1wb3NpdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXBvc2l0aW9uOiAoc3RhdGljLCByZWxhdGl2ZSwgYWJzb2x1dGUsIGZpeGVkKTtcbiRwcm90b3R5cGUtcG9zaXRpb24tei1pbmRleDogOTc1O1xuXG4vLyAzOC4gUHJvdG90eXBlIFJvdW5kZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXJvdW5kZWQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3JkZXItcmFkaXVzOiByZW0tY2FsYygzKTtcblxuLy8gMzkuIFByb3RvdHlwZSBTZXBhcmF0b3Jcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWFsaWduOiBjZW50ZXI7XG4kcHJvdG90eXBlLXNlcGFyYXRvci1oZWlnaHQ6IHJlbS1jYWxjKDIpO1xuJHByb3RvdHlwZS1zZXBhcmF0b3Itd2lkdGg6IDNyZW07XG4kcHJvdG90eXBlLXNlcGFyYXRvci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLW1hcmdpbi10b3A6ICRnbG9iYWwtbWFyZ2luO1xuXG4vLyA0MC4gUHJvdG90eXBlIFNoYWRvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zaGFkb3ctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3gtc2hhZG93OiAwIDJweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTYpLFxuICAwIDJweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKTtcblxuLy8gNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2l6aW5nLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc2l6aW5nOiAod2lkdGgsIGhlaWdodCk7XG4kcHJvdG90eXBlLXNpemVzOiAoXG4gIDI1OiAyNSUsXG4gIDUwOiA1MCUsXG4gIDc1OiA3NSUsXG4gIDEwMDogMTAwJSxcbik7XG5cbi8vIDQyLiBQcm90b3R5cGUgU3BhY2luZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc3BhY2luZy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXNwYWNlcnMtY291bnQ6IDM7XG5cbi8vIDQzLiBQcm90b3R5cGUgVGV4dC1EZWNvcmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWRlY29yYXRpb24tYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS10ZXh0LWRlY29yYXRpb246IChvdmVybGluZSwgdW5kZXJsaW5lLCBsaW5lLXRocm91Z2gpO1xuXG4vLyA0NC4gUHJvdG90eXBlIFRleHQtVHJhbnNmb3JtYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXRyYW5zZm9ybWF0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtdGV4dC10cmFuc2Zvcm1hdGlvbjogKGxvd2VyY2FzZSwgdXBwZXJjYXNlLCBjYXBpdGFsaXplKTtcblxuLy8gNDUuIFByb3RvdHlwZSBUZXh0LVV0aWxpdGllc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXV0aWxpdGllcy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXG4vLyA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zOiAoXG4gIGRlZmF1bHQ6IDQgYnkgMyxcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcbik7XG5cbi8vIDQ3LiBSZXZlYWxcbi8vIC0tLS0tLS0tLS1cblxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kcmV2ZWFsLXdpZHRoOiA2MDBweDtcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRyZXZlYWwtemluZGV4OiAxMDA1O1xuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KTtcblxuLy8gNDguIFNsaWRlclxuLy8gLS0tLS0tLS0tLVxuXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW07XG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuJHNsaWRlci1oZWlnaHQ6IDAuNXJlbTtcbiRzbGlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kc2xpZGVyLWZpbGwtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHNsaWRlci1oYW5kbGUtaGVpZ2h0OiAxLjRyZW07XG4kc2xpZGVyLWhhbmRsZS13aWR0aDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kc2xpZGVyLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kc2xpZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDQ5LiBTd2l0Y2hcbi8vIC0tLS0tLS0tLS1cblxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvcjtcbiRzd2l0Y2gtaGVpZ2h0OiAycmVtO1xuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtO1xuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW07XG4kc3dpdGNoLWhlaWdodC1sYXJnZTogMi41cmVtO1xuJHN3aXRjaC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHN3aXRjaC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xuJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtO1xuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcbiRzd2l0Y2gtb3BhY2l0eS1kaXNhYmxlZDogMC41O1xuJHN3aXRjaC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xuXG4vLyA1MC4gVGFibGVcbi8vIC0tLS0tLS0tLVxuXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JTtcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKTtcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiU7XG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKFxuICAkdGFibGUtYmFja2dyb3VuZCxcbiAgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlXG4pO1xuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWU7XG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1zdHJpcGU6IGV2ZW47XG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMik7XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlO1xuJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcblxuLy8gNTEuIFRhYnNcbi8vIC0tLS0tLS0tXG5cbiR0YWItbWFyZ2luOiAwO1xuJHRhYi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFiLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiR0YWItYmFja2dyb3VuZC1hY3RpdmU6ICRsaWdodC1ncmF5O1xuJHRhYi1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJHRhYi1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZTtcbiR0YWItaXRlbS1wYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiR0YWItY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheTtcbiR0YWItY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtO1xuXG4vLyA1Mi4gVGh1bWJuYWlsXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiR0aHVtYm5haWwtYm9yZGVyOiA0cHggc29saWQgJHdoaXRlO1xuJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMik7XG4kdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjogMCAwIDZweCAxcHggcmdiYSgkcHJpbWFyeS1jb2xvciwgMC41KTtcbiR0aHVtYm5haWwtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dDtcbiR0aHVtYm5haWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gNTMuIFRpdGxlIEJhclxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kdGl0bGViYXItYmFja2dyb3VuZDogJGJsYWNrO1xuJHRpdGxlYmFyLWNvbG9yOiAkd2hpdGU7XG4kdGl0bGViYXItcGFkZGluZzogMC41cmVtO1xuJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ6IGJvbGQ7XG4kdGl0bGViYXItaWNvbi1jb2xvcjogJHdoaXRlO1xuJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXI6ICRtZWRpdW0tZ3JheTtcbiR0aXRsZWJhci1pY29uLXNwYWNpbmc6IDAuMjVyZW07XG5cbi8vIDU0LiBUb29sdGlwXG4vLyAtLS0tLS0tLS0tLVxuXG4kaGFzLXRpcC1jdXJzb3I6IGhlbHA7XG4kaGFzLXRpcC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGRhcmstZ3JheTtcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGU7XG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtO1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAxMHJlbTtcbiR0b29sdGlwLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiR0b29sdGlwLXBpcC13aWR0aDogMC43NXJlbTtcbiR0b29sdGlwLXBpcC1oZWlnaHQ6ICR0b29sdGlwLXBpcC13aWR0aCAqIDAuODY2O1xuJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gNTUuIFRvcCBCYXJcbi8vIC0tLS0tLS0tLS0tXG5cbiR0b3BiYXItcGFkZGluZzogMC41cmVtO1xuJHRvcGJhci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQ7XG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwO1xuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHg7XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xuXG4vLyA1Ni4gWHkgR3JpZFxuLy8gLS0tLS0tLS0tLS1cblxuJHh5LWdyaWQ6IHRydWU7XG4kZ3JpZC1jb250YWluZXI6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW5zOiAxMjtcbiRncmlkLW1hcmdpbi1ndXR0ZXJzOiAoXG4gIHNtYWxsOiAyMHB4LFxuICBtZWRpdW06IDQxcHgsXG4pO1xuJGdyaWQtcGFkZGluZy1ndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycztcbiRncmlkLWNvbnRhaW5lci1wYWRkaW5nOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnM7XG4kZ3JpZC1jb250YWluZXItbWF4OiAkZ2xvYmFsLXdpZHRoO1xuJHh5LWJsb2NrLWdyaWQtbWF4OiA4O1xuIiwiLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlc1xuICogVmVyc2lvbiA2LjcuNFxuICogaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cblxuLy8gLS0tIERlcGVuZGVuY2llcyAtLS1cbkBpbXBvcnQgJ3ZlbmRvci9ub3JtYWxpemUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL21pc3NpbmctZGVwZW5kZW5jaWVzJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy90cnVlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL2NvbnRhaW4nO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcHVyZ2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcmVtb3ZlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlcGxhY2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvdG8tbGlzdCc7XG5cbi8vIC0tLSBTZXR0aW5ncyAtLS1cbi8vIGltcG9ydCB5b3VyIG93biBgc2V0dGluZ3NgIGhlcmUgb3Jcbi8vIGltcG9ydCBhbmQgbW9kaWZ5IHRoZSBkZWZhdWx0IHNldHRpbmdzIHRocm91Z2hcbi8vIEBpbXBvcnQgJ3NldHRpbmdzL3NldHRpbmdzJztcblxuLy8gLS0tIENvbXBvbmVudHMgLS0tXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG4vLyBHbG9iYWwgc3R5bGVzXG5AaW1wb3J0ICdnbG9iYWwnO1xuQGltcG9ydCAnZm9ybXMvZm9ybXMnO1xuQGltcG9ydCAndHlwb2dyYXBoeS90eXBvZ3JhcGh5JztcblxuLy8gR3JpZHNcbkBpbXBvcnQgJ2dyaWQvZ3JpZCc7XG5AaW1wb3J0ICd4eS1ncmlkL3h5LWdyaWQnO1xuLy8gR2VuZXJpYyBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbi1ncm91cCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Nsb3NlLWJ1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2xhYmVsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcHJvZ3Jlc3MtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2xpZGVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3dpdGNoJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFibGUnO1xuLy8gQmFzaWMgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9iYWRnZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2JyZWFkY3J1bWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FsbG91dCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhcmQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3BhZ2luYXRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy90b29sdGlwJztcblxuLy8gQ29udGFpbmVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS1vYmplY3QnO1xuQGltcG9ydCAnY29tcG9uZW50cy9vcmJpdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Jlc3BvbnNpdmUtZW1iZWQnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGh1bWJuYWlsJztcbi8vIE1lbnUtYmFzZWQgY29udGFpbmVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudS1pY29uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uLW1lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcmlsbGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bi1tZW51JztcblxuLy8gTGF5b3V0IGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb2ZmLWNhbnZhcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3JldmVhbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N0aWNreSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RpdGxlLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RvcC1iYXInO1xuXG4vLyBIZWxwZXJzXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zsb2F0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxleCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Zpc2liaWxpdHknO1xuQGltcG9ydCAncHJvdG90eXBlL3Byb3RvdHlwZSc7XG5cblxuQG1peGluIGZvdW5kYXRpb24tZXZlcnl0aGluZyhcbiAgJGZsZXg6IHRydWUsXG4gICRwcm90b3R5cGU6IGZhbHNlLFxuICAkeHktZ3JpZDogJHh5LWdyaWRcbikge1xuICBAaWYgJGZsZXgge1xuICAgICRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgQGlmICR4eS1ncmlkIHtcbiAgICAkeHktZ3JpZDogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgLy8gR2xvYmFsIHN0eWxlc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdHlwb2dyYXBoeTtcblxuICAvLyBHcmlkc1xuICBAaWYgbm90ICRmbGV4IHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdyaWQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkeHktZ3JpZCB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWdyaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gR2VuZXJpYyBjb21wb25lbnRzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbGFiZWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zd2l0Y2g7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFibGU7XG4gIC8vIEJhc2ljIGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1iYWRnZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1icmVhZGNydW1icztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYWxsb3V0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhcmQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcGFnaW5hdGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b29sdGlwO1xuXG4gIC8vIENvbnRhaW5lcnNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9yYml0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFicztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aHVtYm5haWw7XG4gIC8vIE1lbnUtYmFzZWQgY29udGFpbmVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudS1pY29uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnU7XG5cbiAgLy8gTGF5b3V0IGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vZmYtY2FudmFzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJldmVhbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGl0bGUtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvcC1iYXI7XG5cbiAgLy8gSGVscGVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXM7XG4gIEBpZiAkZmxleCB7IEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzOyB9XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzO1xuICBAaWYgJHByb3RvdHlwZSB7IEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvdG90eXBlLWNsYXNzZXM7IH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVha3BvaW50c1xuLy8vL1xuXG4vLy8gUGF0Y2ggdG8gZml4IGlzc3VlICMxMjA4MFxuJC16Zi1zaXplOiBudWxsO1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBIaURQSSBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcyBmb3IgcmVzb2x1dGlvbnMuXG4vLy8gVmFsdWVzIG11c3QgcmVwcmVzZW50IHRoZSBkZXZpY2UgcGl4ZWxzIC8gd2ViIHBpeGVscyByYXRpb24gYW5kIGJlIHVuaXRsZXNzIG9yIGluIERQUFguXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHMtaGlkcGk6IChcbiAgaGlkcGktMTogMSxcbiAgaGlkcGktMS01OiAxLjUsXG4gIGhpZHBpLTI6IDIsXG4gIHJldGluYTogMixcbiAgaGlkcGktMzogM1xuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsYXJnZXN0IG5hbWVkIGJyZWFrcG9pbnQgaW4gd2hpY2ggdG8gaW5jbHVkZSBwcmludCBhcyBhIG1lZGlhIHR5cGVcbi8vLyBAdHlwZSBLZXl3b3JkXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2UgIWRlZmF1bHQ7XG5cbiQtemYtemVyby1icmVha3BvaW50OiBzbWFsbCAhZGVmYXVsdDtcblxuJC16Zi1icmVha3BvaW50cy1rZXlzOiBtYXAtdG8tbGlzdCgkYnJlYWtwb2ludHMsICdrZXlzJyk7XG5cbkBpZiBudGgobWFwLXZhbHVlcygkYnJlYWtwb2ludHMpLCAxKSAhPSAwIHtcbiAgQGVycm9yICdUaGUgZmlyc3Qga2V5IGluIHRoZSAkYnJlYWtwb2ludHMgbWFwIG11c3QgaGF2ZSBhIHZhbHVlIG9mIFwiMFwiLic7XG59XG5AZWxzZSB7XG4gICQtemYtemVyby1icmVha3BvaW50OiBudGgobWFwLWtleXMoJGJyZWFrcG9pbnRzKSwgMSk7XG59XG5cbi8vLyBBbGwgb2YgdGhlIG5hbWVzIGluIHRoaXMgbGlzdCB3aWxsIGJlIG91dHB1dCBhcyBjbGFzc2VzIGluIHlvdXIgQ1NTLCBsaWtlIGAuc21hbGwtMTJgLCBgLm1lZGl1bS02YCwgYW5kIHNvIG9uLiBFYWNoIHZhbHVlIGluIHRoaXMgbGlzdCBtdXN0IGFsc28gYmUgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcC5cbi8vLyBAdHlwZSBMaXN0XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKSAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IHN0cmluZyBtYXRjaGluZyB0aGUgaW5wdXQgdmFsdWUuIFJlZmVyIHRvIHRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gc2VlIHdoYXQgdGhlIHBvc3NpYmxlIGlucHV0cyBhcmUuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsIFtzbWFsbF0gLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG5AZnVuY3Rpb24gYnJlYWtwb2ludCgkdmFsOiAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAvLyBXZWIgc3RhbmRhcmQgUGl4ZWxzIHBlciBpbmNoLiAoMWRkcHggLyAkc3RkLXdlYi1kcGkpID0gMWRwaVxuICAvLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL2Nzcy12YWx1ZXMtMy8jYWJzb2x1dGUtbGVuZ3Roc1xuICAkc3RkLXdlYi1kcGk6IDk2O1xuXG4gIC8vIFNpemUgb3Iga2V5d29yZFxuICAkYnA6IG50aCgkdmFsLCAxKTtcbiAgLy8gVmFsdWUgb2YgdGhlIGZvbGxvd2luZyBicmVha3BvaW50XG4gICRicC1uZXh0OiBudWxsO1xuICAvLyBWYWx1ZSBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1pbjogbnVsbDtcbiAgLy8gVmFsdWUgZm9yIG1pbi13aWR0aCBtZWRpYSBxdWVyaWVzXG4gICRicC1tYXg6IG51bGw7XG4gIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICRkaXI6IGlmKGxlbmd0aCgkdmFsKSA+IDEsIG50aCgkdmFsLCAyKSwgdXApO1xuICAvLyBJZiBuYW1lZCwgbmFtZSBvZiB0aGUgYnJlYWtwb2ludFxuICAkbmFtZTogbnVsbDtcbiAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgYSBIaURQSSBicmVha3BvaW50XG4gICRoaWRwaTogZmFsc2U7XG5cbiAgLy8gT3JpZW50YXRpb24gbWVkaWEgcXVlcmllcyBoYXZlIGEgdW5pcXVlIHN5bnRheFxuICBAaWYgJGJwID09ICdsYW5kc2NhcGUnIG9yICRicCA9PSAncG9ydHJhaXQnIHtcbiAgICBAcmV0dXJuICcob3JpZW50YXRpb246ICN7JGJwfSknO1xuICB9XG5cbiAgLy8gSWYgYSBicmVha3BvaW50IG5hbWUgaXMgZ2l2ZW4sIGdldCBpdHMgdmFsdWUgZnJvbSB0aGUgJGJyZWFrcG9pbnRzLyRicmVha3BvaW50cy1oaWRwaSBtYXAuXG4gIEBpZiB0eXBlLW9mKCRicCkgPT0gJ3N0cmluZycge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRicCkge1xuICAgICAgJG5hbWU6ICRicDtcbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgICAgICRicC1uZXh0OiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gICAgfVxuICAgIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cy1oaWRwaSwgJGJwKSB7XG4gICAgICAkbmFtZTogJGJwO1xuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cy1oaWRwaSwgJG5hbWUpO1xuICAgICAgJGJwLW5leHQ6IC16Zi1tYXAtbmV4dC1udW1iZXIoJGJyZWFrcG9pbnRzLWhpZHBpLCAkYnApO1xuICAgICAgJGhpZHBpOiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnA6IDA7XG4gICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBcIiN7JHZhbH1cIiBpcyBub3QgZGVmaW5lZCBpbiB5b3VyIGAkYnJlYWtwb2ludHNgIG9yIGAkYnJlYWtwb2ludHMtaGlkcGlgIHNldHRpbmcuJztcbiAgICB9XG4gIH1cblxuICBAaWYgbm90ICRuYW1lIGFuZCAkZGlyID09ICdvbmx5JyB7XG4gICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIGBvbmx5YCByYW5nZS4nO1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8vIE9ubHkgJ29ubHknIGFuZCAndXAnIGhhdmUgYSBtaW4gbGltaXQuXG4gIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICd1cCcge1xuICAgICRicC1taW46IGlmKCRoaWRwaSwgc3RyaXAtdW5pdCgkYnApLCAtemYtYnAtdG8tZW0oJGJwKSk7XG4gIH1cbiAgLy8gT25seSAnb25seScgYW5kICdkb3duJyBoYXZlIGEgbWF4IGxpbWl0LlxuICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgIC8vIElmIHRoZSBicmVha3BvaW50IGlzIGEgdmFsdWUsIHVzZSBpdCBhcyBtYXggbGltaXQuXG4gICAgQGlmIG5vdCAkbmFtZSB7XG4gICAgICAkYnAtbWF4OiBpZigkaGlkcGksIHN0cmlwLXVuaXQoJGJwKSwgLXpmLWJwLXRvLWVtKCRicCkpO1xuICAgIH1cbiAgICAvLyBJZiB0aGUgYnJlYWtwb2ludCBpcyBuYW1lZCwgdGhlIG1heCBsaW1pdCBpcyB0aGUgZm9sbG93aW5nIGJyZWFrcG9pbnQgLSAxcHguXG4gICAgQGVsc2UgaWYgJGJwLW5leHQge1xuICAgICAgLy8gTWF4IHZhbHVlIGlzIDAuMnB4IHVuZGVyIHRoZSBuZXh0IGJyZWFrcG9pbnQgKDAuMDIgLyAxNiA9IDAuMDAxMjUpLlxuICAgICAgLy8gVXNlIGEgcHJlY2lzaW9uIHVuZGVyIDFweCB0byBzdXBwb3J0IGJyb3dzZXIgem9vbSwgYnV0IG5vdCB0byBsb3cgdG8gYXZvaWQgcm91bmRpbmcuXG4gICAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTEzMTNcbiAgICAgICRicC1tYXg6IGlmKCRoaWRwaSwgJGJwLW5leHQgLSBkaXZpZGUoMSwgJHN0ZC13ZWItZHBpKSwgLXpmLWJwLXRvLWVtKCRicC1uZXh0KSAtIDAuMDAxMjUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEdlbmVyYXRlIHRoZSBtZWRpYSBxdWVyeSBzdHJpbmcgZnJvbSBtaW4gYW5kIG1heCBsaW1pdHMuXG4gIEBpZiAkaGlkcGkge1xuICAgIC8vIEdlbmVyYXRlIHZhbHVlcyBpbiBEUEkgaW5zdGVhZCBvZiBEUFBYIGZvciBhbiBJRTktMTEvT3BlcmEgbWluaSBjb21wYXRpYmlsaXR5LlxuICAgIC8vIFNlZSBodHRwczovL2Nhbml1c2UuY29tLyNmZWF0PWNzcy1tZWRpYS1yZXNvbHV0aW9uXG4gICAgJGJwLW1pbi1kcGk6IGlmKCRicC1taW4sICRicC1taW4gKiAkc3RkLXdlYi1kcGkgKiAxZHBpLCAkYnAtbWluKTtcbiAgICAkYnAtbWF4LWRwaTogaWYoJGJwLW1heCwgJGJwLW1heCAqICRzdGQtd2ViLWRwaSAqIDFkcGksICRicC1tYXgpO1xuICAgIEByZXR1cm4gemYtc3RyLWpvaW4oXG4gICAgICAtemYtYnAtam9pbigkYnAtbWluLCAkYnAtbWF4LCAnLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvJywgJy13ZWJraXQtbWF4LWRldmljZS1waXhlbC1yYXRpbycpLFxuICAgICAgLXpmLWJwLWpvaW4oJGJwLW1pbi1kcGksICRicC1tYXgtZHBpLCAnbWluLXJlc29sdXRpb24nLCAnbWF4LXJlc29sdXRpb24nKSxcbiAgICAgICcsICcpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIC16Zi1icC1qb2luKCRicC1taW4sICRicC1tYXgpO1xuICB9XG59XG5cbi8vLyBXcmFwcyBhIG1lZGlhIHF1ZXJ5IGFyb3VuZCB0aGUgY29udGVudCB5b3UgcHV0IGluc2lkZSB0aGUgbWl4aW4uIFRoaXMgbWl4aW4gYWNjZXB0cyBhIG51bWJlciBvZiB2YWx1ZXM6XG4vLy8gIC0gSWYgYSBzdHJpbmcgaXMgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBsb29rIGZvciBpdCBpbiB0aGUgYCRicmVha3BvaW50c2AgYW5kIGAkYnJlYWtwb2ludHMtaGlkcGlgIG1hcHMsIGFuZCB1c2UgYSBtZWRpYSBxdWVyeSB0aGVyZS5cbi8vLyAgLSBJZiBhIHBpeGVsIHZhbHVlIGlzIHBhc3NlZCwgaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYW4gZW0gdmFsdWUgdXNpbmcgYCRnbG9iYWwtZm9udC1zaXplYCBhcyB0aGUgYmFzZS5cbi8vLyAgLSBJZiBhIHJlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB1bml0IHdpbGwgYmUgY2hhbmdlZCB0byBlbS5cbi8vLyAgLSBJZiBhbiBlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB2YWx1ZSB3aWxsIGJlIHVzZWQgYXMtaXMuXG4vLy9cbi8vLyBJZiBtdWx0aXBsZSB2YWx1ZXMgYXJlIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgZ2VuZXJhdGUgYSBtZWRpYSBxdWVyeSBmb3IgZWFjaCBvZiB0aGVtIGFzIGRlc2NyaWJlZCBhYm92ZS5cbi8vLyBTaW5jZSB0aGUgY29udGVudCBpcyBkdXBsaWNhdGVkIGZvciBlYWNoIGJyZWFrcG9pbnQsIHRoaXMgbWl4aW4gc2hvdWxkIG9ubHkgYmUgdXNlZCB3aXRoIHByb3BlcnRpZXMgdGhhdFxuLy8vIGNoYW5nZSBhY3Jvc3MgYnJlYWtwb2ludHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsdWVzLi4uIC0gQnJlYWtwb2ludCBuYW1lIG9yIHB4L3JlbS9lbSB2YWx1ZSB0byBwcm9jZXNzLlxuLy8vXG4vLy8gQG91dHB1dCBJZiB0aGUgYnJlYWtwb2ludCBpcyBcIjBweCBhbmQgbGFyZ2VyXCIsIG91dHB1dHMgdGhlIGNvbnRlbnQgYXMtaXMuIE90aGVyd2lzZSwgb3V0cHV0cyB0aGUgY29udGVudCB3cmFwcGVkIGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gYnJlYWtwb2ludCgkdmFsdWVzLi4uKSB7XG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCR2YWx1ZXMpIHtcbiAgICAkdmFsdWU6IG50aCgkdmFsdWVzLCAkaSk7XG4gICAgJHN0cjogYnJlYWtwb2ludCgkdmFsdWUpO1xuICAgICRicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCBudGgoJHZhbHVlLCAxKSk7XG4gICAgJHBicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkcHJpbnQtYnJlYWtwb2ludCk7XG4gICAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgICAkZGlyOiBpZihsZW5ndGgoJHZhbHVlKSA+IDEsIG50aCgkdmFsdWUsIDIpLCB1cCk7XG5cbiAgICAkb2xkLXpmLXNpemU6IG51bGw7XG5cbiAgICAvLyBNYWtlIGJyZWFrcG9pbnQgc2l6ZSBhdmFpbGFibGUgYXMgYSB2YXJpYWJsZVxuICAgIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSB7XG4gICAgICAkb2xkLXpmLXNpemU6ICQtemYtc2l6ZTtcbiAgICB9XG4gICAgJC16Zi1zaXplOiBudGgoJHZhbHVlLCAxKSAhZ2xvYmFsOyAvLyBnZXQgdGhlIGZpcnN0IHZhbHVlIHRvIGFjY291bnQgZm9yIGBvbmx5YCBhbmQgYGRvd25gIGtleXdvcmRzXG5cbiAgICAvLyBJZiAkc3RyIGlzIHN0aWxsIGFuIGVtcHR5IHN0cmluZywgbm8gbWVkaWEgcXVlcnkgaXMgbmVlZGVkXG4gICAgQGlmICRzdHIgPT0gJycge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgLy8gT3RoZXJ3aXNlLCB3cmFwIHRoZSBjb250ZW50IGluIGEgbWVkaWEgcXVlcnlcbiAgICBAZWxzZSB7XG4gICAgICAvLyBGb3IgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICRwcmludC1icmVha3BvaW50LCBhZGQgcHJpbnQgdG8gdGhlIG1lZGlhIHR5cGVzXG4gICAgICAvLyBnZW5lcmF0ZSBwcmludCBpZiB0aGUgYnJlYWtwb2ludCBhZmZlY3RzIHRoZSBwcmludC1icmVha3BvaW50IChvciBzbWFsbGVyKS5cbiAgICAgIC8vIFRoaXMgbWVhbnMgdGhlIGN1cnJlbnQgY29uZGl0aW9uIG9ubHkgbmVlZHMgdG8gYmUgZXh0ZW5kZWQgc28gJ2Rvd24nIGFsd2F5cyBnZW5lcmF0ZXMgcHJpbnQuXG4gICAgICBAaWYgJGJwICE9IG51bGwgYW5kICgkYnAgPD0gJHBicCBvciAkZGlyID09IGRvd24pIHtcbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbiAgfVxufVxuXG4vLy8gQ29udmVydHMgdGhlIGJyZWFrcG9pbnRzIG1hcCB0byBhIFVSTC1lbmNvZGVkIHN0cmluZywgbGlrZSB0aGlzOiBga2V5MT12YWx1ZTEma2V5Mj12YWx1ZTJgLiBUaGUgdmFsdWUgaXMgdGhlbiBkcm9wcGVkIGludG8gdGhlIENTUyBmb3IgYSBzcGVjaWFsIGA8bWV0YT5gIHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0LiBUaGlzIGlzIGhvdyB3ZSB0cmFuc2ZlciB2YWx1ZXMgZnJvbSBTYXNzIHRvIEphdmFTY3JpcHQsIHNvIHRoZXkgY2FuIGJlIGRlZmluZWQgaW4gb25lIHBsYWNlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gY29udmVydC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IEEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1hcCdzIGNvbnRlbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC1zZXJpYWxpemUoJG1hcCkge1xuICAkc3RyOiAnJztcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICRzdHI6ICRzdHIgKyAka2V5ICsgJz0nICsgLXpmLWJwLXRvLWVtKCR2YWx1ZSkgKyAnJic7XG4gIH1cbiAgJHN0cjogc3RyLXNsaWNlKCRzdHIsIDEsIC0yKTtcblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IGtleSBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSB2YWx1ZSBmb3IgdGhlIGtleSBhZnRlciBgJGtleWAsIGlmIGAka2V5YCB3YXMgZm91bmQuIElmIGAka2V5YCB3YXMgbm90IGZvdW5kLCBvciBgJGtleWAgd2FzIHRoZSBsYXN0IHZhbHVlIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dCgkbWFwLCAka2V5KSB7XG5cbiAgLy8gU3RvcmUgdGhlIGtleXMgb2YgdGhlIG1hcCBhcyBhIGxpc3RcbiAgJHZhbHVlczogbWFwLWtleXMoJG1hcCk7XG5cbiAgJGk6IDA7XG5cbiAgLy8gSWYgdGhlIEtleSBFeGlzdHMsIEdldCB0aGUgaW5kZXggb2YgdGhlIGtleSB3aXRoaW4gdGhlIG1hcCBhbmQgYWRkIDEgdG8gaXQgZm9yIHRoZSBuZXh0IGJyZWFrcG9pbnQgaW4gdGhlIG1hcFxuICBAaWYgKG1hcC1oYXMta2V5KCRtYXAsICRrZXkpKSB7XG4gICAgJGk6IGluZGV4KCR2YWx1ZXMsICRrZXkpICsgMTtcbiAgfVxuXG4gIC8vIElmIHRoZSBrZXkgZG9lc24ndCBleGlzdCwgb3IgaXQncyB0aGUgbGFzdCBrZXkgaW4gdGhlIG1hcCwgcmV0dXJuIG51bGxcbiAgQGlmICgkaSA+IGxlbmd0aCgkbWFwKSBvciAkaSA9PSAwKSB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgcmV0dXJuIHRoZSB2YWx1ZVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsIG50aCgkdmFsdWVzLCAkaSkpO1xuICB9XG5cbn1cblxuLy8vIEZpbmQgdGhlIG5leHQgbnVtYmVyIGluIGEgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gdHJhdmVyc2UuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJG51bWJlciAtIE51bWJlciB0byB1c2UgYXMgYSBzdGFydGluZyBwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtNaXhlZH0gVGhlIG51bWJlciBmb2xsb3dpbmcgYCRudW1iZXJgLCBpZiBgJG51bWJlcmAgd2FzIGZvdW5kLiBJZiBgJG51bWJlcmAgd2FzIG5vdCBmb3VuZCwgb3IgYCRudW1iZXJgIHdhcyB0aGUgYmlnZ2VzdCBudW1iZXIgaW4gdGhlIG1hcCwgcmV0dXJucyBgbnVsbGAuXG5AZnVuY3Rpb24gLXpmLW1hcC1uZXh0LW51bWJlcigkbWFwLCAkbnVtYmVyKSB7XG5cbiAgJG5leHQtbnVtYmVyOiBudWxsO1xuXG4gIEBlYWNoICRrLCAkdiBpbiAkbWFwIHtcbiAgICBAaWYgdHlwZS1vZigkdikgPT0gJ251bWJlcicgYW5kICR2ID4gJG51bWJlciBhbmQgKCRuZXh0LW51bWJlciA9PSBudWxsIG9yICR2IDwgJG5leHQtbnVtYmVyKSB7XG4gICAgICAkbmV4dC1udW1iZXI6ICR2O1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJG5leHQtbnVtYmVyO1xufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBsYXN0IGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigka2V5KSB7XG4gICRsaXN0OiAoKTtcbiAgJGZvdW5kLWtleTogZmFsc2U7XG5cbiAgQGVhY2ggJG5hbWUgaW4gJC16Zi1icmVha3BvaW50cy1rZXlzIHtcbiAgICBAaWYgKCRuYW1lID09ICRrZXkpIHtcbiAgICAgICRmb3VuZC1rZXk6IHRydWU7XG4gICAgfVxuICAgIEBpZiBub3QgJGZvdW5kLWtleSB7XG4gICAgICAkbGlzdDogYXBwZW5kKCRsaXN0LCAkbmFtZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJGxpc3Q7XG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IC0gYSBuYW1lZCBvciBub24tbmFtZWQgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCRicmVha3BvaW50KSB7XG4gICRsYXN0OiAkLXpmLXplcm8tYnJlYWtwb2ludDtcbiAgJGZvdW5kOiBmYWxzZTtcblxuICAkdmFsdWU6IHVuaXRsZXNzLWNhbGMoJGJyZWFrcG9pbnQsIDFweCk7XG4gIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICBAaWYgdW5pdGxlc3MtY2FsYygkdmFsKSA+ICR2YWx1ZSB7XG4gICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkbGFzdDogJGtleTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRsYXN0O1xufVxuXG4vLy8gR2V0IGEgdmFsdWUgZm9yIGEgYnJlYWtwb2ludCBmcm9tIGEgcmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdCByZWdhcmRsZXNzIG9mIGAkdmFsdWVgLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgaGFzIHRoZSBrZXkgYCR2YWx1ZWAsIHRoZSBleGFjdCBicmVha3BvaW50IHZhbHVlIGlzIHJldHVybmVkLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgZG9lcyAqbm90KiBoYXZlIHRoZSBicmVha3BvaW50LCB0aGUgdmFsdWUgbWF0Y2hpbmcgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgaW4gdGhlIGNvbmZpZyBtYXAgaXMgcmV0dXJuZWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBSZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge01peGVkfSBUaGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlLlxuQGZ1bmN0aW9uIC16Zi1nZXQtYnAtdmFsKCRtYXAsICR2YWx1ZSkge1xuICAvLyBJZiB0aGUgZ2l2ZW4gbWFwIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXRcbiAgQGlmIHR5cGUtb2YoJG1hcCkgPT0gJ251bWJlcicge1xuICAgIEByZXR1cm4gJG1hcDtcbiAgfVxuXG5cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgZ2xvYmFsbHlcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgICAgJHZhbHVlOiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCR2YWx1ZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGluIHRoZSBsb2NhbCBjb25maWcgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRtYXAsICR2YWx1ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkdmFsdWUpO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgZmluZCB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBhbmQgcmV0dXJuIHRoYXQgdmFsdWVcbiAgQGVsc2Uge1xuICAgICRhbmNob3I6IG51bGw7XG4gICAgJGZvdW5kOiBmYWxzZTtcblxuICAgIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRtYXAsICRrZXkpIHtcbiAgICAgICAgICAkYW5jaG9yOiAka2V5O1xuICAgICAgICB9XG4gICAgICAgIEBpZiAka2V5ID09ICR2YWx1ZSB7XG4gICAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICRhbmNob3IpO1xuICB9XG59XG5cbi8vLyBSZXR1cm4gdGhlIGJlc3QgYnJlYWtwb2ludCB0byB1c2UgYWNjb3JkaW5nIHRvIHRoZSBjYWxsaW5nIGNvbnRleHQuIEl0IHJldHVybnMgaW4gb3JkZXI6XG4vLy8gMS4gdGhlIGdpdmVuIGAkdmFsdWVgIGFyZ3VtZW50IGlmIGl0IGlzIG5vdCBudWxsLlxuLy8vIDIuIHRoZSBnbG9iYWwgYnJlYWtwb2ludCBjb250ZXh0IGAkLXpmLXNpemVgIGlmIGl0IGlzIG5vdCBudWxsIChsaWtlIGlmIGNhbGxlZCBpbnNpZGUgdGhlbiBgYnJlYWtwb2ludCgpYCBtaXhpbilcbi8vLyAzLiB0aGUgZ2l2ZW4gYCRkZWZhdWx0YCBhcmd1bWVudC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHZhbHVlIFtudWxsXSAtIEJyZWFrcG9pbnQgdG8gdXNlIGluIHByaW9yaXR5IGlmIG5vbi1udWxsLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRlZmF1bHQgW251bGxdIC0gQnJlYWtwb2ludCB0byB1c2UgYnkgZGVmYXVsdCBpZiBubyBvdGhlciB2YWx1ZSBjYW4gYmUgdXNlZC5cbi8vL1xuLy8vIEByZXR1cm4ge0tleXdvcmR9IFRoZSByZXNvbHZlZCBicmVha3BvaW50LlxuQGZ1bmN0aW9uIC16Zi1jdXJyZW50LWJyZWFrcG9pbnQoJHZhbHVlOiBudWxsLCAkZGVmYXVsdDogbnVsbCkge1xuICBAaWYgKCR2YWx1ZSAhPSBudWxsKSB7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cbiAgQGVsc2UgaWYgKHZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkgYW5kIHR5cGUtb2YoJC16Zi1zaXplKSAhPSAnbnVtYmVyJykgYW5kICQtemYtc2l6ZSAhPSBudWxsIHtcbiAgICBAcmV0dXJuICQtemYtc2l6ZTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiAkZGVmYXVsdDtcbiAgfVxufVxuXG4vLy8gUmV0dXJuIG1lZGlhIHF1ZXJ5IHN0cmluZyBmcm9tIHRoZSBnaXZlbiBtaW4gYW5kL29yIG1heCBsaW1pdHMuXG4vLy8gSWYgYSBsaW1pdCBpcyBlcXVhbCB0byBgbnVsbGAgb3IgYDBgLCBpdCBpcyBpZ25vcmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtaW4gWzBdIC0gTWluIG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4IFswXSAtIE1heCBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1pbi1uYW1lIFsnbWluLXdpZHRoJ10gLSBOYW1lIG9mIHRoZSBtaW4gbWVkaWEgcXVlcnkgbGltaXQuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRkZWxpbWl0ZXIgWydtYXgtd2lkdGgnXSAtIE5hbWUgb2YgdGhlIG1heCBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IE1lZGlhIFF1ZXJ5IHN0cmluZy5cbkBmdW5jdGlvbiAtemYtYnAtam9pbihcbiAgJG1pbjogMCxcbiAgJG1heDogMCxcbiAgJG1pbi1uYW1lOiAnbWluLXdpZHRoJyxcbiAgJG1heC1uYW1lOiAnbWF4LXdpZHRoJ1xuKSB7XG4gIEByZXR1cm4gemYtc3RyLWpvaW4oXG4gICAgaWYoJG1pbiBhbmQgJG1pbiA+IDAsICcoI3skbWluLW5hbWV9OiAjeyRtaW59KScsIG51bGwpLFxuICAgIGlmKCRtYXggYW5kICRtYXggPiAwLCAnKCN7JG1heC1uYW1lfTogI3skbWF4fSknLCBudWxsKSxcbiAgICAnIGFuZCAnKTtcbn1cblxuJHNtYWxsLXVwOiAnJztcbiRzbWFsbC1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgc21hbGwpIHtcbiAgJHNtYWxsLXVwOiBzY3JlZW47XG4gICRzbWFsbC1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChzbWFsbCBvbmx5KX0nKTtcbn1cblxuJG1lZGl1bS11cDogJyc7XG4kbWVkaXVtLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBtZWRpdW0pIHtcbiAgJG1lZGl1bS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0nKTtcbiAgJG1lZGl1bS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gb25seSl9Jyk7XG59XG5cbiRsYXJnZS11cDogJyc7XG4kbGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIGxhcmdlKSB7XG4gICRsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfScpO1xuICAkbGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2Ugb25seSl9Jyk7XG59XG5cbiR4bGFyZ2UtdXA6ICcnO1xuJHhsYXJnZS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeGxhcmdlKSB7XG4gICR4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9Jyk7XG4gICR4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlIG9ubHkpfScpO1xufVxuXG4keHhsYXJnZS11cDogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHh4bGFyZ2UpIHtcbiAgJHh4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHh4bGFyZ2UpfScpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHJldmVhbFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgbW9kYWwuXG4vLy8gQHR5cGUgQ29sb3JcbiRyZXZlYWwtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB3aWR0aCBvZiBhIG1vZGFsLCB3aXRoIG5vIGNsYXNzIGFwcGxpZWQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXdpZHRoOiA2MDBweCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWF4aW11bSB3aWR0aCBvZiBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1tYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGFyb3VuZCBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyB6LWluZGV4IGZvciBtb2RhbHMuIFRoZSBvdmVybGF5IHVzZXMgdGhpcyB2YWx1ZSwgd2hpbGUgdGhlIG1vZGFsIGl0c2VsZiB1c2VzIHRoaXMgdmFsdWUgcGx1cyBvbmUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXppbmRleDogMTAwNSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgbW9kYWwgb3ZlcmxheXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC40NSkgIWRlZmF1bHQ7XG5cblxuLy8gUGxhY2Vob2xkZXIgc2VsZWN0b3IgZm9yIG1lZGl1bS1hbmQtdXAgbW9kYWxzXG4vLyBQcmV2ZW50cyBkdXBsaWNhdGUgQ1NTIHdoZW4gZGVmaW5pbmcgbXVsdGlwbGUgUmV2ZWFsIHNpemVzXG4vLyBUaGlzIHNob3VsZCBiZSBpbiB0aGUgc2FtZSBicmVha3BvaW50IHRoZW4gYEBtaXhpbiByZXZlYWwtbW9kYWwtd2lkdGhgXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAlcmV2ZWFsLWNlbnRlcmVkIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG5cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG1vZGFsIG92ZXJsYXkuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIG92ZXJsYXkuXG5AbWl4aW4gcmV2ZWFsLW92ZXJsYXkoJGJhY2tncm91bmQ6ICRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kKSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkcmV2ZWFsLXppbmRleDtcblxuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuXG4vLy8gQWRkcyBiYXNlIHN0eWxlcyBmb3IgYSBtb2RhbC5cbkBtaXhpbiByZXZlYWwtbW9kYWwtYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgei1pbmRleDogJHJldmVhbC16aW5kZXggKyAxO1xuICAvLyBXb3JrYXJvdW5kIGFuZHJvaWQgYnJvd3NlciB6LWluZGV4IGJ1Z1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHJldmVhbC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJHJldmVhbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRyZXZlYWwtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmV2ZWFsLWJhY2tncm91bmQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHJvd3MgZG9uJ3QgaGF2ZSBhIG1pbi13aWR0aCBvbiB0aGVtXG4gIC5jb2x1bW4ge1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxuXG4gIC8vIFN0cmlwIG1hcmdpbnMgZnJvbSB0aGUgbGFzdCBpdGVtIGluIHRoZSBtb2RhbFxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGp1c3RzIHRoZSB3aWR0aCBvZiBhIG1vZGFsLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggLSBXaWR0aCBvZiB0aGUgbW9kYWwuIEdlbmVyYWxseSBhIHBlcmNlbnRhZ2UuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXgtd2lkdGggWyRyZXZlYWwtbWF4LXdpZHRoXSAtIE1heGltdW0gd2lkdGggb2YgdGhlIG1vZGFsLlxuQG1peGluIHJldmVhbC1tb2RhbC13aWR0aChcbiAgJHdpZHRoOiAkcmV2ZWFsLXdpZHRoLFxuICAkbWF4LXdpZHRoOiAkcmV2ZWFsLW1heC13aWR0aFxuKSB7XG4gIC8vIEV4dGVuZHMgbXVzdCBiZSBtYWRlIG91dHNpZGUgb2YgYnJlYWtwb2ludHMgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBuZXdlciBTYXNzIHZlcnNpb25zIChsaWJzYXNzIHYzLjUpXG4gIEBleHRlbmQgJXJldmVhbC1jZW50ZXJlZDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtc2NyZWVuIG1vZGFsLCB3aGljaCBzdHJldGNoZXMgdGhlIGZ1bGwgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgd2luZG93LlxuQG1peGluIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuIHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXZlYWwge1xuXG4gIC8vLyBEaXNhYmxlcyB0aGUgc2Nyb2xsIHdoZW4gUmV2ZWFsIGlzIHNob3duIHRvIHByZXZlbnQgdGhlIGJhY2tncm91bmQgZnJvbSBzaGlmdGluZ1xuICBodG1sLmlzLXJldmVhbC1vcGVuIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuXG4gICAgJi56Zi1oYXMtc2Nyb2xsIHtcbiAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICB9XG5cbiAgICBib2R5IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgLy8gT3ZlcmxheVxuICAucmV2ZWFsLW92ZXJsYXkge1xuICAgIEBpbmNsdWRlIHJldmVhbC1vdmVybGF5O1xuICB9XG5cbiAgLy8gTW9kYWwgY29udGFpbmVyXG4gIC5yZXZlYWwge1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlO1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgkcmV2ZWFsLXdpZHRoKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAxMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICAvLyBSZW1vdmUgcGFkZGluZ1xuICAgICYuY29sbGFwc2Uge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAvLyBTaXppbmcgY2xhc3Nlc1xuICAgICYudGlueSAgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoMzAlKTsgfVxuICAgICYuc21hbGwgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoNTAlKTsgfVxuICAgICYubGFyZ2UgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoOTAlKTsgfVxuXG4gICAgLy8gRnVsbC1zY3JlZW4gbW9kZVxuICAgICYuZnVsbCB7XG4gICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtZnVsbHNjcmVlbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgICYud2l0aG91dC1vdmVybGF5IHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB9XG4gIH1cbn1cbiIsIi51cHBlcmNhc2Uge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbn1cblxuLmNhcGl0YWxpemUge1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xufVxuXG4uZ3JheS1mb250LWNvbG9yIHtcbiAgICBjb2xvcjogJGdyYXk7XG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnByaW1hcnktZm9udC1jb2xvciB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xufVxuXG4vLyAuZm9udC1wcmltYXJ5IHtcbi8vICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4vLyB9XG5cbi8vIC5mb250LXNlY29uZGFyeSB7XG4vLyAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4vLyB9XG5cbi5mb250LXNlY29uZGFyeS1ib2xkIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uZm9udC1zZW1pYm9sZCB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxucCB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbn1cblxuLy8gaDEge1xuLy8gICBsaW5lLWhlaWdodDogMTtcbi8vIH1cblxuLy8gaDIge1xuLy8gICBsaW5lLWhlaWdodDogMS4xO1xuLy8gfVxuXG4vLyBoM3tcbi8vICAgbGluZS1oZWlnaHQ6IDEuMjtcbi8vIH1cblxuLy8gaDZ7XG4vLyAgIGxpbmUtaGVpZ2h0OiAxLjc7XG4vLyB9XG5cbmgzIHtcbiAgICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4uZnQtc3otMTQge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgIC5hcnRpY2xlLWl0ZW0tY29udGVudCAmIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuOTtcbiAgICB9XG59XG4uZnQtc3otMTUge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xufVxuIiwiLy8gRU5HTElTSCAtIExFRlQgVE8gUklHSFRcbi8vIEZvbnQgVmFyaWFibGVzXG4kZm9udC1wcmltYXJ5OiBcIlNUSVggVHdvIFRleHRcIiAhZGVmYXVsdDtcbiRmb250LXNlY29uZGFyeTogXCJPcGVuLVNhbnNcIiAhZGVmYXVsdDtcbiAgXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHI7XG4vLyAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHI7XG4vLyAkZGVmYXVsdC1kaXJlY3Rpb246ICBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09cnRsLCByaWdodCwgbGVmdCk7XG4vLyAkb3Bwb3NpdGUtZGlyZWN0aW9uOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09cnRsLCBsZWZ0LCByaWdodCk7XG5cbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAzMiksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAzMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxNyksICBcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE0KSxcbiAgKSxcbiAgbWVkaXVtOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAzOCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAzMiksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxNyksICAgXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAyMCksICBcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbikgIWRlZmF1bHQ7XG4gXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuMiFkZWZhdWx0O1xuJGhlYWRlci1saW5laGVpZ2h0OiAxLjIhZGVmYXVsdDtcblxuJHRhZ3Mtc3Bhbi1zaXplOiAxNnB4ICFkZWZhdWx0O1xuJHRhZ3MtYnV0dG9uLXNpemU6IDEycHggIWRlZmF1bHQ7IiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdtYXRoJztcblxuJHVuaXQtd2FybmluZ3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gUmVtb3ZlcyB0aGUgdW5pdCAoZS5nLiBweCwgZW0sIHJlbSkgZnJvbSBhIHZhbHVlLCByZXR1cm5pbmcgdGhlIG51bWJlciBvbmx5LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRudW0gLSBOdW1iZXIgdG8gc3RyaXAgdW5pdCBmcm9tLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIHNhbWUgbnVtYmVyLCBzYW5zIHVuaXQuXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtKSB7XG4gIEByZXR1cm4gZGl2aWRlKCRudW0sICRudW0gKiAwICsgMSk7XG59XG5cbi8vLyBDb252ZXJ0cyBvbmUgb3IgbW9yZSBwaXhlbCB2YWx1ZXMgaW50byBtYXRjaGluZyByZW0gdmFsdWVzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHZhbHVlcyAtIE9uZSBvciBtb3JlIHZhbHVlcyB0byBjb252ZXJ0LiBCZSBzdXJlIHRvIHNlcGFyYXRlIHRoZW0gd2l0aCBzcGFjZXMgYW5kIG5vdCBjb21tYXMuIElmIHlvdSBuZWVkIHRvIGNvbnZlcnQgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCwgd3JhcCB0aGUgbGlzdCBpbiBwYXJlbnRoZXNlcy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gVGhlIGJhc2UgdmFsdWUgdG8gdXNlIHdoZW4gY2FsY3VsYXRpbmcgdGhlIGByZW1gLiBJZiB5b3UncmUgdXNpbmcgRm91bmRhdGlvbiBvdXQgb2YgdGhlIGJveCwgdGhpcyBpcyAxNnB4LiBJZiB0aGlzIHBhcmFtZXRlciBpcyBgbnVsbGAsIHRoZSBmdW5jdGlvbiB3aWxsIHJlZmVyZW5jZSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZSBhcyB0aGUgYmFzZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBBIGxpc3Qgb2YgY29udmVydGVkIHZhbHVlcy5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZTogbnVsbCkge1xuICAkcmVtLXZhbHVlczogKCk7XG4gICRjb3VudDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICAvLyBUaGlzIGlzIGJlY2F1c2UgMTAwJSBmb250IHNpemUgPSAxNnB4IGluIG1vc3QgYWxsIGJyb3dzZXJzXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiBkaXZpZGUoJGJhc2UsIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIC8vIFVzaW5nIHJlbSBhcyBiYXNlIGFsbG93cyBjb3JyZWN0IHNjYWxpbmdcbiAgQGlmIHVuaXQoJGJhc2UpID09ICdyZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmICRjb3VudCA9PSAxIHtcbiAgICBAcmV0dXJuIC16Zi10by1yZW0oJHZhbHVlcywgJGJhc2UpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY291bnQge1xuICAgICRyZW0tdmFsdWVzOiBhcHBlbmQoJHJlbS12YWx1ZXMsIC16Zi10by1yZW0obnRoKCR2YWx1ZXMsICRpKSwgJGJhc2UpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHJlbS12YWx1ZXM7XG59XG5cbi8vIENvbnZlcnRzIGEgdW5pdGxlc3MsIHBpeGVsLCBvciByZW0gdmFsdWUgdG8gZW0sIGZvciB1c2UgaW4gYnJlYWtwb2ludHMuXG5AZnVuY3Rpb24gLXpmLWJwLXRvLWVtKCR2YWx1ZSkge1xuICAvLyBQaXhlbCBhbmQgdW5pdGxlc3MgdmFsdWVzIGFyZSBjb252ZXJ0ZWQgdG8gcmVtc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcgb3IgdW5pdGxlc3MoJHZhbHVlKSB7XG4gICAgJHZhbHVlOiByZW0tY2FsYygkdmFsdWUsICRiYXNlOiAxNnB4KTtcbiAgfVxuXG4gIC8vIFRoZW4gdGhlIHZhbHVlIGlzIGNvbnZlcnRlZCB0byBlbXNcbiAgQHJldHVybiBzdHJpcC11bml0KCR2YWx1ZSkgKiAxZW07XG59XG5cbi8vLyBDb252ZXJ0cyBhIHBpeGVsIHZhbHVlIHRvIG1hdGNoaW5nIHJlbSB2YWx1ZS4gKkFueSogdmFsdWUgcGFzc2VkLCByZWdhcmRsZXNzIG9mIHVuaXQsIGlzIGFzc3VtZWQgdG8gYmUgYSBwaXhlbCB2YWx1ZS4gQnkgZGVmYXVsdCwgdGhlIGJhc2UgcGl4ZWwgdmFsdWUgdXNlZCB0byBjYWxjdWxhdGUgdGhlIHJlbSB2YWx1ZSBpcyB0YWtlbiBmcm9tIHRoZSBgJGdsb2JhbC1mb250LXNpemVgIHZhcmlhYmxlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFBpeGVsIHZhbHVlIHRvIGNvbnZlcnQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIEJhc2UgZm9yIHBpeGVsIGNvbnZlcnNpb24uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBBIG51bWJlciBpbiByZW1zLCBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSBnaXZlbiB2YWx1ZSBhbmQgdGhlIGJhc2UgcGl4ZWwgdmFsdWUuIHJlbSB2YWx1ZXMgYXJlIHBhc3NlZCB0aHJvdWdoIGFzIGlzLlxuQGZ1bmN0aW9uIC16Zi10by1yZW0oJHZhbHVlLCAkYmFzZTogbnVsbCkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSAhPSAnbnVtYmVyJyB7XG4gICAgQGlmICR1bml0LXdhcm5pbmdzIHtcbiAgICAgIEB3YXJuIGluc3BlY3QoJHZhbHVlKSArICcgd2FzIHBhc3NlZCB0byByZW0tY2FsYygpLCB3aGljaCBpcyBub3QgYSBudW1iZXIuJztcbiAgICB9XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cblxuICAvLyBUcmFuc2Zvcm0gZW0gaW50byByZW0gaWYgc29tZW9uZSBoYW5kcyBvdmVyICdlbSdzXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ2VtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAxcmVtO1xuICB9XG5cbiAgLy8gQ2FsY3VsYXRlIHJlbSBpZiB1bml0cyBmb3IgJHZhbHVlIGlzIG5vdCByZW0gb3IgZW1cbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSAncmVtJyB7XG4gICAgJHZhbHVlOiBkaXZpZGUoc3RyaXAtdW5pdCgkdmFsdWUpLCBzdHJpcC11bml0KCRiYXNlKSkgKiAxcmVtO1xuICB9XG5cbiAgLy8gVHVybiAwcmVtIGludG8gMFxuICBAaWYgJHZhbHVlID09IDByZW0ge1xuICAgICR2YWx1ZTogMDtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCwgcGVyY2VudGFnZSwgcmVtIG9yIGVtIHZhbHVlIHRvIGEgdW5pdGxlc3MgdmFsdWUgYmFzZWQgb24gYSBnaXZlbiBmb250IHNpemUuIElkZWFsIGZvciB3b3JraW5nIG91dCB1bml0bGVzcyBsaW5lIGhlaWdodHMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gY29udmVydCB0byBhIHVuaXRsZXNzIGxpbmUgaGVpZ2h0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIC0gVGhlIGZvbnQgc2l6ZSB0byB1c2UgdG8gd29yayBvdXQgdGhlIGxpbmUgaGVpZ2h0IC0gZGVmYXVsdHMgdG8gJGdsb2JhbC1mb250LXNpemVcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBVbml0bGVzcyBudW1iZXJcbkBmdW5jdGlvbiB1bml0bGVzcy1jYWxjKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBGaXJzdCwgbGV0cyBjb252ZXJ0IG91ciAkYmFzZSB0byBwaXhlbHNcblxuICAvLyBJZiB0aGUgYmFzZSBmb250IHNpemUgaXMgYSAlLCB0aGVuIG11bHRpcGx5IGl0IGJ5IDE2cHhcbiAgQGlmIHVuaXQoJGJhc2UpID09ICclJyB7XG4gICAgJGJhc2U6IGRpdmlkZSgkYmFzZSwgMTAwJSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmIHVuaXQoJGJhc2UpID09ICdyZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmIHVuaXQoJGJhc2UpID09ICdlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBOb3cgbGV0J3MgY29udmVydCBvdXIgdmFsdWUgdG8gcGl4ZWxzIHRvb1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICclJyB7XG4gICAgJHZhbHVlOiBkaXZpZGUoJHZhbHVlLCAxMDAlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncmVtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ2VtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIC8vICdweCdcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIHtcbiAgICBAcmV0dXJuIGRpdmlkZShzdHJpcC11bml0KCR2YWx1ZSksIHN0cmlwLXVuaXQoJGJhc2UpKTtcbiAgfVxuXG4gIC8vIGFzc3VtZSB0aGF0IGxpbmUtaGVpZ2h0cyBncmVhdGVyIHRoYW4gMTAgYXJlIG1lYW50IHRvIGJlIGFic29sdXRlIGluICdweCdcbiAgQGlmIHVuaXRsZXNzKCR2YWx1ZSkgYW5kICgkdmFsdWUgPiAxMCkge1xuICAgIEByZXR1cm4gZGl2aWRlKCR2YWx1ZSwgc3RyaXAtdW5pdCgkYmFzZSkpO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG4iLCIvLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby12ZW5kb3ItcHJlZml4ZXNcblxuQG1peGluIGZvdW5kYXRpb24tbm9ybWFsaXplKCkge1xuICAvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbiAgLy8gRG9jdW1lbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuXG4gIGh0bWwge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIH1cblxuICAvLyBTZWN0aW9uc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cblxuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gIC8vIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIG1hcmdpbjogMC42N2VtIDA7XG4gIH1cblxuICAvLyBHcm91cGluZyBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbiAgaHIge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gICAgaGVpZ2h0OiAwOyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBwcmUge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBUZXh0LWxldmVsIHNlbWFudGljc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC8vIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gIC8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG5cbiAgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IDA7IC8vIDFcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG5cbiAgYixcbiAgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGNvZGUsXG4gIGtiZCxcbiAgc2FtcCB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gICAgZm9udC1zaXplOiAxZW07IC8vIDJcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgfVxuXG4gIC8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAvLyBhbGwgYnJvd3NlcnMuXG5cbiAgc3ViLFxuICBzdXAge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICBzdWIge1xuICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgfVxuXG4gIHN1cCB7XG4gICAgdG9wOiAtMC41ZW07XG4gIH1cblxuICAvLyBFbWJlZGRlZCBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cblxuICBpbWcge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIC8vIEZvcm1zXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cblxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8vIDFcbiAgICBmb250LXNpemU6IDEwMCU7IC8vIDFcbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLy8gMVxuICAgIG1hcmdpbjogMDsgLy8gMlxuICB9XG5cbiAgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gIC8vIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG5cbiAgYnV0dG9uLFxuICBpbnB1dCB7IC8vIDFcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAvLyAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG5cbiAgYnV0dG9uLFxuICBzZWxlY3QgeyAvLyAxXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuXG4gIGJ1dHRvbixcbiAgW3R5cGU9XCJidXR0b25cIl0sXG4gIFt0eXBlPVwicmVzZXRcIl0sXG4gIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG5cbiAgYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuXG4gIGJ1dHRvbjotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG5cbiAgZmllbGRzZXQge1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gIC8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgLy8gMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAvLyAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cblxuICBsZWdlbmQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBjb2xvcjogaW5oZXJpdDsgLy8gMlxuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAxXG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gM1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG5cbiAgcHJvZ3Jlc3Mge1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuXG4gIHRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICAvLyAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG5cbiAgW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDJcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblxuICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cblxuICBbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDFcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMlxuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuXG4gIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAvLyAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG5cbiAgOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbiAgICBmb250OiBpbmhlcml0OyAvLyAyXG4gIH1cblxuICAvLyBJbnRlcmFjdGl2ZVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG5cbiAgZGV0YWlscyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgc3VtbWFyeSB7XG4gICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICB9XG5cbiAgLy8gTWlzY1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cblxuICB0ZW1wbGF0ZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuXG4gIFtoaWRkZW5dIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gRGlzYWJsZSBvdXRsaW5lIHdoZW4gaW50ZW50IGlzIGNsZWFybHkgbW91c2UgYW5kIHRvdWNoXG4gIFtkYXRhLXdoYXRpbnRlbnQ9XCJtb3VzZVwiXSxcbiAgW2RhdGEtd2hhdGludGVudD1cInRvdWNoXCJdLFxuICBbZGF0YS13aGF0aW5wdXQ9XCJtb3VzZVwiXSxcbiAgW2RhdGEtd2hhdGlucHV0PVwidG91Y2hcIl0ge1xuICAgICosICo6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlIGlPUyBjYWxsb3V0cyB3aGVuIGRyYWdnYWJsZSBpcyBmYWxzZVxuICBbZHJhZ2dhYmxlPWZhbHNlXSB7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tY29sb3ItbGl0ZXJhbHMsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCBnbG9iYWxcbi8vLy9cblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8vIEZvbnQgc2l6ZSBhdHRyaWJ1dGUgYXBwbGllZCB0byBgPGh0bWw+YCBhbmQgYDxib2R5PmAuIFdlIHVzZSAxMDAlIGJ5IGRlZmF1bHQgc28gdGhlIHZhbHVlIGlzIGluaGVyaXRlZCBmcm9tIHRoZSB1c2VyJ3MgYnJvd3NlciBzZXR0aW5ncy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHdpZHRoIG9mIHlvdXIgc2l0ZS4gVXNlZCBieSB0aGUgZ3JpZCB0byBkZXRlcm1pbmUgcm93IHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBhbGwgdHlwZS4gYCRnbG9iYWwtbGluZWhlaWdodGAgaXMgMjRweCB3aGlsZSBgJGdsb2JhbC1mb250LXNpemVgIGlzIDE2cHhcbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbGluZWhlaWdodDogMS41ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JzIHVzZWQgZm9yIGJ1dHRvbnMsIGNhbGxvdXRzLCBsaW5rcywgZXRjLiBUaGVyZSBtdXN0IGFsd2F5cyBiZSBhIGNvbG9yIGNhbGxlZCBgcHJpbWFyeWAuXG4vLy8gQHR5cGUgTWFwXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIHByaW1hcnk6ICMxNzc5YmEsXG4gIHNlY29uZGFyeTogIzc2NzY3NixcbiAgc3VjY2VzczogIzNhZGI3NixcbiAgd2FybmluZzogI2ZmYWUwMCxcbiAgYWxlcnQ6ICNjYzRiMzcsXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbGlnaHQgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGxpZ2h0LWdyYXk6ICNlNmU2ZTYgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBtZWRpdW0gZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJG1lZGl1bS1ncmF5OiAjY2FjYWNhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgZGFyayBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZGFyay1ncmF5OiAjOGE4YThhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgYmxhY2sgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibGFjazogIzBhMGEwYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIHdoaXRlIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kd2hpdGU6ICNmZWZlZmUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1mb250LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIExpc3RcbiRib2R5LWZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vLyBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSBzYWZlIHBhZGRpbmcgb24gdGhlIGJvZHkgZm9yIG5vbi1yZWN0YW5ndWxhciBkZXZpY2VzIChpLmUuIHBob25lcyB3aXRoIG5vdGNoZXMpXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJvZHktc2FmZS1wYWRkaW5nOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIGFudGlhbGlhc2VkIHR5cGUsIHVzaW5nIHRoZSBgLXdlYmtpdC1mb250LXNtb290aGluZ2AgYW5kIGAtbW96LW9zeC1mb250LXNtb290aGluZ2AgQ1NTIHByb3BlcnRpZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJvZHktYW50aWFsaWFzZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgbWFyZ2luIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwYWRkaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcG9zaXRpb25pbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcG9zaXRpb246IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3Igbm9ybWFsIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3IgYm9sZCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIGVsZW1lbnRzIHRoYXQgaGF2ZSBhIGJvcmRlciByYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXJhZGl1czogMCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIENhbiBiZSBvdmVyd3JpdHRlbiBhdCBpbmRpdmlkdWFsIG1lbnUgY29tcG9uZW50IGxldmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tZW51LXBhZGRpbmc6IDAuN3JlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gTmVzdGVkIG1hcmdpbiBmb3Igc3VibWVudS5cbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gU2V0cyB0aGUgdGV4dCBkaXJlY3Rpb24gb2YgdGhlIENTUy4gQ2FuIGJlIGVpdGhlciBgbHRyYCBvciBgcnRsYC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHIgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggZm9yIGNvbXBvbmVudHMgdGhhdCBzdXBwb3J0IGl0LlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZWQgcmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgcHJvdG90eXBlcyBpZiBhcHBsaWNhYmxlXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gQnV0dG9uIGN1cnNvcidzIHZhbHVlLCBgYXV0b2AgYnkgZGVmYXVsdFxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtYnV0dG9uLWN1cnNvcjogYXV0byAhZGVmYXVsdDtcblxuQGlmIG5vdCBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gIEBlcnJvciAnSW4gJGZvdW5kYXRpb24tcGFsZXR0ZSwgeW91IG11c3QgaGF2ZSBhIGNvbG9yIG5hbWVkIFwicHJpbWFyeVwiLic7XG59XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciB0ZXh0IGRpcmVjdGlvblxuJGdsb2JhbC1sZWZ0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgcmlnaHQsIGxlZnQpO1xuJGdsb2JhbC1yaWdodDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGxlZnQsIHJpZ2h0KTtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGUgdGhhdCBjb250YWlucyB0aGUgZmxleCBqdXN0aWZ5aW5nIG9wdGlvbnNcbiQtemYtZmxleC1qdXN0aWZ5OiAtemYtZmxleC1qdXN0aWZ5KCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24pO1xuXG4vLy8gR2xvYmFsIHRvbGVyYW5jZSBmb3IgY29sb3IgcGljayBjb250cmFzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDAgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciBjb2xvcnNcbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcblxuQG1peGluIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcyB7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbm9ybWFsaXplO1xuXG4gIC8vIFRoZXNlIHN0eWxlcyBhcmUgYXBwbGllZCB0byBhIDxtZXRhPiB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdFxuICAuZm91bmRhdGlvbi1tcSB7XG4gICAgZm9udC1mYW1pbHk6ICcjey16Zi1icC1zZXJpYWxpemUoJGJyZWFrcG9pbnRzKX0nO1xuICB9XG5cbiAgaHRtbCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gU2V0IGJveC1zaXppbmcgZ2xvYmFsbHkgdG8gaGFuZGxlIHBhZGRpbmcgYW5kIGJvcmRlciB3aWR0aHNcbiAgKixcbiAgKjo6YmVmb3JlLFxuICAqOjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIERlZmF1bHQgYm9keSBzdHlsZXNcbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBAaWYgKCRib2R5LXNhZmUtcGFkZGluZykge1xuICAgICAgLy8gdXNpbmcgZW52aXJvbm1lbnQgdmFyaWFibGVzIHRvIGFjY291bnQgZm9yIG5vbi1yZWN0YW5ndWxhciBkaXNwbGF5cyBlLmcuIHBob25lcyB3aXRoIG5vdGNoZXNcbiAgICAgIHBhZGRpbmctdG9wOiBlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCk7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSk7XG4gICAgICBwYWRkaW5nLWxlZnQ6IGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCk7XG4gICAgfVxuXG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cbiAgICBAaWYgKCRib2R5LWFudGlhbGlhc2VkKSB7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICAvLyBHZXQgcmlkIG9mIGdhcCB1bmRlciBpbWFnZXMgYnkgbWFraW5nIHRoZW0gZGlzcGxheTogaW5saW5lLWJsb2NrOyBieSBkZWZhdWx0XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAvLyBHcmlkIGRlZmF1bHRzIHRvIGdldCBpbWFnZXMgYW5kIGVtYmVkcyB0byB3b3JrIHByb3Blcmx5XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHRleHRhcmVhIHRha2VzIG9uIGhlaWdodCBhdXRvbWF0aWNhbGx5XG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIE1ha2Ugc2VsZWN0IGVsZW1lbnRzIGFyZSAxMDAlIHdpZHRoIGJ5IGRlZmF1bHRcbiAgc2VsZWN0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gU3R5bGVzIEdvb2dsZSBNYXBzIGFuZCBNYXBRdWVzdCBlbWJlZHMgcHJvcGVybHlcbiAgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1pZHNcbiAgLm1hcF9jYW52YXMsXG4gIC5tcWEtZGlzcGxheSB7XG4gICAgaW1nLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCA8YnV0dG9uPiBzdHlsZXMgY3JlYXRlZCBieSBtb3N0IGJyb3dzZXJzXG4gIGJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY3Vyc29yOiAkZ2xvYmFsLWJ1dHRvbi1jdXJzb3I7XG4gIH1cblxuICAvLyBQcmV2ZW50IHRleHQgb3ZlcmZsb3cgb24gcHJlXG4gIHByZSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICB9XG5cbiAgLy8gTWFrZSByZXNldCBpbmhlcml0IGZvbnQtZmFtaWx5IGluc3RlYWQgb2Ygc2V0dGluZ3Mgc2Fucy1zZXJpZlxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBJbnRlcm5hbCBjbGFzc2VzIHRvIHNob3cvaGlkZSBlbGVtZW50cyBpbiBKYXZhU2NyaXB0XG4gIC5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmlzLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vIFBhdGNoIHRvIGZpeCBpc3N1ZSAjMTIwODBcbiQtemYtcGItdmFsdWU6IG51bGw7XG5cbi8vLyBDcmVhdGVzIGFuIGlubmVyIGJveC1zaGFkb3cgZm9yIG9ubHkgb25lIHNpZGVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpZGUgLSBTaWRlIHRoZSBzaGFkb3cgaXMgc3VwcG9zZWQgdG8gYXBwZWFyLiBDYW4gYmUgYHRvcGAsIGBsZWZ0YCwgYHJpZ2h0YCBvciBgYm90dG9tYC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgLSBXaWR0aCBmb3IgdGhlIHRhcmdldCBzaWRlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIG9mIHRoZSBzaGFkb3cuXG5AbWl4aW4gaW5uZXItc2lkZS1zaGFkb3coXG4gICRzaWRlOiBib3R0b20sXG4gICRzaXplOiAyMHB4LFxuICAkY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KVxuKSB7XG5cbiAgJGhlbHBlcjogcm91bmQoJHNpemUgKiAwLjY1KTtcblxuICBAaWYgKCRzaWRlID09IHRvcCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBsZWZ0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IHJpZ2h0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgKC0xKSokaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gYm90dG9tKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAoLTEpKiRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIENTUyB0cmlhbmdsZSwgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIGRyb3Bkb3duIGFycm93cywgZHJvcGRvd24gcGlwcywgYW5kIG1vcmUuIFVzZSB0aGlzIG1peGluIGluc2lkZSBhIGAmOjpiZWZvcmVgIG9yIGAmOjphZnRlcmAgc2VsZWN0b3IsIHRvIGF0dGFjaCB0aGUgdHJpYW5nbGUgdG8gYW4gZXhpc3RpbmcgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdHJpYW5nbGUtc2l6ZSAtIFdpZHRoIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkdHJpYW5nbGUtY29sb3IgLSBDb2xvciBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHJpYW5nbGUtZGlyZWN0aW9uIC0gRGlyZWN0aW9uIHRoZSB0cmlhbmdsZSBwb2ludHMuIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC5cbkBtaXhpbiBjc3MtdHJpYW5nbGUoXG4gICR0cmlhbmdsZS1zaXplLFxuICAkdHJpYW5nbGUtY29sb3IsXG4gICR0cmlhbmdsZS1kaXJlY3Rpb25cbikge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcblxuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6ICR0cmlhbmdsZS1zaXplO1xuXG4gIGNvbnRlbnQ6ICcnO1xuXG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBkb3duKSB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gdXApIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSByaWdodCkge1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gbGVmdCkge1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgbWVudSBpY29uIHdpdGggYSBzZXQgd2lkdGgsIGhlaWdodCwgbnVtYmVyIG9mIGJhcnMsIGFuZCBjb2xvcnMuIFRoZSBtaXhpbiB1c2VzIHRoZSBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgdGhlIGJhcnMgdG8gZGV0ZXJtaW5lIHNwYWNpbmcuIDxkaXYgY2xhc3M9XCJkb2NzLWV4YW1wbGUtYnVyZ2VyXCI+PC9kaXY+XG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvci1ob3ZlciBbJGRhcmstZ3JheV0gLSBDb2xvciB0byB1c2Ugd2hlbiB0aGUgaWNvbiBpcyBob3ZlcmVkIG92ZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbMjBweF0gLSBXaWR0aCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGhlaWdodCBbMTZweF0gLSBIZWlnaHQgb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3ZWlnaHQgWzJweF0gLSBIZWlnaHQgb2YgaW5kaXZpZHVhbCBiYXJzIGluIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFycyBbM10gLSBOdW1iZXIgb2YgYmFycyBpbiB0aGUgaWNvbi5cbkBtaXhpbiBoYW1idXJnZXIoXG4gICRjb2xvcjogJGJsYWNrLFxuICAkY29sb3ItaG92ZXI6ICRkYXJrLWdyYXksXG4gICR3aWR0aDogMjBweCxcbiAgJGhlaWdodDogMTZweCxcbiAgJHdlaWdodDogMnB4LFxuICAkYmFyczogM1xuKSB7XG4gIC8vIGJveC1zaGFkb3cgQ1NTIG91dHB1dFxuICAkc2hhZG93OiAoKTtcbiAgJGhvdmVyLXNoYWRvdzogKCk7XG5cbiAgLy8gU3BhY2luZyBiZXR3ZWVuIGJhcnMgaXMgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgdG90YWwgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIGVhY2ggYmFyXG4gICRzcGFjaW5nOiBkaXZpZGUoJGhlaWdodCAtICgkd2VpZ2h0ICogJGJhcnMpLCAkYmFycyAtIDEpO1xuXG4gIEBpZiB1bml0KCRzcGFjaW5nKSA9PSAncHgnIHtcbiAgICAkc3BhY2luZzogZmxvb3IoJHNwYWNpbmcpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAkc2hhZG93OiBhcHBlbmQoJHNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLCBjb21tYSk7XG4gIH1cblxuICAvLyBJY29uIGNvbnRhaW5lclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gSWNvbiBiYXJzXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR3ZWlnaHQ7XG5cbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGlmICRjb2xvci1ob3ZlciB7XG4gICAgLy8gR2VuZXJhdGUgQ1NTXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICAgJGhvdmVyLXNoYWRvdzogYXBwZW5kKCRob3Zlci1zaGFkb3csIDAgJG9mZnNldCAwICRjb2xvci1ob3ZlciwgY29tbWEpO1xuICAgIH1cblxuICAgICY6aG92ZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcbiAgICAgIGJveC1zaGFkb3c6ICRob3Zlci1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGEgZG93bndhcmQtZmFjaW5nIHRyaWFuZ2xlIGFzIGEgYmFja2dyb3VuZCBpbWFnZSB0byBhbiBlbGVtZW50LiBUaGUgaW1hZ2UgaXMgZm9ybWF0dGVkIGFzIGFuIFNWRywgbWFraW5nIGl0IGVhc3kgdG8gY2hhbmdlIHRoZSBjb2xvci4gQmVjYXVzZSBJbnRlcm5ldCBFeHBsb3JlciBkb2Vzbid0IHN1cHBvcnQgZW5jb2RlZCBTVkdzIGFzIGJhY2tncm91bmQgaW1hZ2VzLCBhIFBORyBmYWxsYmFjayBpcyBhbHNvIGluY2x1ZGVkLlxuLy8vIFRoZXJlIGFyZSB0d28gUE5HIGZhbGxiYWNrczogYSBibGFjayB0cmlhbmdsZSBhbmQgYSB3aGl0ZSB0cmlhbmdsZS4gVGhlIG9uZSB1c2VkIGRlcGVuZHMgb24gdGhlIGxpZ2h0bmVzcyBvZiB0aGUgaW5wdXQgY29sb3IuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSB0cmlhbmdsZS5cbkBtaXhpbiBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRjb2xvcjogJGJsYWNrKSB7XG4gICRyZ2I6ICdyZ2IlMjgje3JvdW5kKHJlZCgkY29sb3IpKX0sICN7cm91bmQoZ3JlZW4oJGNvbG9yKSl9LCAje3JvdW5kKGJsdWUoJGNvbG9yKSl9JTI5JztcblxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZlcnNpb249XCIxLjFcIiB3aWR0aD1cIjMyXCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDMyIDI0XCI+PHBvbHlnb24gcG9pbnRzPVwiMCwwIDMyLDAgMTYsMjRcIiBzdHlsZT1cImZpbGw6ICN7JHJnYn1cIj48L3BvbHlnb24+PC9zdmc+Jyk7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCkge1xuICAgIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA8IDYwJSB7XG4gICAgICAvLyBXaGl0ZSB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEJsYWNrIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBTUJKUkVGVWVOckVsbHNPaENBTVJWc3pDOUlselU3S0NtVkhUSnNvTVdZTVV0cHl2OUJnYnVYUUI1WlNkZ0JZWVk0eWNnQml2azhLWUZzUU1mTWlUVEJQNG8zblV6Q0t6T2FiTEpiTHkyL2czMWV2R2tBZ2luUjQvWmVnS0g1cVgzYkpDc2NBM3QweDNrZ081dFFGeWhoRmY1MHhScUZMYnlNVU5KUXpneWpHUy93Z0Nwdktxa1JCcHVXckU0VjlkKzFFNGRQVVhxSWcxMDdTUU9FLzJEUlF4TXdURHlnSUluVkRFVDlUM2xDb2ovNmovVkNtR2paT2wybEtwWjhBQXdEUVA3eklpbURHRlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFwcGxpZXMgdGhlIG1pY3JvIGNsZWFyZml4IGhhY2sgcG9wdWxhcml6ZWQgYnkgTmljb2xhcyBHYWxsYWdoZXIuIEluY2x1ZGUgdGhpcyBtaXhpbiBvbiBhIGNvbnRhaW5lciBpZiBpdHMgY2hpbGRyZW4gYXJlIGFsbCBmbG9hdGVkLCB0byBnaXZlIHRoZSBjb250YWluZXIgYSBwcm9wZXIgaGVpZ2h0LlxuLy8vIFRoZSBjbGVhcmZpeCBpcyBhdWdtZW50ZWQgd2l0aCBzcGVjaWZpYyBzdHlsZXMgdG8gcHJldmVudCBib3JkZXJzIGluIGZsZXhib3ggZW52aXJvbm1lbnRzXG4vLy8gQGxpbmsgaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svIE1pY3JvIENsZWFyZml4IEhhY2tcbi8vLyBAbGluayBodHRwOi8vZGFuaXNhZGVzaWduZXIuY29tL2Jsb2cvZmxleGJveC1jbGVhci1maXgtcHNldWRvLWVsZW1lbnRzLyBGbGV4Ym94IGZpeFxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vLyBBZGRzIENTUyBmb3IgYSBcInF1YW50aXR5IHF1ZXJ5XCIgc2VsZWN0b3IgdGhhdCBhdXRvbWF0aWNhbGx5IHNpemVzIGVsZW1lbnRzIGJhc2VkIG9uIGhvdyBtYW55IHRoZXJlIGFyZSBpbnNpZGUgYSBjb250YWluZXIuXG4vLy8gQGxpbmsgaHR0cDovL2FsaXN0YXBhcnQuY29tL2FydGljbGUvcXVhbnRpdHktcXVlcmllcy1mb3ItY3NzIFF1YW50aXR5IFF1ZXJpZXMgZm9yIENTU1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXggLSBNYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0byBkZXRlY3QuIFRoZSBoaWdoZXIgdGhpcyBudW1iZXIgaXMsIHRoZSBtb3JlIENTUyB0aGF0J3MgcmVxdWlyZWQgdG8gY292ZXIgZWFjaCBudW1iZXIgb2YgaXRlbXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZWxlbSBbbGldIC0gVGFnIHRvIHVzZSBmb3Igc2libGluZyBzZWxlY3RvcnMuXG5AbWl4aW4gYXV0by13aWR0aCgkbWF4LCAkZWxlbTogbGkpIHtcbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkbWF4IHtcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCxcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCB+ICN7JGVsZW19IHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKGRpdmlkZSgxLCAkaSkpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyB0aGUgZm9jdXMgcmluZyBhcm91bmQgYW4gZWxlbWVudCB3aGVuIGEgbW91c2UgaW5wdXQgaXMgZGV0ZWN0ZWQuXG5AbWl4aW4gZGlzYWJsZS1tb3VzZS1vdXRsaW5lIHtcbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddICYge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8vIE1ha2VzIGFuIGVsZW1lbnQgdmlzdWFsbHkgaGlkZGVuLCBidXQgc3RpbGwgYWNjZXNzaWJsZSB0byBrZXlib2FyZHMgYW5kIGFzc2lzdGl2ZSBkZXZpY2VzLlxuLy8vIEBsaW5rIGh0dHA6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHkgSGlkaW5nIENvbnRlbnQgZm9yIEFjY2Vzc2liaWxpdHlcbi8vLyBAbGluayBodHRwOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZW5mb3JjZSAtIElmIGB0cnVlYCwgdXNlIGAhaW1wb3J0YW50YCBvbiBhcHBsaWVkIHByb3BlcnRpZXNcbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZShcbiAgJGVuZm9yY2U6IHRydWVcbikge1xuICAkaW1wb3J0YW50OiBpZigkZW5mb3JjZSwgJyFpbXBvcnRhbnQnLCBudWxsKTtcblxuICBwb3NpdGlvbjogYWJzb2x1dGUgI3skaW1wb3J0YW50fTtcbiAgd2lkdGg6IDFweCAjeyRpbXBvcnRhbnR9O1xuICBoZWlnaHQ6IDFweCAjeyRpbXBvcnRhbnR9O1xuICBwYWRkaW5nOiAwICN7JGltcG9ydGFudH07XG4gIG92ZXJmbG93OiBoaWRkZW4gI3skaW1wb3J0YW50fTtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKSAjeyRpbXBvcnRhbnR9O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICN7JGltcG9ydGFudH07XG4gIGJvcmRlcjogMCAjeyRpbXBvcnRhbnR9O1xufVxuXG4vLy8gUmV2ZXJzZXMgdGhlIENTUyBvdXRwdXQgY3JlYXRlZCBieSB0aGUgYGVsZW1lbnQtaW52aXNpYmxlKClgIG1peGluLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGVuZm9yY2UgLSBJZiBgdHJ1ZWAsIHVzZSBgIWltcG9ydGFudGAgb24gYXBwbGllZCBwcm9wZXJ0aWVzXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUtb2ZmKFxuICAkZW5mb3JjZTogdHJ1ZVxuKSB7XG4gICRpbXBvcnRhbnQ6IGlmKCRlbmZvcmNlLCAnIWltcG9ydGFudCcsIG51bGwpO1xuXG4gIHBvc2l0aW9uOiBzdGF0aWMgI3skaW1wb3J0YW50fTtcbiAgd2lkdGg6IGF1dG8gI3skaW1wb3J0YW50fTtcbiAgaGVpZ2h0OiBhdXRvICN7JGltcG9ydGFudH07XG4gIG92ZXJmbG93OiB2aXNpYmxlICN7JGltcG9ydGFudH07XG4gIGNsaXA6IGF1dG8gI3skaW1wb3J0YW50fTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbCAjeyRpbXBvcnRhbnR9O1xufVxuXG4vLy8gVmVydGljYWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiB2ZXJ0aWNhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gaG9yaXpvbnRhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4vLy8gQWJzb2x1dGVseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBhYnNvbHV0ZS1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4vLy8gSXRlcmF0ZXMgdGhyb3VnaCBicmVha3BvaW50cyBkZWZpbmVkIGluIGAkYnJlYWtwb2ludC1jbGFzc2VzYCBhbmQgcHJpbnRzIHRoZSBDU1MgaW5zaWRlIHRoZSBtaXhpbiBhdCBlYWNoIGJyZWFrcG9pbnQncyBtZWRpYSBxdWVyeS4gVXNlIHRoaXMgd2l0aCB0aGUgZ3JpZCwgb3IgYW55IG90aGVyIGNvbXBvbmVudCB0aGF0IGhhcyByZXNwb25zaXZlIGNsYXNzZXMuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRzbWFsbCBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBza2lwIHRoZSBgc21hbGxgIGJyZWFrcG9pbnQuIFVzZSB0aGlzIHdpdGggY29tcG9uZW50cyB0aGF0IGRvbid0IHByZWZpeCBjbGFzc2VzIHdpdGggYHNtYWxsLWAsIG9ubHkgYG1lZGl1bS1gIGFuZCB1cC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRhdXRvLWluc2VydC1icmVha3BvaW50cyBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBpdGVyYXRlIG92ZXIgYnJlYWtwb2ludHMgd2l0aG91dCBkb2luZyB0aGUgbWVkaWEgcXVlcnkgaXRzZWxmLiBVc2VmdWwgZm9yIG1vcmUgY29tcGxleCBtZWRpYSBxdWVyeSBnZW5lcmF0aW9uIGFzIGluIHRoZSBtYXJnaW4gZ3JpZC5cbkBtaXhpbiAtemYtZWFjaC1icmVha3BvaW50KFxuICAkc21hbGw6IHRydWUsXG4gICRhdXRvLWluc2VydC1icmVha3BvaW50czogdHJ1ZVxuKSB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQtaW4oYXV0bywgLXpmLWJvb2woJHNtYWxsKSwgLXpmLWJvb2woJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzKSkge1xuICAgIEBjb250ZW50XG4gIH07XG59XG5cbi8vLyBJdGVyYXRlcyB3aXRoIGBAY29udGVudGAgdGhyb3VnaCB0aGUgZ2l2ZW4gbGlzdCBvZiBicmVha3BvaW50cyBgJGJyZWFrcG9pbnRzYC5cbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfExpc3R9ICRicmVha3BvaW50cyBbYXV0b10gLSBCcmVha3BvaW50cyB0byBpdGVyYXRlcyBvbi4gSXQgY2FuIGJlIGEgYnJlYWtwb2ludCBuYW1lLCBsaXN0IG9mIGJyZWFrcG9pbnRzIG9yIGBhdXRvYCBmb3IgYWxsIGJyZWFrcG9pbnRzLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbnxOdWxsfSAkemVyby1icmVha3BvaW50IFtudWxsXSAtIFdoZXRoZXIgdGhlIHplcm8tYnJlYWtwb2ludCAob2Z0ZW4gYHNtYWxsYCkgbXVzdCBiZSBpbmNsdWRlZC4gSWYgYHRydWVgLCBpdCB3aWxsIGFsd2F5cyBiZSBhZGRlZCB0byB0aGUgbGlzdCBpZiBub3QgYWxyZWFkeSB0aGVyZS4gSWYgYGZhbHNlYCwgaXQgd2lsbCBhbHdheXMgYmUgcmVtb3ZlZC4gRG9lcyBub3RoaW5nIGJ5IGRlZmF1bHQuXG4vLy8gQHBhcmFtIHtCb29sZWFufEtleXdvcmR9ICRtZWRpYS1xdWVyaWVzIFt0cnVlXSAtIFdoZXRoZXIgbWVkaWEtcXVlcmllcyBtdXN0IGJlIGdlbmVyYXRlZC4gSWYgYGZvci1saXN0c2AsIG9ubHkgZ2VuZXJhdGUgbWVkaWEtcXVlcmllcyB3aGVuIGAkYnJlYWtwb2ludHNgIGlzIGEgbGlzdC5cbkBtaXhpbiAtemYtZWFjaC1icmVha3BvaW50LWluKFxuICAkYnJlYWtwb2ludHM6IGF1dG8sXG4gICR6ZXJvLWJyZWFrcG9pbnQ6IG51bGwsXG4gICRtZWRpYS1xdWVyaWVzOiB0cnVlXG4pIHtcbiAgJC1saXN0OiAoKTtcbiAgJC1icmVha3BvaW50cy1pcy1hLWxpc3Q6IHRydWU7XG5cbiAgLy8gUmV0cmlldmUgdGhlIGxpc3Qgb2YgYnJlYWtwb2ludChzKSB0byBpdGVyYXRlIG9uLlxuICBAaWYgJGJyZWFrcG9pbnRzID09IGF1dG8ge1xuICAgICQtbGlzdDogJGJyZWFrcG9pbnQtY2xhc3NlcztcbiAgfVxuICBAZWxzZSBpZiB0eXBlLW9mKCRicmVha3BvaW50cykgPT0gJ2xpc3QnIHtcbiAgICAkLWxpc3Q6ICRicmVha3BvaW50cztcbiAgfVxuICBAZWxzZSBpZiB0eXBlLW9mKCRicmVha3BvaW50cykgPT0gJ3N0cmluZycge1xuICAgICQtbGlzdDogKCRicmVha3BvaW50cyk7XG4gICAgJC1icmVha3BvaW50cy1pcy1hLWxpc3Q6IGZhbHNlO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ1dyb25nIHN5bnRheCBmb3IgXCIkYnJlYWtwb2ludHNcIiBpbiBcIi16Zi1lYWNoLWJyZWFrcG9pbnQtaW4oKVwiLiBHb3QgXCIjeyRicmVha3BvaW50c31cIiAoI3t0eXBlLW9mKCRicmVha3BvaW50cyl9KS4gRXhwZWN0ZWQgYSBicmVha3BvaW50IG5hbWUsIGEgbGlzdCBvZiBicmVha3BvaW50cyBvciBcImF1dG9cIic7XG4gIH1cblxuICAvLyBBZGQgb3IgcmVtb3ZlIHRoZSB6ZXJvIGJyZWFrcG9pbnQgYWNjb3JkaW5nIHRvIGAkemVyby1icmVha3BvaW50YFxuICBAaWYgJHplcm8tYnJlYWtwb2ludCA9PSB0cnVlIHtcbiAgICAkLWxpc3Q6IGpvaW4oKCQtemYtemVyby1icmVha3BvaW50KSwgc2wtcmVtb3ZlKCQtbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpKTtcbiAgfVxuICBAZWxzZSBpZiAkemVyby1icmVha3BvaW50ID09IGZhbHNlIHtcbiAgICAkLWxpc3Q6IHNsLXJlbW92ZSgkLWxpc3QsICQtemYtemVyby1icmVha3BvaW50KTtcbiAgfVxuXG4gIC8vIEl0ZXJhdGUgb24gYnJlYWtwb2ludChzKVxuICBAZWFjaCAkYnAgaW4gJC1saXN0IHtcbiAgICAkb2xkLXpmLXNpemU6IG51bGw7XG4gICAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICAgIH1cbiAgICAkLXpmLXNpemU6ICRicCAhZ2xvYmFsO1xuXG4gICAgQGlmICgkbWVkaWEtcXVlcmllcyA9PSB0cnVlIG9yICgkbWVkaWEtcXVlcmllcyA9PSAnZm9yLWxpc3RzJyBhbmQgJC1icmVha3BvaW50cy1pcy1hLWxpc3QpKSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicCkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgdGhlIGBAY29udGVudGAgcGFzc2VkIHRvIHRoZSBtaXhpbiB3aXRoIGEgdmFsdWUgYCQtemYtYnAtdmFsdWVgIHJlbGF0ZWQgdG8gYSBicmVha3BvaW50LCBkZXBlbmRpbmcgb24gdGhlIGAkbmFtZWAgcGFyYW1ldGVyOlxuLy8vIC0gRm9yIGEgc2luZ2xlIHZhbHVlLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhpcyB2YWx1ZS5cbi8vLyAtIEZvciBhIGJyZWFrcG9pbnQgbmFtZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgLlxuLy8vIC0gRm9yIFwiYXV0b1wiLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAgYW5kIGlzIHBhc3NlZCB0byBgQGNvbnRlbnRgLCB3aGljaCBpcyBtYWRlIHJlc3BvbnNpdmUgZm9yIGVhY2ggYnJlYWtwb2ludCBvZiBgJG1hcGAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8QXJyYXl8S2V5d29yZH0gJG5hbWUgW2F1dG9dIC0gU2luZ2xlIHZhbHVlLCBicmVha3BvaW50IG5hbWUsIG9yIGxpc3Qgb2YgYnJlYWtwb2ludCBuYW1lcyB0byB1c2UuIFwiYXV0b1wiIGJ5IGRlZmF1bHQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gTWFwIG9mIGJyZWFrcG9pbnRzIGFuZCB2YWx1ZXMgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS5cbkBtaXhpbiAtemYtYnJlYWtwb2ludC12YWx1ZShcbiAgJG5hbWU6IGF1dG8sXG4gICRtYXA6IG51bGxcbikge1xuICBAaWYgJG5hbWUgPT0gYXV0byBhbmQgdHlwZS1vZigkbWFwKSA9PSAnbWFwJyB7XG4gICAgLy8gXCJhdXRvXCJcbiAgICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRrKSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCR2LCAkbWFwKSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIGJyZWFrcG9pbnQgbmFtZVxuICAgIEBpZiB0eXBlLW9mKCRuYW1lKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkYnAtdmFsdWU6IC16Zi1nZXQtYnAtdmFsKCRtYXAsICRuYW1lKTtcbiAgICAgIEBpZiAkYnAtdmFsdWUgIT0gbnVsbCB7XG4gICAgICAgICRuYW1lOiAkYnAtdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYnJlYWtwb2ludCB2YWx1ZVxuICAgICQtemYtYnAtdmFsdWU6ICRuYW1lICFnbG9iYWw7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRm9udCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHBsYWNlaG9sZGVyIHRleHQgd2l0aGluIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEZvbnRcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBmb2N1c2VkIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGZvY3VzZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgKiAwLjUgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IGluc2lkZSB0ZXh0IGlucHV0cyB3aGVuIG5vdCBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAwLjEpICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBvdXRzaWRlIHRleHQgaW5wdXRzIHdoZW4gZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ3Vyc29yIHRvIHVzZSB3aGVuIGhvdmVyaW5nIG92ZXIgYSBkaXNhYmxlZCB0ZXh0IGlucHV0LlxuLy8vIEB0eXBlIEN1cnNvclxuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cbi8vLyBQcm9wZXJ0aWVzIHRvIHRyYW5zaXRpb24gb24gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyB0aGUgdXAvZG93biBidXR0b25zIHRoYXQgQ2hyb21lIGFuZCBGaXJlZm94IGFkZCB0byBgPGlucHV0IHR5cGU9J251bWJlcic+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gUmFkaXVzIGZvciB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgZm9ybSBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1lbGVtZW50IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiB1bml0bGVzcy1jYWxjKCRpbnB1dC1saW5lLWhlaWdodCkpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZztcblxuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93O1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tdGV4dCB7XG4gIC8vIFRleHQgaW5wdXRzXG4gICN7dGV4dC1pbnB1dHMoKX0sXG4gIHRleHRhcmVhIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVsZW1lbnQ7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8vIFRleHQgYXJlYXNcbiAgdGV4dGFyZWEge1xuICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICZbcm93c10ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0LFxuICB0ZXh0YXJlYSB7XG4gICAgLy8gRGlzYWJsZWQvcmVhZG9ubHkgc3RhdGVcbiAgICAmOmRpc2FibGVkLFxuICAgICZbcmVhZG9ubHldIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHN0eWxlcyBvbiBidXR0b24tbGlrZSBpbnB1dHNcbiAgW3R5cGU9J3N1Ym1pdCddLFxuICBbdHlwZT0nYnV0dG9uJ10ge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tYnV0dG9uLXJhZGl1cztcbiAgfVxuXG4gIC8vIFJlc2V0IE5vcm1hbGl6ZSBzZXR0aW5nIGNvbnRlbnQtYm94IHRvIHNlYXJjaCBlbGVtZW50c1xuICBpbnB1dFt0eXBlPSdzZWFyY2gnXSB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cblxuICAvLyBOdW1iZXIgaW5wdXQgc3R5bGVzXG4gIFt0eXBlPSdudW1iZXInXSB7XG4gICAgQGlmIG5vdCAkaW5wdXQtbnVtYmVyLXNwaW5uZXJzIHtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuXG4gICAgICAmOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgICAgJjo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFBsYWNlaG9sZGVyIHRleHRcbiAgOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tY2hlY2tib3gge1xuICBbdHlwZT0nZmlsZSddLFxuICBbdHlwZT0nY2hlY2tib3gnXSxcbiAgW3R5cGU9J3JhZGlvJ10ge1xuICAgIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIH1cblxuICAvLyBTdHlsZXMgZm9yIGlucHV0L2xhYmVsIHNpYmxpbmdzXG4gIFt0eXBlPSdjaGVja2JveCddICsgbGFiZWwsXG4gIFt0eXBlPSdyYWRpbyddICsgbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG5cbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkZm9ybS1zcGFjaW5nICogMC41O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkZm9ybS1zcGFjaW5nO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAmW2Zvcl0ge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXRzIGluc2lkZSBsYWJlbHNcbiAgbGFiZWwgPiBbdHlwZT0nY2hlY2tib3gnXSxcbiAgbGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAvLyBOb3JtYWxpemUgZmlsZSBpbnB1dCB3aWR0aFxuICBbdHlwZT0nZmlsZSddIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBmb3JtIGxhYmVscy4gVGhlIGhpZ2hlciB0aGUgbnVtYmVyLCB0aGUgbW9yZSBzcGFjZSBiZXR3ZWVuIHRoZSBsYWJlbCBhbmQgaXRzIGlucHV0IGZpZWxkLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuOCAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvcm0tbGFiZWwtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1sYWJlbC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG5AbWl4aW4gZm9ybS1sYWJlbC1taWRkbGUge1xuICAkaW5wdXQtYm9yZGVyLXdpZHRoOiBnZXQtYm9yZGVyLXZhbHVlKCRpbnB1dC1ib3JkZXIsIHdpZHRoKTtcblxuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBsaW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuICBwYWRkaW5nOiAoJGZvcm0tc3BhY2luZyAqIDAuNSArIHJlbS1jYWxjKCRpbnB1dC1ib3JkZXItd2lkdGgpKSAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWxhYmVsIHtcbiAgbGFiZWwge1xuICAgIEBpbmNsdWRlIGZvcm0tbGFiZWw7XG5cbiAgICAmLm1pZGRsZSB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWxhYmVsLW1pZGRsZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaGVscHRleHQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc3R5bGUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWhlbHB0ZXh0IHtcbiAgLmhlbHAtdGV4dCB7XG4gICAgJG1hcmdpbi10b3A6ICgkZm9ybS1zcGFjaW5nICogMC41KSAqIC0xO1xuXG4gICAgbWFyZ2luLXRvcDogJG1hcmdpbi10b3A7XG4gICAgZm9udC1zaXplOiAkaGVscHRleHQtZm9udC1zaXplO1xuICAgIGZvbnQtc3R5bGU6ICRoZWxwdGV4dC1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkaGVscHRleHQtY29sb3I7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0L3JpZ2h0IHBhZGRpbmcgb2YgYW4gcHJlL3Bvc3RmaXhlZCBpbnB1dCBsYWJlbFxuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXByZXBvc3RmaXgge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqICRpbnB1dC1saW5lLWhlaWdodCkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIHRhYmxlKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB9XG5cbiAgICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICAmLCAmLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICAmLCAmLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cywgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJWlucHV0LWdyb3VwLWNoaWxkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1sYWJlbCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZzogMCAkaW5wdXQtcHJlZml4LXBhZGRpbmc7XG4gICAgYm9yZGVyOiAkaW5wdXQtcHJlZml4LWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkaW5wdXQtcHJlZml4LWJhY2tncm91bmQ7XG5cbiAgICBjb2xvcjogJGlucHV0LXByZWZpeC1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXByZWZpeC1ib3JkZXIpIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBhLFxuICAgIGlucHV0LFxuICAgIGJ1dHRvbixcbiAgICBsYWJlbCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcblxuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgICAgfVxuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cblxuICAvLyBTcGVjaWZpY2l0eSBidW1wIG5lZWRlZCB0byBwcmV2ZW50IG92ZXJyaWRlIGJ5IGJ1dHRvbnNcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgYmV0d2VlbiB0aGUgbGVnZW5kIHRleHQgYW5kIGZpZWxkc2V0IGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKSAhZGVmYXVsdDtcblxuQG1peGluIGZpZWxkc2V0IHtcbiAgbWFyZ2luOiAkZmllbGRzZXQtbWFyZ2luO1xuICBwYWRkaW5nOiAkZmllbGRzZXQtcGFkZGluZztcbiAgYm9yZGVyOiAkZmllbGRzZXQtYm9yZGVyO1xuXG4gIGxlZ2VuZCB7XG4gICAgLy8gQ292ZXJzIHVwIHRoZSBmaWVsZHNldCdzIGJvcmRlciB0byBjcmVhdGUgYXJ0aWZpY2lhbCBwYWRkaW5nXG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IHJlbS1jYWxjKC0zKTtcbiAgICBwYWRkaW5nOiAkbGVnZW5kLXBhZGRpbmc7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1maWVsZHNldCB7XG4gIGZpZWxkc2V0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICBsZWdlbmQge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nICogMC41O1xuICB9XG5cbiAgLmZpZWxkc2V0IHtcbiAgICBAaW5jbHVkZSBmaWVsZHNldDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGRyb3Bkb3duIHRyaWFuZ2xlIGluc2lkZSBzZWxlY3QgbWVudXMuIFNldCB0byBgdHJhbnNwYXJlbnRgIHRvIHJlbW92ZSBpdCBlbnRpcmVseS5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tc2VsZWN0IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiB1bml0bGVzcy1jYWxjKCRpbnB1dC1saW5lLWhlaWdodCkpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkc2VsZWN0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdC1iYWNrZ3JvdW5kO1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgJHNlbGVjdC10cmlhbmdsZS1jb2xvciAhPSB0cmFuc3BhcmVudCB7XG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC10cmlhbmdsZSgkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGdsb2JhbC1yaWdodCAoLSRmb3JtLXNwYWNpbmcpIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcblxuICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogKCRmb3JtLXNwYWNpbmcgKiAxLjUpO1xuICB9XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlXG4gICY6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIEhpZGUgdGhlIGRyb3Bkb3duIGFycm93IHNob3duIGluIG5ld2VyIElFIHZlcnNpb25zXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmW211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cbiAgJjpub3QoW211bHRpcGxlXSkge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tc2VsZWN0IHtcbiAgc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXNlbGVjdDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFiaWRlXG4vLy8vXG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gaW5wdXRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1pbnB1dHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gbGFiZWxzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1sYWJlbHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIHRvIHVzZSBmb3IgaW52YWxpZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHRvIHVzZSBmb3IgbGFiZWxzIG9mIGludmFsaWQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgb2YgYW4gaW5wdXQgZmllbGQgdG8gaGF2ZSBhbiBlcnJvciBzdGF0ZS5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYWxlcnQtY29sb3JdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFja2dyb3VuZC1saWdodGVuIFsxMCVdIC0gTGlnaHRuZXNzIGxldmVsIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGZvcm0taW5wdXQtZXJyb3IoXG4gICRiYWNrZ3JvdW5kOiAkaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkLFxuICAkYmFja2dyb3VuZC1saWdodGVuOiAxMCVcbikge1xuICAmOm5vdCg6Zm9jdXMpIHtcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1peCgkYmFja2dyb3VuZCwgJHdoaXRlLCAkYmFja2dyb3VuZC1saWdodGVuKTtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXJyb3Igc3R5bGVzIHRvIGEgZm9ybSBlbGVtZW50LCB1c2luZyB0aGUgdmFsdWVzIGluIHRoZSBzZXR0aW5ncyBmaWxlLlxuQG1peGluIGZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1zcGFjaW5nICogLTAuNTtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICBmb250LXNpemU6ICRpbnB1dC1lcnJvci1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZXJyb3ItY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZXJyb3Ige1xuICBAaWYgJGFiaWRlLWlucHV0cyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGludmFsaWQgaW5wdXRzXG4gICAgLmlzLWludmFsaWQtaW5wdXQge1xuICAgICAgQGluY2x1ZGUgZm9ybS1pbnB1dC1lcnJvcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJGFiaWRlLWxhYmVscyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGxhYmVscyBvZiBpbnZhbGlkIG91dHB1dHNcbiAgICAuaXMtaW52YWxpZC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDtcbiAgICB9XG4gIH1cblxuICAvLyBGb3JtIGVycm9yIGVsZW1lbnRcbiAgLmZvcm0tZXJyb3Ige1xuICAgIEBpbmNsdWRlIGZvcm0tZXJyb3I7XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1iYXNlXG4vLy8vXG5cbi8vIEJhc2UgVHlwb2dyYXBoeVxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbi8vIFRoZXNlIGFyZSBzdHlsZXMgYXBwbGllZCB0byBiYXNpYyBIVE1MIHRhZ3MsIGluY2x1ZGluZzpcbi8vICAgLSBQYXJhZ3JhcGhzIDxwPlxuLy8gICAtIEJvbGQvaXRhbGljcyA8Yj4gPHN0cm9uZz4gPGk+IDxlbT5cbi8vICAgLSBTbWFsbCB0ZXh0IDxzbWFsbD5cbi8vICAgLSBIZWFkaW5ncyA8aDE+LTxoNj5cbi8vICAgLSBBbmNob3JzIDxhPlxuLy8gICAtIERpdmlkZXJzIDxocj5cbi8vICAgLSBMaXN0cyA8dWw+IDxvbD4gPGRsPlxuLy8gICAtIEJsb2NrcXVvdGVzIDxibG9ja3F1b3RlPlxuLy8gICAtIENvZGUgYmxvY2tzIDxjb2RlPlxuLy8gICAtIEFiYnJldmlhdGlvbnMgPGFiYnI+XG4vLyAgIC0gQ2l0YXRpb25zIDxjaXRlPlxuLy8gICAtIEtleXN0cm9rZXMgPGtiZD5cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBoZWFkZXIgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdHlsZSAoZS5nLiBpdGFsaWNpemVkKSBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIHVzZWQgZm9yIGVsZW1lbnRzIHRoYXQgdXNlIG1vbm9zcGFjZWQgdHlwZSwgc3VjaCBhcyBjb2RlIHNhbXBsZXNcbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyBmb3IgaGVhZGluZ3MgYXQgdmFyaW91cyBzY3JlZW4gc2l6ZXMuIEVhY2gga2V5IGlzIGEgYnJlYWtwb2ludCwgYW5kIGVhY2ggdmFsdWUgaXMgYSBtYXAgb2YgaGVhZGluZyBzdHlsZXMuXG4vLy8gQHR5cGUgTWFwXG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjQpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTcpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDQwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDMxKSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI1KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vICRoZWFkZXItc3R5bGVzIG1hcCBpcyBidWlsdCBmcm9tICRoZWFkZXItc2l6ZXMgaW4gb3JkZXIgdG8gZW5zdXJlIGRvd253YXJkIGNvbXBhdGliaWxpdHlcbi8vIHdoZW4gJGhlYWRlci1zaXplcyBpcyBkZXByZWNpYXRlZCwgJGhlYWRlci1zdHlsZXMgbmVlZHMgdG8gZ2V0ICFkZWZhdWx0IHZhbHVlcyBsaWtlIHNldHRpbmdzLnNjc3NcbkBmdW5jdGlvbiBidWlsZC1mcm9tLWhlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKSB7XG4gIEB3YXJuICdOb3RlLCB0aGF0ICRoZWFkZXItc2l6ZXMgaGFzIGJlZW4gcmVwbGFjZWQgd2l0aCAkaGVhZGVyLXN0eWxlcy4gJGhlYWRlci1zaXplcyBzdGlsbCB3b3JrcywgYnV0IGl0IGlzIGdvaW5nIHRvIGJlIGRlcHJlY2lhdGVkLic7XG4gICRoZWFkZXItc3R5bGVzOiAoKTtcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc2l6ZXMge1xuICAgICRoZWFkZXItbWFwOiAoKTtcbiAgICBAZWFjaCAkaGVhZGVyLCAkZm9udC1zaXplIGluICRoZWFkZXJzIHtcbiAgICAgICRoZWFkZXItbWFwOiBtYXAtbWVyZ2UoJGhlYWRlci1tYXAsICgkaGVhZGVyOiAoJ2ZvbnQtc2l6ZSc6ICRmb250LXNpemUpKSk7XG4gICAgfVxuICAgICRoZWFkZXItc3R5bGVzOiBtYXAtbWVyZ2UoJGhlYWRlci1zdHlsZXMsICgkc2l6ZTogJGhlYWRlci1tYXApKTtcbiAgfVxuICBAcmV0dXJuICRoZWFkZXItc3R5bGVzO1xufVxuXG4vLyBJZiBpdCBleGlzdHMgJGhlYWRlcnMtc2l6ZXMgaXMgdXNlZCB0byBidWlsZCAkaGVhZGVyLXN0eWxlcy4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhoZWFkZXItc2l6ZXMpIHtcbiAgJGhlYWRlci1zdHlsZXM6IGJ1aWxkLWZyb20taGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpO1xufVxuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYDxzbWFsbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHNtYWxsLWZvbnQtc2l6ZTogODAlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYDxzbWFsbD5gIGVsZW1lbnRzIHdoZW4gcGxhY2VkIGluc2lkZSBoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIHRleHQgaW5zaWRlIGA8cD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2QgZm9yIHBhcmFncmFwaCB0ZXh0LlxuLy8vIEB0eXBlIFN0cmluZ1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gVXNlIHRoZSBgLmNvZGUtaW5saW5lYCBjb21wb25lbnQgYXMgZGVmYXVsdCBmb3IgYDxjb2RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGVuYWJsZS1jb2RlLWlubGluZTogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG8gIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tICFkZWZhdWx0O1xuXG4vLy8gQnVsbGV0IHR5cGUgdG8gdXNlIGZvciB1bm9yZGVyZWQgbGlzdHMgKGUuZy4sIGBzcXVhcmVgLCBgY2lyY2xlYCwgYGRpc2NgKS5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2MgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbmluZyBmb3IgYnVsbGV0cyBvbiB1bm9yZGVyZWQgbGlzdCBpdGVtcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgbGlzdHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGEgbGlzdCBpbnNpZGUgYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgYDxkbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYDxkdD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGA8ZHQ+YCBhbmQgYDxkZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIGA8YmxvY2txdW90ZT5gIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KSAhZGVmYXVsdDtcblxuLy8vIFNpZGUgYm9yZGVyIGZvciBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBVc2UgdGhlIGAuY2l0ZS1ibG9ja2AgY29tcG9uZW50IGFzIGRlZmF1bHQgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRlbmFibGUtY2l0ZS1ibG9jazogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3IgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gYm9yZGVyIHN0eWxlIGZvciBgPGFiYnI+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10eXBvZ3JhcGh5LWJhc2Uge1xuICAvLyBUeXBvZ3JhcGh5IHJlc2V0c1xuICBkaXYsXG4gIGRsLFxuICBkdCxcbiAgZGQsXG4gIHVsLFxuICBvbCxcbiAgbGksXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYsXG4gIHByZSxcbiAgZm9ybSxcbiAgcCxcbiAgYmxvY2txdW90ZSxcbiAgdGgsXG4gIHRkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFBhcmFncmFwaHNcbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc7XG4gIH1cblxuICAvLyBFbXBoYXNpemVkIHRleHRcbiAgZW0sXG4gIGkge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFN0cm9uZyB0ZXh0XG4gIHN0cm9uZyxcbiAgYiB7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTbWFsbCB0ZXh0XG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBIZWFkaW5nc1xuICBoMSwgLmgxLFxuICBoMiwgLmgyLFxuICBoMywgLmgzLFxuICBoNCwgLmg0LFxuICBoNSwgLmg1LFxuICBoNiwgLmg2IHtcbiAgICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiAgICBmb250LXN0eWxlOiAkaGVhZGVyLWZvbnQtc3R5bGU7XG4gICAgZm9udC13ZWlnaHQ6ICRoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgY29sb3I6ICRoZWFkZXItY29sb3I7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRoZWFkZXItdGV4dC1yZW5kZXJpbmc7XG5cbiAgICBzbWFsbCB7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIGNvbG9yOiAkaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSGVhZGluZyBzdHlsZXNcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc3R5bGVzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkaGVhZGVyLCAkaGVhZGVyLWRlZnMgaW4gJGhlYWRlcnMge1xuICAgICAgICAkZm9udC1zaXplLXRlbXA6IDFyZW07XG4gICAgICAgICN7JGhlYWRlcn0sIC4jeyRoZWFkZXJ9IHtcblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZnMpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZzKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGgpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYygkaGVhZGVyLWxpbmVoZWlnaHQsICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbXQpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtdCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWIpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYikpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJGhlYWRlci1tYXJnaW4tYm90dG9tKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBMaW5rc1xuICBhIHtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBjb2xvcjogJGFuY2hvci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uO1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yLWhvdmVyO1xuICAgICAgQGlmICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyICE9ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvcml6b250YWwgcnVsZVxuICBociB7XG4gICAgY2xlYXI6IGJvdGg7XG5cbiAgICBtYXgtd2lkdGg6ICRoci13aWR0aDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiAkaHItbWFyZ2luO1xuXG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhyLWJvcmRlcjtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgfVxuXG4gIC8vIExpc3RzXG4gIHVsLFxuICBvbCxcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRsaXN0LW1hcmdpbi1ib3R0b207XG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogJGxpc3Qtc3R5bGUtcG9zaXRpb247XG4gICAgbGluZS1oZWlnaHQ6ICRsaXN0LWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBMaXN0IGl0ZW1zXG4gIGxpIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBVbm9yZGVyZWQgbGlzdHNcbiAgdWwge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogJGxpc3Qtc3R5bGUtdHlwZTtcbiAgfVxuXG4gIC8vIE9yZGVyZWQgbGlzdHNcbiAgb2wge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICB9XG5cbiAgLy8gTmVzdGVkIHVub3JkZXJlZC9vcmRlcmVkIGxpc3RzXG4gIHVsLCBvbCB7XG4gICAgJiAmIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gRGVmaW5pdGlvbiBsaXN0c1xuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LW1hcmdpbi1ib3R0b207XG5cbiAgICBkdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tO1xuICAgICAgZm9udC13ZWlnaHQ6ICRkZWZubGlzdC10ZXJtLXdlaWdodDtcbiAgICB9XG4gIH1cblxuICAvLyBCbG9ja3F1b3Rlc1xuICBibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDAgMCAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4gICAgcGFkZGluZzogJGJsb2NrcXVvdGUtcGFkZGluZztcbiAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAkYmxvY2txdW90ZS1ib3JkZXI7XG5cbiAgICAmLCBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgICBjb2xvcjogJGJsb2NrcXVvdGUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSW5saW5lIENpdGF0aW9uc1xuICBAaWYgKCRlbmFibGUtY2l0ZS1ibG9jayA9PSB0cnVlKSB7XG4gICAgY2l0ZSB7XG4gICAgICAvLyBFeHRlbmRpbmcgYSBjbGFzcyBpcyBub3QgcmVjb21tZW5kZWQuXG4gICAgICAvLyBUT0RPOiBCcmVhayB0aGUgdHlwb2dyYXBoeS1iYXNlL3R5cG9ncmFwaHktaGVscGVycyBzZXBhcmF0aW9uXG4gICAgICBAZXh0ZW5kICVjaXRlLWJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFiYnJldmlhdGlvbnNcbiAgYWJiciwgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206ICRhYmJyLXVuZGVybGluZTtcbiAgICBjdXJzb3I6IGhlbHA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gRmlndXJlc1xuICBmaWd1cmUge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIENvZGVcbiAgQGlmICgkZW5hYmxlLWNvZGUtaW5saW5lID09IHRydWUpIHtcbiAgICBjb2RlIHtcbiAgICAgIEBleHRlbmQgJWNvZGUtaW5saW5lO1xuICAgIH1cbiAgfVxuXG4gIC8vIEtleXN0cm9rZXNcbiAga2JkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJGtleXN0cm9rZS1wYWRkaW5nO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGtleXN0cm9rZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRrZXlzdHJva2UtZm9udDtcbiAgICBjb2xvcjogJGtleXN0cm9rZS1jb2xvcjtcblxuICAgIEBpZiBoYXMtdmFsdWUoJGtleXN0cm9rZS1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRrZXlzdHJva2UtcmFkaXVzO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktaGVscGVyc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxlYWQtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdG9wIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3Igc3RhdGlzdGljIG51bWJlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3RhdC1mb250LXNpemU6IDIuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3IgZm9yIGAuY2l0ZS1ibG9ja2AgY29tcG9uZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgYC5jaXRlLWJsb2NrYCBjb21wb25lbnQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcblxuLy8vIFBzZXVkbyBjb250ZW50IGZvciBgLmNpdGUtYmxvY2tgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjaXRlLXBzZXVkby1jb250ZW50OiAnXFwyMDE0IFxcMDAyMCcgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGAuY29kZS1pbmxpbmVgIGFuZCBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiBgLmNvZGUtaW5saW5lYCBhbmQgYC5jb2RlLWJsb2NrYCBjb21wb25lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbiBgLmNvZGUtaW5saW5lYCBhbmQgYC5jb2RlLWJsb2NrYCBjb21wb25lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYC5jb2RlLWlubGluZWAgYW5kIGAuY29kZS1ibG9ja2AgY29tcG9uZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGAuY29kZS1pbmxpbmVgIGFuZCBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBhcm91bmQgdGV4dCBvZiB0aGUgYC5jb2RlLWlubGluZWAgY29tcG9uZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgdGhlIGAuY29kZS1ibG9ja2AgY29tcG9uZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLWJsb2NrLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gdW5kZXIgdGhlIGAuY29kZS1ibG9ja2AgY29tcG9uZW50LlxuLy8vIEB0eXBlIE51bWJlclxuJGNvZGUtYmxvY2stbWFyZ2luLWJvdHRvbTogMS41cmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gY2l0ZS1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogJGNpdGUtY29sb3I7XG4gIGZvbnQtc2l6ZTogJGNpdGUtZm9udC1zaXplO1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkY2l0ZS1wc2V1ZG8tY29udGVudDtcbiAgfVxufVxuXG4vLy8gQWRkIGJhc2ljIHN0eWxlcyBmb3IgYSBjb2RlIGhlbHBlci5cbi8vLyBTZWUgYGNvZGUtaW5saW5lYCBhbmQgYGNvZGUtYmxvY2tgIG1peGlucy5cbkBtaXhpbiBjb2RlLXN0eWxlIHtcbiAgYm9yZGVyOiAkY29kZS1ib3JkZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJhY2tncm91bmQ7XG5cbiAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGNvZGUtZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkY29kZS1jb2xvcjtcbn1cblxuLy8vIE1ha2UgY29kZSBoZWxwZXIgZnJvbSB0aGUgYGNvZGUtc3R5bGVgIG1peGluIGlubGluZS5cbi8vLyBVc2VkIHRvIGdlbmVyYXRlIGAuY29kZS1pbmxpbmVgXG5AbWl4aW4gY29kZS1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuXG4gIHBhZGRpbmc6ICRjb2RlLXBhZGRpbmc7XG59XG5cbi8vLyBNYWtlIGNvZGUgaGVscGVyIGZyb20gdGhlIGBjb2RlLXN0eWxlYCBtaXhpbiBhIGJsb2NrLlxuLy8vIFVzZWQgdG8gZ2VuZXJhdGUgYC5jb2RlLWJsb2NrYFxuQG1peGluIGNvZGUtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG5cbiAgcGFkZGluZzogJGNvZGUtYmxvY2stcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogJGNvZGUtYmxvY2stbWFyZ2luLWJvdHRvbTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1oZWxwZXJzIHtcbiAgLy8gVXNlIHRvIGNyZWF0ZSBhIHN1YmhlYWRpbmcgdW5kZXIgYSBtYWluIGhlYWRlclxuICAvLyBNYWtlIHN1cmUgeW91IHBhaXIgdGhlIHR3byBlbGVtZW50cyBpbiBhIDxoZWFkZXI+IGVsZW1lbnQsIGxpa2UgdGhpczpcbiAgLy8gPGhlYWRlcj5cbiAgLy8gICA8aDE+SGVhZGluZzwvaDE+XG4gIC8vICAgPGgyPlN1YmhlYWRpbmc8L2gyPlxuICAvLyA8L2hlYWRlcj5cbiAgLnN1YmhlYWRlciB7XG4gICAgbWFyZ2luLXRvcDogJHN1YmhlYWRlci1tYXJnaW4tdG9wO1xuICAgIG1hcmdpbi1ib3R0b206ICRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtd2VpZ2h0OiAkc3ViaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkc3ViaGVhZGVyLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRzdWJoZWFkZXItY29sb3I7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYW4gaW50cm9kdWN0b3J5IGxlYWQsIGRlY2ssIGJsdXJiLCBldGMuXG4gIC5sZWFkIHtcbiAgICBmb250LXNpemU6ICRsZWFkLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxlYWQtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhIGxhcmdlIG51bWJlciB0byBkaXNwbGF5IGEgc3RhdGlzdGljXG4gIC5zdGF0IHtcbiAgICBmb250LXNpemU6ICRzdGF0LWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgIHAgKyAmIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICAgIH1cbiAgfVxuXG4gIHVsLCBvbCB7XG4gICAgLy8gVXNlIHRvIHJlbW92ZSBudW1iZXJzIGZyb20gb3JkZXJlZCBsaXN0ICYgYnVsbGV0cyBmcm9tIHVub3JkZXJlZCBsaXN0XG4gICAgJi5uby1idWxsZXQge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJWNpdGUtYmxvY2sge1xuICAgIEBpbmNsdWRlIGNpdGUtYmxvY2s7XG4gIH1cblxuICAuY2l0ZS1ibG9jayB7XG4gICAgQGV4dGVuZCAlY2l0ZS1ibG9jaztcbiAgfVxuXG4gICVjb2RlLWlubGluZSB7XG4gICAgQGluY2x1ZGUgY29kZS1zdHlsZTtcbiAgICBAaW5jbHVkZSBjb2RlLWlubGluZTtcbiAgfVxuXG4gIC5jb2RlLWlubGluZSB7XG4gICAgQGV4dGVuZCAlY29kZS1pbmxpbmU7XG4gIH1cblxuICAuY29kZS1ibG9jayB7XG4gICAgQGluY2x1ZGUgY29kZS1zdHlsZTtcbiAgICBAaW5jbHVkZSBjb2RlLWJsb2NrO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRleHQtYWxpZ25tZW50IHtcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGFsaWduIGluIChsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5KSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LXRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC50ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBJZiBgdHJ1ZWAsIGFsbCBlbGVtZW50cyB3aWxsIGhhdmUgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMgd2hlbiBwcmludGVkLCB0byBzYXZlIG9uIGluay5cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGdyb3VwIGdsb2JhbFxuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBkaXNwbGF5cyBuZXh0IHRvIGFsbCBsaW5rcyB0aGVpciBcImhyZWZcIiB3aGVuIHByaW50ZWQuXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBncm91cCBnbG9iYWxcbiRwcmludC1ocmVmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gc2Fzcy1saW50OmRpc2FibGUtYWxsXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXByaW50LXN0eWxlcyB7XG4gIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgKiB7XG4gICAgICAvLyBFbnN1cmUgYSBcImJsYWNrLW9uLXdoaXRlXCIgcHJpbnQgYnkgcmVtb3ZpbmcgYmFja2dyb3VuZHMsXG4gICAgICAvLyB1c2luZyBibGFjayB0ZXh0IGV2ZXJ5d2hlcmUgYW5kIGZvcmNpbmcgdGhlIGJyb3dzZXIgdG8gZWNvbm9taXplIGluay5cbiAgICAgIEBpZiAkcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHMge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vc1xuICAgICAgICBjb2xvci1hZGp1c3Q6IGVjb25vbXk7XG4gICAgICB9XG4gICAgICAvLyBPdGhlcndpc2UsIHByZXZlbnQgYW55IGVjb25vbXkgYnkgdGhlIGJyb3dzZXIuXG4gICAgICBAZWxzZSB7XG4gICAgICAgIGNvbG9yLWFkanVzdDogZXhhY3Q7XG4gICAgICB9XG5cbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAgIC5oaWRlLWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gICAgdGFibGUuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgdGhlYWQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRib2R5LnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0ci5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gICAgdGQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgICB0aC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuXG4gICAgLy8gRGlzcGxheSB0aGUgVVJMIG9mIGEgbGluayBhZnRlciB0aGUgdGV4dFxuICAgIGEsXG4gICAgYTp2aXNpdGVkIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7fVxuICAgIEBpZiAkcHJpbnQtaHJlZnMge1xuICAgICAgYVtocmVmXTphZnRlciB7IGNvbnRlbnQ6ICcgKCcgYXR0cihocmVmKSAnKSc7IH1cbiAgICB9XG5cbiAgICAvLyBEb24ndCBkaXNwbGF5IHRoZSBVUkwgZm9yIGltYWdlcyBvciBKYXZhU2NyaXB0L2ludGVybmFsIGxpbmtzXG4gICAgLmlyIGE6YWZ0ZXIsXG4gICAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgICBhW2hyZWZePScjJ106YWZ0ZXIgeyBjb250ZW50OiAnJzsgfVxuXG4gICAgLy8gRGlzcGxheSB3aGF0IGFuIGFiYnJldmlhdGlvbiBzdGFuZHMgZm9yIGFmdGVyIHRoZSB0ZXh0XG4gICAgYWJiclt0aXRsZV06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIodGl0bGUpICcpJzsgfVxuXG4gICAgLy8gUHJldmVudCBwYWdlIGJyZWFrcyBpbiB0aGUgbWlkZGxlIG9mIGEgYmxvY2txdW90ZSBvciBwcmVmb3JtYXR0ZWQgdGV4dCBibG9ja1xuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gaDVicC5jb20vdFxuICAgIHRoZWFkIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG5cbiAgICB0cixcbiAgICBpbWcgeyBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cblxuICAgIGltZyB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbiAgICBAcGFnZSB7IG1hcmdpbjogMC41Y207IH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICAvLyBBdm9pZCBwYWdlIGJyZWFrcyBhZnRlciBhIGhlYWRpbmdcbiAgICBoMixcbiAgICBoMyB7IHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG5cbiAgICAvLyBIZWxwZXIgdG8gcmUtYWxsb3cgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBjZXJ0YWluIGVsZW1lbnRzIChlLmcuIHByZSwgYmxvY2txdW90ZSwgdHIpXG4gICAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vIE1hcmdpbiBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS1iYXNlLWdyaWQtY2xhc3NlcyB7XG5cbiAgLy8gR3JpZCBDb250YWluZXJcbiAgLmdyaWQtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcjtcblxuICAgICYuZmx1aWQge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXIoMTAwJSk7XG4gICAgfVxuXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyKDEwMCUsIDApO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJhc2UgZ3JpZCBzdHlsZXNcbiAgLmdyaWQteCB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZDtcbiAgfVxuXG4gIC5jZWxsIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsKGZ1bGwsICRndXR0ZXItdHlwZTogbm9uZSk7XG5cbiAgICAmLmF1dG8ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKGF1dG8pO1xuICAgIH1cblxuICAgICYuc2hyaW5rIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgIH1cblxuICB9XG4gIC5ncmlkLXgge1xuICAgID4gLmF1dG8ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKGF1dG8sICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgfVxuXG4gICAgPiAuc2hyaW5rIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShzaHJpbmssICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQXV0byB3aWR0aFxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgIC8vIFRoaXMgaXMgYSBiaXQgb2YgYSBoYWNrL3dvcmthcm91bmQsIHNlZSB0aGVzZSBpc3N1ZXMgJiBQUnMgZm9yIHRoZSBiYWNrc3Rvcnk6XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTAyNDRcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAyMjIgYW5kXG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMTY0XG4gICAgLmdyaWQteCB7XG4gICAgICAkc3RyOiBcIj4gLiN7JC16Zi1zaXplfS1zaHJpbmssID4gLiN7JC16Zi1zaXplfS1mdWxsXCI7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAkc3RyOiAkc3RyICsgXCIsID4gLiN7JC16Zi1zaXplfS0jeyRpfVwiO1xuICAgICAgfVxuICAgICAgI3skc3RyfSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAvLyBSZXNwb25zaXZlIFwiYXV0b1wiIG1vZGlmaWVyXG4gICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgICAgIC5ncmlkLXggPiAuI3skLXpmLXNpemV9LWF1dG8ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsKGF1dG8sICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJS14eS1jZWxsLWJhc2Utc2hyaW5rLWhvcml6b250YWwtI3skLXpmLXNpemV9IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgXCJzaHJpbmtcIiBtb2RpZmllclxuICAgIEBpZiBub3QoJC16Zi1zaXplID09ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS1zaHJpbmsge1xuICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay1ob3Jpem9udGFsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKHNocmluaywgJGd1dHRlci10eXBlOiBub25lKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIHdpZHRoIG1vZGlmaWVyc1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLWhvcml6b250YWwtI3skLXpmLXNpemV9O1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoJGksICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgd2lkdGggd2hlbiB1c2luZyBgLmdyaWQtbWFyZ2luLXhgIG5vdCBvbiBgLmdyaWQteGBcbiAgLmdyaWQtbWFyZ2luLXg6bm90KC5ncmlkLXgpID4gLmNlbGwge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLy8gUmVzZXQgaGVpZ2h0IHdoZW4gdXNpbmcgYC5ncmlkLW1hcmdpbi15YCBub3Qgb24gYC5ncmlkLXlgXG4gIC5ncmlkLW1hcmdpbi15Om5vdCguZ3JpZC15KSA+IC5jZWxsIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuQG1peGluIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkY2xhc3MtYnJlYWtwb2ludCwgJGd1dHRlci1icmVha3BvaW50LCAkdmVydGljYWwpIHtcbiAgJHByZWZpeDogaWYoJGNsYXNzLWJyZWFrcG9pbnQgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQsICcnLCAnI3skY2xhc3MtYnJlYWtwb2ludH0tJyk7XG4gID4gLiN7JHByZWZpeH1hdXRvIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoYXV0bywgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICB9XG5cbiAgPiAuI3skcHJlZml4fXNocmluayB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKHNocmluaywgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgJGNsYXNzbmFtZTogaWYoJHZlcnRpY2FsLCAnLiN7JGNsYXNzLWJyZWFrcG9pbnR9LSN7JGl9JywgJy4jeyRjbGFzcy1icmVha3BvaW50fS0jeyRpfScpO1xuXG4gICAgPiAjeyRjbGFzc25hbWV9IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZSgkaSwgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBNYXJnaW4gR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktbWFyZ2luLWdyaWQtY2xhc3NlcyhcbiAgJGd1dHRlci1wb3NpdGlvbjogbGVmdCByaWdodCxcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJHdyYXBwaW5nLXNlbGVjdG9yOiAnLmdyaWQtbWFyZ2luLXgnXG4pe1xuICAjeyR3cmFwcGluZy1zZWxlY3Rvcn0ge1xuICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiAkZ3V0dGVyLXBvc2l0aW9uKTtcblxuICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoJHZlcnRpY2FsOiAkdmVydGljYWwsICRvdXRwdXQ6IChzaXplIGd1dHRlcnMpKTtcbiAgICB9XG5cbiAgICAvLyBiYXNlIHN0eWxlcyBuZWVkIHRvIGFsbCBiZSBiZWZvcmUgdGhlIGF1dG8gYW5kIHNocmluayBzdHlsZXNcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSBhbmQgJC16Zi1zaXplICE9ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAgID4gLmNlbGwge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwoJHZlcnRpY2FsOiAkdmVydGljYWwsICRvdXRwdXQ6IChzaXplIGd1dHRlcnMpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG5cbiAgICAgIC8vIFRoaXMgaXMgcHVyZWx5IGZvciByZXNwb25zaXZlIGd1dHRlcnMgLSB0aGUgbWFyZ2luIGdyaWQgaGFzIHRvIGdvIGJhY2sgYW5kIGFkanVzdCB3aWR0aHMgKG9yIGhlaWdodHMpXG4gICAgICAvLyBmb3IgYWxsIHByaW9yIGJyZWFrcG9pbnRzLlxuICAgICAgLy8gQXMgdGhlaXIgZ3V0dGVyIGlzIGRlZmluZWQgd2l0aCB0aGVpciB3aWR0aC9oZWlnaHQsIGV2ZW4gYnJlYWtwb2ludCB3aXRob3V0IGEgbmV3IG1hcmdpbiBtdXN0IGJlXG4gICAgICAvLyBnZW5lcmF0ZWQgdG8gbm90IGhhdmluZyB0aGVpciB3aWR0aC9oZWlnaHQgb3ZlcnJpZGVkIGJ5IHJlLWFkanVzdGVkIHNtYWxsZXIgYnJlYWtwb2ludHMuXG4gICAgICBAaWYodHlwZS1vZigkZ3JpZC1tYXJnaW4tZ3V0dGVycykgPT0gJ21hcCcgYW5kIG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUpKSB7XG4gICAgICAgIEBlYWNoICRicCBpbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCQtemYtc2l6ZSkge1xuICAgICAgICAgIEBpbmNsdWRlIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkYnAsICQtemYtc2l6ZSwgJHZlcnRpY2FsKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJC16Zi1zaXplLCAkLXpmLXNpemUsICR2ZXJ0aWNhbCk7XG4gICAgfVxuICB9XG59XG5cbi8vIFBhZGRpbmcgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktcGFkZGluZy1ncmlkLWNsYXNzZXMge1xuICAuZ3JpZC1wYWRkaW5nLXgge1xuXG4gICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBuZXN0ZWQgZ3JpZHNcbiAgICAuZ3JpZC1wYWRkaW5nLXgge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUpO1xuICAgIH1cblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgZ3JpZHMgd2l0aGluIGBncmlkLWNvbnRhaW5lci9ncmlkLWNvbnRhaW5lci5mbHVpZGBcbiAgICAvLyBUaGlzIGFsbG93cyBtYXJnaW4gYW5kIHBhZGRpbmcgZ3JpZHMgdG8gbGluZSB1cCB3aXRoIGVhY2hvdGhlclxuICAgIC5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gJiB7XG4gICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSk7XG4gICAgfVxuXG4gICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgID4gLmNlbGwge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBCbG9jayBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS1ibG9jay1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkOiB0cnVlLCAkcGFkZGluZy1ncmlkOiB0cnVlKSB7XG4gIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItdHlwZTogcGFkZGluZywgJG91dHB1dDogKHNpemUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkeHktYmxvY2stZ3JpZC1tYXgge1xuICAgICAgICAvLyBUaGlzIGlzIHB1cmVseSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzIC0gdGhlIG1hcmdpbiBncmlkIGhhcyB0byBnbyBiYWNrIGFuZCBhZGp1c3Qgd2lkdGhzIChvciBoZWlnaHRzKVxuICAgICAgICAvLyBmb3IgcHJpb3IgYnJlYWtwb2ludHMgYmFzZWQgb24gdGhlIHJlc3BvbnNpdmUgZ3V0dGVyLlxuICAgICAgICBAaWYodHlwZS1vZigkZ3JpZC1tYXJnaW4tZ3V0dGVycykgPT0gJ21hcCcgYW5kIG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUpKSB7XG4gICAgICAgICAgQGVhY2ggJGJwIGluIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJC16Zi1zaXplKSB7XG4gICAgICAgICAgICBAaWYobWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICRicCkpIHtcbiAgICAgICAgICAgICAgLmdyaWQtbWFyZ2luLXguI3skYnB9LXVwLSN7JGl9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkbjogJGksICRzZWxlY3RvcjogJy5jZWxsJywgJGd1dHRlci10eXBlOiBtYXJnaW4sICRvdXRwdXQ6IChzaXplKSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLmdyaWQtbWFyZ2luLXguI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkbjogJGksICRzZWxlY3RvcjogJy5jZWxsJywgJGd1dHRlci10eXBlOiBtYXJnaW4sICRvdXRwdXQ6IChzaXplKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sbGFwc2UgY2xhc3Nlc1xuQG1peGluIHh5LWNvbGxhcHNlLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQ6IHRydWUsICRwYWRkaW5nLWdyaWQ6IHRydWUpIHtcbiAgQGVhY2ggJGJwIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgICAgLiN7JGJwfS1tYXJnaW4tY29sbGFwc2Uge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbGxhcHNlKCRndXR0ZXItdHlwZTogbWFyZ2luLCAkbWluLWJyZWFrcG9pbnQ6ICRicCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRwYWRkaW5nLWdyaWQge1xuICAgICAgLiN7JGJwfS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb2xsYXBzZSgkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRtaW4tYnJlYWtwb2ludDogJGJwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gT2Zmc2V0IGNsYXNzZXNcbkBtaXhpbiB4eS1vZmZzZXQtY2VsbC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgIC8vIE9mZnNldHNcbiAgICAgICRvOiAkaSAtIDE7XG5cbiAgICAgIC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1vZmZzZXQoJG8sICRndXR0ZXJzOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnMsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICB9XG5cbiAgICAgIC5ncmlkLW1hcmdpbi14ID4gLiN7JC16Zi1zaXplfS1vZmZzZXQtI3skb30ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLW9mZnNldCgkbyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFZlcnRpY2FsIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LXZlcnRpY2FsLWdyaWQtY2xhc3NlcyhcbiAgJG1hcmdpbi1ncmlkOiB0cnVlLFxuICAkcGFkZGluZy1ncmlkOiB0cnVlXG4pIHtcblxuICAvLyBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAvLyAgIEBpZiBub3QoJC16Zi1zaXplID09ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gIC8vICAgfVxuICAvLyB9XG5cbiAgLmdyaWQteSB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZCh2ZXJ0aWNhbCwgZmFsc2UpO1xuXG5cbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtcmVzZXQoKTtcbiAgICB9XG5cbiAgICA+IC5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShhdXRvLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgfVxuXG4gICAgPiAuc2hyaW5rIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShzaHJpbmssICRndXR0ZXItdHlwZTogbm9uZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjay93b3JrYXJvdW5kLCBzZWUgdGhlc2UgaXNzdWVzIGFuZCBQUnMgZm9yIHRoZSBiYWNrc3Rvcnk6XG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMDI0NFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMjIyIGFuZFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMTY0XG4gICAgICAkc3RyOiBcIj4gLiN7JC16Zi1zaXplfS1zaHJpbmssID4gLiN7JC16Zi1zaXplfS1mdWxsXCI7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAkc3RyOiAkc3RyICsgXCIsID4gLiN7JC16Zi1zaXplfS0jeyRpfVwiO1xuICAgICAgfVxuICAgICAgI3skc3RyfSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIC8vIFJlc3BvbnNpdmUgXCJhdXRvXCIgbW9kaWZpZXJcbiAgICAgIEBpZiBub3QoJC16Zi1zaXplID09ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAgID4gLiN7JC16Zi1zaXplfS1hdXRvIHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsKGF1dG8sICRndXR0ZXItdHlwZTogbm9uZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAlLXh5LWNlbGwtYmFzZS1zaHJpbmstdmVydGljYWwtI3skLXpmLXNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKHNocmluayk7XG4gICAgICB9XG5cbiAgICAgIC8vIFJlc3BvbnNpdmUgXCJzaHJpbmtcIiBtb2RpZmllclxuICAgICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LXNocmluayB7XG4gICAgICAgICAgQGV4dGVuZCAlLXh5LWNlbGwtYmFzZS1zaHJpbmstdmVydGljYWwtI3skLXpmLXNpemV9O1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShzaHJpbmssICRndXR0ZXItdHlwZTogbm9uZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBSZXNwb25zaXZlIHdpZHRoIG1vZGlmaWVyc1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICA+IC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLXZlcnRpY2FsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoJGksICRndXR0ZXItdHlwZTogbm9uZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG5cbiAgQGlmICRwYWRkaW5nLWdyaWQge1xuICAgIC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIG5lc3RlZCBncmlkc1xuICAgICAgLmdyaWQtcGFkZGluZy15IHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUsICRndXR0ZXItcG9zaXRpb246IHRvcCBib3R0b20pO1xuICAgICAgfVxuXG4gICAgICAvLyBCYXNlIGNlbGwgc3R5bGVzXG4gICAgICA+IC5jZWxsIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRndXR0ZXItcG9zaXRpb246IHRvcCBib3R0b20pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgIEBpbmNsdWRlIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXModG9wIGJvdHRvbSwgdHJ1ZSwgJy5ncmlkLW1hcmdpbi15Jyk7XG4gIH1cblxufVxuXG5AbWl4aW4geHktZnJhbWUtZ3JpZC1jbGFzc2VzKCR2ZXJ0aWNhbC1ncmlkOiB0cnVlLCAkbWFyZ2luLWdyaWQ6IHRydWUpIHtcbiAgLy8gRnJhbWVkIGdyaWQgc3R5bGVzXG4gIC5ncmlkLWZyYW1lIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lO1xuICB9XG5cbiAgLmNlbGwgLmdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICB9XG5cbiAgLmNlbGwtYmxvY2sge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2soKTtcbiAgfVxuXG4gIC5jZWxsLWJsb2NrLXkge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2sodHJ1ZSk7XG4gIH1cblxuXG4gIC5jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jay1jb250YWluZXIoKTtcbiAgfVxuXG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuXG4gICAgLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWU7XG4gICAgfVxuXG4gICAgLmNlbGwgLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgIHdpZHRoOiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKCk7XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS1jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrLWNvbnRhaW5lcigpO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jay15IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2sodHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICR2ZXJ0aWNhbC1ncmlkIHtcbiAgICAuZ3JpZC15IHtcbiAgICAgICYuZ3JpZC1mcmFtZSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSk7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KGZhbHNlKSB7XG4gICAgICAgICYuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSk7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgfVxuICAgIH1cbiAgICAuY2VsbCB7XG4gICAgICAuZ3JpZC15LmdyaWQtZnJhbWUge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgICB9XG4gICAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KGZhbHNlKSB7XG4gICAgICAgIC5ncmlkLXkuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgICAgIGhlaWdodDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKHRvcCBib3R0b20sIHRydWUsICcuZ3JpZC1tYXJnaW4teScpO1xuICAgIC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlLCBmYWxzZSwgJGdyaWQtbWFyZ2luLWd1dHRlcnMsICRpbmNsdWRlLWJhc2U6IGZhbHNlKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgLmdyaWQtbWFyZ2luLXkuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUsIGZhbHNlLCAkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplLCBmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEZpbmFsIGNsYXNzZXNcbkBtaXhpbiBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcyhcbiAgJGJhc2UtZ3JpZDogdHJ1ZSxcbiAgJG1hcmdpbi1ncmlkOiB0cnVlLFxuICAkcGFkZGluZy1ncmlkOiB0cnVlLFxuICAkYmxvY2stZ3JpZDogdHJ1ZSxcbiAgJGNvbGxhcHNlOiB0cnVlLFxuICAkb2Zmc2V0OiB0cnVlLFxuICAkdmVydGljYWwtZ3JpZDogdHJ1ZSxcbiAgJGZyYW1lLWdyaWQ6IHRydWVcbikge1xuXG4gIC8vIEJhc2UgZ3JpZCBzdHlsZXNcbiAgQGlmKCRiYXNlLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1iYXNlLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gTWFyZ2luIGdyaWRcbiAgQGlmKCRtYXJnaW4tZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIFBhZGRpbmcgZ3JpZFxuICBAaWYoJHBhZGRpbmctZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LXBhZGRpbmctZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBCbG9jayBncmlkXG4gIEBpZigkYmxvY2stZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWJsb2NrLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgLy8gQ29sbGFwc2UgZ3V0dGVyc1xuICBAaWYoJGNvbGxhcHNlKSB7XG4gICAgQGluY2x1ZGUgeHktY29sbGFwc2UtZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZCwgJHBhZGRpbmctZ3JpZCk7XG4gIH1cblxuICAvLyBPZmZzZXQgZ3V0dGVyc1xuICBAaWYoJG9mZnNldCkge1xuICAgIEBpbmNsdWRlIHh5LW9mZnNldC1jZWxsLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsIGdyaWRcbiAgQGlmKCR2ZXJ0aWNhbC1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktdmVydGljYWwtZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZCwgJHBhZGRpbmctZ3JpZCk7XG4gIH1cblxuICBAaWYgKCRmcmFtZS1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktZnJhbWUtZ3JpZC1jbGFzc2VzKCR2ZXJ0aWNhbC1ncmlkLCAkbWFyZ2luLWdyaWQpXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDcmVhdGUgZ3V0dGVycyBmb3IgYSBjZWxsL2NvbnRhaW5lci5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgZWl0aGVyIG1hcmdpbiBvciBwYWRkaW5nLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkbmVnYXRpdmUgW2ZhbHNlXSAtIFdoZXRoZXIgdG8gYXBwbHkgdGhlIGd1dHRlciBhcyBhIG5lZ2F0aXZlIHZhbHVlLiBDb21tb25seSB1c2VkIGZvciBuZXN0ZWQgZ3JpZHMuXG5AbWl4aW4geHktZ3V0dGVycyhcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJG5lZ2F0aXZlOiBmYWxzZVxuKSB7XG4gICRvcGVyYXRvcjogaWYoJG5lZ2F0aXZlLCAnLScsICcnKTtcblxuICAvLyBJZiB3ZSBoYXZlIGRlY2xhcmVkIG5lZ2F0aXZlIGd1dHRlcnMsIGZvcmNlIHR5cGUgdG8gYG1hcmdpbi5cbiAgJGd1dHRlci10eXBlOiBpZigkbmVnYXRpdmUsICdtYXJnaW4nLCAkZ3V0dGVyLXR5cGUpO1xuXG4gIC8vIE91dHB1dCBvdXIgbWFyZ2luIGd1dHRlcnMuXG4gIEBpZiAodHlwZS1vZigkZ3V0dGVycykgPT0gJ21hcCcpIHtcbiAgICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZShhdXRvLCAkZ3V0dGVycykge1xuICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSkgKiAwLjU7XG5cbiAgICAgIC8vIExvb3AgdGhyb3VnaCBlYWNoIGd1dHRlciBwb3NpdGlvblxuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICAjeyRndXR0ZXItdHlwZX0tI3skdmFsdWV9OiB1bnF1b3RlKFwiI3skb3BlcmF0b3J9I3skZ3V0dGVyfVwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgKHR5cGUtb2YoJGd1dHRlcnMpID09ICdudW1iZXInKSB7XG4gICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcnMpICogMC41O1xuXG4gICAgLy8gTG9vcCB0aHJvdWdoIGVhY2ggZ3V0dGVyIHBvc2l0aW9uXG4gICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgI3skZ3V0dGVyLXR5cGV9LSN7JHZhbHVlfTogdW5xdW90ZShcIiN7JG9wZXJhdG9yfSN7JGd1dHRlcn1cIik7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhIG1heCB3aWR0aCBjb250YWluZXIsIGRlc2lnbmVkIHRvIGhvdXNlIHlvdXIgZ3JpZCBjb250ZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbJGdyaWQtY29udGFpbmVyXSAtIGEgd2lkdGggdG8gbGltaXQgdGhlIGNvbnRhaW5lciB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBhZGRpbmcgWyRncmlkLWNvbnRhaW5lci1wYWRkaW5nXSAtIHBhZGRpbmdzIG9mIHRoZSBjb250YWluZXIuXG5AbWl4aW4geHktZ3JpZC1jb250YWluZXIoXG4gICR3aWR0aDogJGdyaWQtY29udGFpbmVyLFxuICAkcGFkZGluZzogJGdyaWQtY29udGFpbmVyLXBhZGRpbmdcbikge1xuICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXJzOiAkcGFkZGluZywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcblxuICBtYXgtd2lkdGg6ICR3aWR0aDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLy8vIENyZWF0ZXMgYSBjb250YWluZXIgZm9yIHlvdXIgZmxleCBjZWxscy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbaG9yaXpvbnRhbF0gLSBFaXRoZXIgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbCBkaXJlY3Rpb24gb2YgY2VsbHMgd2l0aGluLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHdyYXAgW3RydWVdIC0gSWYgdGhlIGNlbGxzIHdpdGhpbiBzaG91bGQgd3JhcCBvciBub3QuXG5AbWl4aW4geHktZ3JpZChcbiAgJGRpcmVjdGlvbjogaG9yaXpvbnRhbCxcbiAgJHdyYXA6IHRydWVcbikge1xuICAkZGlyZWN0aW9uOiBpZigkZGlyZWN0aW9uID09ICdob3Jpem9udGFsJywgcm93LCBjb2x1bW4pO1xuICAkd3JhcDogaWYoJHdyYXAsIHdyYXAsIG5vd3JhcCk7XG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiAkZGlyZWN0aW9uICR3cmFwO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIFJldHVybnMgdGhlIGFwcHJvcHJpYXRlIENTUyBmbGV4IHZhbHVlIGZvciBhIGNlbGwgYmFzZS5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBBY2NlcHRzIGBmdWxsYCwgYGF1dG9gLCBgc2hyaW5rYCwgYGdyb3dgLCBvciBhbnkgb3RoZXIgdmFsdWUgcmVwcmVzZW50aW5nIGEgY2VsbCBzaXplIChpdCB3aWxsIGJlIHRyZWF0ZWQgYXMgYHNocmlua2ApLlxuLy8vXG4vLy8gQHJldHVybnMge0xpc3R9IFRoZSBjZWxsIGZsZXggcHJvcGVydHkgdmFsdWUuXG5AZnVuY3Rpb24geHktY2VsbC1iYXNlKCRzaXplOiBmdWxsKSB7XG4gIEBpZiAoJHNpemUgPT0gJ2F1dG8nKSB7XG4gICAgQHJldHVybiAxIDEgMDtcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ2dyb3cnKSB7XG4gICAgQHJldHVybiAxIDAgYXV0bztcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ3Nocmluaycgb3IgJHNpemUgPT0gJ2Z1bGwnIG9yIHpmLWlzLWZyYWN0aW9uKCRzaXplLCAkYWxsb3ctbm8tZGVub21pbmF0b3I6IHRydWUpKSB7XG4gICAgQHJldHVybiAwIDAgYXV0bztcbiAgfVxuICBAcmV0dXJuIG51bGw7XG59XG5cbi8vLyBDYWxjdWxhdGUgdGhlIHNpemUgb2YgYSBjZWxsIGd1dHRlcnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIGBhdXRvYCwgcmV0dXJucyB0aGUgcmVzcG9uc2l2ZSBndXR0ZXJzIG1hcCBgJGd1dHRlcnNgLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfE1hcH0gVGhlIGNlbGwgZ3V0dGVyIHNpemUgb3IgdGhlIHJlc3BvbnNpdmUgZ3V0dGVycyBtYXAuXG5AZnVuY3Rpb24geHktY2VsbC1ndXR0ZXJzKFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRicmVha3BvaW50OiBudWxsXG4pIHtcbiAgLy8gRm9yIGBhdXRvYCwgcmV0dXJucyB0aGUgcmVzcG9uc2l2ZSBtYXAgYCRndXR0ZXJzYC5cbiAgQGlmICgkYnJlYWtwb2ludCA9PSAnYXV0bycpIHtcbiAgICBAcmV0dXJuICRndXR0ZXJzO1xuICB9XG5cbiAgLy8gVXNlIHRoZSBjb250ZXh0dWFsIGJyZWFrcG9pbnQgYnkgZGVmYXVsdC5cbiAgJGJyZWFrcG9pbnQ6IC16Zi1jdXJyZW50LWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpO1xuXG4gIEBpZiAoJGJyZWFrcG9pbnQpIHtcbiAgICBAcmV0dXJuIC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICQtemYtemVyby1icmVha3BvaW50KSBvciAwO1xuICB9XG59XG5cbi8vLyBSZXR1cm5zIHRoZSBwZXJjZW50YWdlIHNpemUgb2YgYSBjZWxsLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHNpemUgWyRncmlkLWNvbHVtbnNdIC0gU2l6ZSB0byBtYWtlIHRoZSBjZWxsLiBZb3UgY2FuIHBhc3MgYSB2YWx1ZSBpbiBtdWx0aXBsZSBmb3JtYXRzLCBzdWNoIGFzIGA2YCwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzNgLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gU2l6ZSBvZiB0aGUgY2VsbCAoaW4gcGVyY2VudCkuXG5AZnVuY3Rpb24geHktY2VsbC1zaXplKFxuICAkc2l6ZTogJGdyaWQtY29sdW1uc1xuKSB7XG4gIEByZXR1cm4gZnJhY3Rpb24tdG8tcGVyY2VudGFnZSgkc2l6ZSwgJGRlbm9taW5hdG9yOiAkZ3JpZC1jb2x1bW5zKTtcbn1cblxuLy8vIFJldHVybnMgdGhlIGFwcHJvcHJpYXRlIENTUyB2YWx1ZSBmb3IgYSBjZWxsIHNpemUuXG4vLy9cbi8vLyBHdXR0ZXJzLXJlbGF0ZWQgYXJndW1lbnRzIGFyZSByZXF1aXJlZCBmb3IgY2VsbHMgd2l0aCBtYXJnaW4gZ3V0dGVycyAoYnkgZGVmYXVsdCkgYXMgdGhlIGd1dHRlciBpcyBpbmNsdWRlZCBpbiB0aGUgd2lkdGguXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAsIGBhdXRvYCwgYHNocmlua2Agb3IgYW55IGZyYWN0aW9uIGxpa2UgYDZgLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvMmAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBgbWFyZ2luYCwgYHBhZGRpbmdgIG9yIGBub25lYC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiBgYXV0b2AsIHJldHVybnMgYSBtYXAgb2Ygc2l6ZXMgYWRhcHRlZCB0byByZXNwb25zaXZlIGd1dHRlcnMuIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ8U3RyaW5nfE1hcH0gVGhlIGNlbGwgc2l6aW5nIHByb3BlcnR5IHZhbHVlLCBvciBhIHJlc3BvbnNpdmUgbWFwIG9mIHRoZW0uXG5AZnVuY3Rpb24geHktY2VsbC1zaXplLWNzcyhcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRicmVha3BvaW50OiBudWxsXG4pIHtcbiAgJG1hcmdpbi1ndXR0ZXI6IDA7XG5cbiAgQGlmICgkc2l6ZSA9PSAnYXV0bycgb3IgJHNpemUgPT0gJ3NocmluaycpIHtcbiAgICBAcmV0dXJuIGF1dG87XG4gIH1cblxuICAvLyBGb3IgY2VsbHMgd2l0aCBtYXJnaW4gZ3V0dGVycywgdGhlIGd1dHRlciBpcyBpbmNsdWRlZCBpbiB0aGUgd2lkdGguXG4gIEBpZiAoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG4gICAgJG1hcmdpbi1ndXR0ZXI6IHh5LWNlbGwtZ3V0dGVycygkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICAgIEBpZiAoJG1hcmdpbi1ndXR0ZXIgPT0gbnVsbCkge1xuICAgICAgQGVycm9yICd4eS1jZWxsLXNpemU6IG5vIGd1dHRlcnMgd2VyZSBmb3VuZCBpbiBgJGd1dHRlcnNgIGZvciBcIiRicmVha3BvaW50OiAjeyRicmVha3BvaW50fVwiJztcbiAgICB9XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgdGhlIGNlbGwgc2l6ZSAobnVtYmVyKVxuICAkc2l6ZS1yYXc6IGlmKCRzaXplID09ICdmdWxsJywgMTAwJSwgeHktY2VsbC1zaXplKCRzaXplKSk7XG5cbiAgLy8gQ2FsY3VsYXRlIHRoZSBjZWxsIENTUyBzaXplIGluY2x1ZGluZyBndXR0ZXJzIChzdHJpbmcpXG4gIC8vIElmIHRoZSBjZWxsIGhhcyByZXNwb25zaXZlIG1hcmdpbiBndXR0ZXJzLCByZXR1cm4gYSByZXNwb25zaXZlIG1hcCBvZiBzaXplcy5cbiAgQGlmIHR5cGUtb2YoJG1hcmdpbi1ndXR0ZXIpID09ICdtYXAnIHtcbiAgICAkcmVzcG9uc2l2ZS1jc3Mtc2l6ZXM6ICgpO1xuXG4gICAgQGVhY2ggJGJwLCAkbWcgaW4gJG1hcmdpbi1ndXR0ZXIge1xuICAgICAgJHNpemUtY3NzOiBpZigkbWcgPT0gMCwgJHNpemUtcmF3LCBjYWxjKCN7JHNpemUtcmF3fSAtICN7cmVtLWNhbGMoJG1nKX0pKTtcbiAgICAgICRyZXNwb25zaXZlLWNzcy1zaXplczogbWFwLW1lcmdlKCRyZXNwb25zaXZlLWNzcy1zaXplcywgKCRicDogJHNpemUtY3NzKSk7XG4gICAgfVxuXG4gICAgQHJldHVybiAkcmVzcG9uc2l2ZS1jc3Mtc2l6ZXM7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gYSBzaW5nbGUgQ1NTIHNpemUuXG4gIEBlbHNlIHtcbiAgICAkY3NzLXNpemU6IGlmKCRtYXJnaW4tZ3V0dGVyID09IDAsICRzaXplLXJhdywgY2FsYygjeyRzaXplLXJhd30gLSAje3JlbS1jYWxjKCRtYXJnaW4tZ3V0dGVyKX0pKTtcbiAgICBAcmV0dXJuICRjc3Mtc2l6ZTtcbiAgfVxufVxuXG4vLy8gU2V0cyBiYXNlIGZsZXggcHJvcGVydGllcyBmb3IgY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQWNjZXB0cyBgZnVsbGAsIGBhdXRvYCwgYHNocmlua2AsIGBncm93YCwgb3IgYW55IG90aGVyIHZhbHVlIHJlcHJlc2VudGluZyBhIGNlbGwgc2l6ZSAoaXQgd2lsbCBiZSB0cmVhdGVkIGFzIGBzaHJpbmtgKS5cbkBtaXhpbiB4eS1jZWxsLWJhc2UoJHNpemU6IGZ1bGwpIHtcbiAgJGJhc2U6IHh5LWNlbGwtYmFzZSgkc2l6ZSk7XG5cbiAgZmxleDogI3skYmFzZX07XG5cbiAgLy8gU2V0IGJhc2Ugc3R5bGVzIGZvciBcImZ1bGxcIiBvbmx5XG4gIEBpZigkc2l6ZSA9PSAnZnVsbCcpIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxufVxuXG4vLy8gUmVzZXRzIGEgY2VsbHMgd2lkdGggKG9yIGhlaWdodCBpZiB2ZXJ0aWNhbCBpcyB0cnVlKSBhcyB3ZWxsIGFzIHN0cmlwcyBpdHMgZ3V0dGVycy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsLXJlc2V0KCR2ZXJ0aWNhbDogdHJ1ZSkge1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgaGVpZ2h0LCB3aWR0aCk7XG4gICN7JGRpcmVjdGlvbn06IGF1dG87XG4gIG1heC0jeyRkaXJlY3Rpb259OiBub25lO1xufVxuXG4vLy8gU2V0cyBzaXppbmcgcHJvcGVydGllcyBmb3IgY2VsbHMuXG4vLy9cbi8vLyBHdXR0ZXJzLXJlbGF0ZWQgYXJndW1lbnRzIGFyZSByZXF1aXJlZCBmb3IgY2VsbHMgd2l0aCBtYXJnaW4gZ3V0dGVycyAoYnkgZGVmYXVsdCkgYXMgdGhlIGd1dHRlciBpcyBpbmNsdWRlZCBpbiB0aGUgd2lkdGguXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAgKDEwMCUgd2lkdGgpLCBgYXV0b2AgKHVzZSBhbGwgYXZhaWxhYmxlIHNwYWNlKSwgYHNocmlua2AgKHVzZSBvbmx5IHRoZSByZXF1aXJlZCBzcGFjZSkgb3IgYW55IGZyYWN0aW9uIChgNmAsIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8yYC4uLikuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBgbWFyZ2luYCwgYHBhZGRpbmdgIG9yIGBub25lYC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiBgYXV0b2AsIGdlbmVyYXRlcyBzaXplcyBhZGFwdGVkIGZvciByZXNwb25zaXZlIGd1dHRlcnMuIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktY2VsbC1zaXplKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkc2l6ZXM6IHh5LWNlbGwtc2l6ZS1jc3MoJHNpemUsICRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUsICRicmVha3BvaW50KTtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIGhlaWdodCwgd2lkdGgpO1xuXG4gIEBpZiAodHlwZS1vZigkc2l6ZXMpID09ICdtYXAnKSB7XG4gICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoYXV0bywgJHNpemVzKSB7XG4gICAgICAjeyRkaXJlY3Rpb259OiAkLXpmLWJwLXZhbHVlO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgI3skZGlyZWN0aW9ufTogJHNpemVzO1xuICB9XG59XG5cbi8vLyBTZXRzIGd1dHRlcnMgcHJvcGVydGllcyBmb3IgY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gLCBgcGFkZGluZ2Agb3IgYG5vbmVgLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbbnVsbF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uIEJ5IGRlZmF1bHQgYHJpZ2h0IGxlZnRgIGZvciBob3Jpem9udGFsIGNlbGxzIGFuZCBgdG9wIGJvdHRvbWAgZm9yIHZlcnRpY2FsIGNlbGxzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIGBhdXRvYCwgZ2VuZXJhdGVzIHJlc3BvbnNpdmUgZ3V0dGVycy4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBEaXJlY3Rpb24gb2YgdGhlIGd1dHRlcnMgdG8gb3V0cHV0LiBTZWUgYCRndXR0ZXItcG9zaXRpb25gLlxuQG1peGluIHh5LWNlbGwtZ3V0dGVycyhcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogbnVsbCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAvLyBHZXQgdGhlIGRlZmF1bHQgZ3V0dGVyIHBvc2l0aW9uIGFjY29yZGluZyB0byBjZWxsIGRpcmVjdGlvblxuICBAaWYoJGd1dHRlci1wb3NpdGlvbiA9PSBudWxsKSB7XG4gICAgJGd1dHRlci1wb3NpdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIHRvcCBib3R0b20sIGxlZnQgcmlnaHQpO1xuICB9XG5cbiAgLy8gR2V0IHRoZSBndXR0ZXIgd2lkdGggZm9yIHRoaXMgYnJlYWtwb2ludFxuICAkZ3V0dGVyLXdpZHRoOiB4eS1jZWxsLWd1dHRlcnMoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgQGlmICgkZ3V0dGVyLXdpZHRoID09IG51bGwpIHtcbiAgICBAZXJyb3IgJ3h5LWNlbGwtZ3V0dGVyczogbm8gZ3V0dGVycyB3ZXJlIGZvdW5kIGluIGAkZ3V0dGVyc2AgZm9yIFwiJGJyZWFrcG9pbnQ6ICN7JGJyZWFrcG9pbnR9XCInO1xuICB9XG5cbiAgQGlmICgkZ3V0dGVyLXR5cGUgYW5kICRndXR0ZXItdHlwZSAhPSBub25lKSB7XG4gICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyLXdpZHRoLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24pO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgY2VsbCBmb3IgeW91ciBncmlkLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgICgxMDAlIHdpZHRoKSwgYGF1dG9gICh1c2UgYWxsIGF2YWlsYWJsZSBzcGFjZSksIGBzaHJpbmtgICh1c2Ugb25seSB0aGUgcmVxdWlyZWQgc3BhY2UpIG9yIGFueSBmcmFjdGlvbiAoYDZgLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvMmAuLi4pLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW251bGxdIC0gW0RFUFJFQ0FURURdIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAsIGBwYWRkaW5nYCBvciBgbm9uZWAuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtudWxsXSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi4gQnkgZGVmYXVsdCBgcmlnaHQgbGVmdGAgZm9yIGhvcml6b250YWwgY2VsbHMgYW5kIGB0b3AgYm90dG9tYCBmb3IgdmVydGljYWwgY2VsbHMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgYGF1dG9gLCBnZW5lcmF0ZXMgcmVzcG9uc2l2ZSBndXR0ZXJzLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuLy8vIEBwYXJhbSB7TGlzdH0gJG91dHB1dCBbKGJhc2Ugc2l6ZSBndXR0ZXJzKV0gLSBDZWxsIHBhcnRzIHRvIG91dHB1dC4gWW91IHdpbGwgbmVlZCB0byBnZW5lcmF0ZSBvdGhlcnMgcGFydHMgb2YgdGhlIGNlbGwgc2VwZXJhdGVseSwgaXQgbWF5IG5vdCB3b3JrIHByb3Blcmx5IG90aGVyd2lzZS5cbkBtaXhpbiB4eS1jZWxsKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlci1vdXRwdXQ6IG51bGwsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IG51bGwsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlLFxuICAkb3V0cHV0OiAoYmFzZSBzaXplIGd1dHRlcnMpXG4pIHtcbiAgLy8gRGVmYXVsdCBmb3IgJGd1dHRlci1vdXRwdXRcbiAgQGlmICgkZ3V0dGVyLW91dHB1dCAhPSBudWxsKSB7XG4gICAgQHdhcm4gJ3h5LWNlbGw6ICRndXR0ZXItb3V0cHV0IGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZC4gU2VlIG1pZ3JhdGlvbiBub3RlcyBhdCBodHRwczovL2dpdC5pby9mb3VuZGF0aW9uLTYtNi0wJztcbiAgICBAaWYgKCRndXR0ZXItb3V0cHV0ID09IGZhbHNlKSB7XG4gICAgICAkb3V0cHV0OiBzbC1yZW1vdmUoJG91dHB1dCwgZ3V0dGVycyk7XG4gICAgfVxuICB9XG5cbiAgQGlmIChpbmRleCgkb3V0cHV0LCBiYXNlKSkge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZSgkc2l6ZSk7XG4gIH1cbiAgQGlmIChpbmRleCgkb3V0cHV0LCBzaXplKSkge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZSgkc2l6ZSwgJGd1dHRlcnMsICRndXR0ZXItdHlwZSwgJGJyZWFrcG9pbnQsICR2ZXJ0aWNhbCk7XG4gIH1cbiAgQGlmIChpbmRleCgkb3V0cHV0LCBndXR0ZXJzKSkge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtZ3V0dGVycygkZ3V0dGVycywgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uLCAkYnJlYWtwb2ludCwgJHZlcnRpY2FsKTtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbmdsZSBicmVha3BvaW50IHNpemVkIGdyaWQuIFVzZWQgdG8gZ2VuZXJhdGUgb3VyIGdyaWQgY2xhc3Nlcy5cbi8vL1xuLy8vIGB4eS1jZWxsLXN0YXRpYygpYCBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQuXG4vLy8gVXNlIGB4eS1jZWxsKClgIGluc3RlYWQgd2l0aCBgJG91dHB1dDogKHNpemUgZ3V0dGVycylgIHRvIG5vdCBnZW5lcmF0ZSB0aGUgY2VsbCBiYXNlLlxuLy8vIFNlZSBtaWdyYXRpb24gbm90ZXMgYXQgaHR0cHM6Ly9naXQuaW8vZm91bmRhdGlvbi02LTYtMFxuLy8vXG4vLy8gQGRlcHJlY2F0ZWQgdjYuNi4wXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAgKDEwMCUgd2lkdGgpLCBgYXV0b2AgKHVzZSBhbGwgYXZhaWxhYmxlIHNwYWNlKSwgYHNocmlua2AgKHVzZSBvbmx5IHRoZSByZXF1aXJlZCBzcGFjZSkgb3IgYW55IGZyYWN0aW9uIChgNmAsIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8yYC4uLikuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ3V0dGVyLW91dHB1dCBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVycy4gQWx3YXlzIGB0cnVlYCBmb3IgbWFyZ2luIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsLXN0YXRpYyhcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXItb3V0cHV0OiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogJC16Zi16ZXJvLWJyZWFrcG9pbnQsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICBAd2FybiAneHktY2VsbC1zdGF0aWMoKSBtaXhpbiBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQuIFVzZSBcInh5LWNlbGwoKVwiIGluc3RlYWQuIFNlZSBtaWdyYXRpb24gbm90ZXMgYXQgaHR0cHM6Ly9naXQuaW8vZm91bmRhdGlvbi02LTYtMCc7XG5cbiAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICRicmVha3BvaW50KTtcbiAgJGd1dHRlci1wb3NpdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIHRvcCBib3R0b20sIGxlZnQgcmlnaHQpO1xuXG4gICQtZ3V0dGVyLW91dHB1dDogaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nLCB0cnVlLCAkZ3V0dGVyLW91dHB1dCk7XG4gICQtZ3V0dGVyLW1hcmdpbjogaWYoJGd1dHRlci10eXBlID09ICdtYXJnaW4nLCAkZ3V0dGVyLCAwKTtcblxuICBAaW5jbHVkZSAteHktY2VsbC1wcm9wZXJ0aWVzKCRzaXplLCAkLWd1dHRlci1tYXJnaW4sICR2ZXJ0aWNhbCk7XG4gIEBpZiAoJC1ndXR0ZXItb3V0cHV0KSB7XG4gICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24pO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBGaW5kcyB0aGUgZ3JlYXRlc3QgY29tbW9uIGRpdmlzb3Igb2YgdHdvIGludGVnZXJzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRhIC0gRmlyc3QgbnVtYmVyIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiIC0gU2Vjb25kIG51bWJlciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGdyZWF0ZXN0IGNvbW1vbiBkaXZpc29yLlxuQGZ1bmN0aW9uIGdjZCgkYSwgJGIpIHtcbiAgLy8gRnJvbTogaHR0cDovL3Jvc2V0dGFjb2RlLm9yZy93aWtpL0dyZWF0ZXN0X2NvbW1vbl9kaXZpc29yI0phdmFTY3JpcHRcbiAgQGlmICgkYiAhPSAwKSB7XG4gICAgQHJldHVybiBnY2QoJGIsICRhICUgJGIpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIGFicygkYSk7XG4gIH1cbn1cblxuLy8vIEhhbmRsZXMgZGVjaW1hbCBleHBvbmVudHMgYnkgdHJ5aW5nIHRvIGNvbnZlcnQgdGhlbSBpbnRvIGEgZnJhY3Rpb24gYW5kIHRoZW4gdXNlIGEgbnRoLXJvb3QtYWxnb3JpdGhtIGZvciBwYXJ0cyBvZiB0aGUgY2FsY3VsYXRpb25cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBiYXNlIG51bWJlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGV4cG9uZW50IC0gVGhlIGV4cG9uZW50LlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIHByb2R1Y3Qgb2YgdGhlIGV4cG9uZW50aWF0aW9uLlxuQGZ1bmN0aW9uIHBvdygkYmFzZSwgJGV4cG9uZW50LCAkcHJlYzogMTYpIHtcbiAgQGlmIChmbG9vcigkZXhwb25lbnQpICE9ICRleHBvbmVudCkge1xuICAgICRwcmVjMjogcG93KDEwLCAkcHJlYyk7XG4gICAgJGV4cG9uZW50OiByb3VuZCgkZXhwb25lbnQgKiAkcHJlYzIpO1xuICAgICRkZW5vbWluYXRvcjogZ2NkKCRleHBvbmVudCwgJHByZWMyKTtcbiAgICBAcmV0dXJuIG50aC1yb290KHBvdygkYmFzZSwgZGl2aWRlKCRleHBvbmVudCwgJGRlbm9taW5hdG9yKSksIGRpdmlkZSgkcHJlYzIsICRkZW5vbWluYXRvciksICRwcmVjKTtcbiAgfVxuXG4gICR2YWx1ZTogJGJhc2U7XG4gIEBpZiAkZXhwb25lbnQgPiAxIHtcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRleHBvbmVudCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAqICRiYXNlO1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZXhwb25lbnQgPCAxIHtcbiAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoIC0kZXhwb25lbnQge1xuICAgICAgJHZhbHVlOiBkaXZpZGUoJHZhbHVlLCAkYmFzZSk7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG5cbkBmdW5jdGlvbiBudGgtcm9vdCgkbnVtLCAkbjogMiwgJHByZWM6IDEyKSB7XG4gIC8vIEZyb206IGh0dHA6Ly9yb3NldHRhY29kZS5vcmcvd2lraS9OdGhfcm9vdCNKYXZhU2NyaXB0XG4gICR4OiAxO1xuXG4gIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJHByZWMge1xuICAgICR4OiBkaXZpZGUoMSwgJG4pICogKCgkbiAtIDEpICogJHggKyBkaXZpZGUoJG51bSwgcG93KCR4LCAkbiAtIDEpKSk7XG4gIH1cblxuICBAcmV0dXJuICR4O1xufVxuXG4vLy8gQ2FsY3VsYXRlcyB0aGUgaGVpZ2h0IGFzIGEgcGVyY2VudGFnZSBvZiB0aGUgd2lkdGggZm9yIGEgZ2l2ZW4gcmF0aW8uXG4vLy8gQHBhcmFtIHtMaXN0fSAkcmF0aW8gLSBSYXRpbyB0byB1c2UgdG8gY2FsY3VsYXRlIHRoZSBoZWlnaHQsIGZvcm1hdHRlZCBhcyBgeCBieSB5YC5cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IEEgcGVyY2VudGFnZSB2YWx1ZSBmb3IgdGhlIGhlaWdodCByZWxhdGl2ZSB0byB0aGUgd2lkdGggb2YgYSByZXNwb25zaXZlIGNvbnRhaW5lci5cbkBmdW5jdGlvbiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbykge1xuICAkdzogbnRoKCRyYXRpbywgMSk7XG4gICRoOiBudGgoJHJhdGlvLCAzKTtcbiAgQHJldHVybiBkaXZpZGUoJGgsICR3KSAqIDEwMCU7XG59XG5cbi8vLyBQYXJzZSB0aGUgZ2l2ZW4gYCRmcmFjdGlvbmAgdG8gbnVtZXJhdG9ycyBhbmQgZGVudW1lcmF0b3JzLlxuLy8vXG4vLy8gQHBhcmFtIHsqfSAkZnJhY3Rpb24gLSBWYWx1ZSByZXByZXNlbnRpbmcgYSBmcmFjdGlvbiB0byBwYXJzZS4gSXQgY2FuIGJlIGZvcm1hdHRlZCBhcyBgNTAlYCwgYDEgb2YgMmAsIGAxLzJgIG9yIGA1MGAgKG5vIGRlbm9taW5hdG9yIHdvdWxkIGJlIHJldHVybmVkKS5cbi8vL1xuLy8vIEByZXR1cm4ge0xpc3R9IExpc3Qgb2YgcGFyc2VkIHZhbHVlcyB3aXRoIG51bWVyYXRvciBhdCBmaXJzdCBwb3NpdGlvbiBhbmQgZGVudW1lcmF0b3IgYXMgc2Vjb25kLiBUaGVzZSB2YWx1ZXMgbWF5IGJlIG51bGwuXG5AZnVuY3Rpb24gemYtcGFyc2UtZnJhY3Rpb24oJGZyYWN0aW9uKSB7XG5cbiAgQGlmIHR5cGUtb2YoJGZyYWN0aW9uKSA9PSAnbnVtYmVyJyB7XG4gICAgLy8gXCI1MCVcIlxuICAgIEBpZiB1bml0KCRmcmFjdGlvbikgPT0gJyUnIHtcbiAgICAgIEByZXR1cm4gKHN0cmlwLXVuaXQoJGZyYWN0aW9uKSwgMTAwKTtcbiAgICB9XG4gICAgQGVsc2UgaWYgKHVuaXQoJGZyYWN0aW9uKSA9PSAnJykge1xuICAgICAgLy8gXCIwLjVcIlxuICAgICAgQGlmICRmcmFjdGlvbiA8IDEge1xuICAgICAgICBAcmV0dXJuICgkZnJhY3Rpb24gKiAxMDAsIDEwMCk7XG4gICAgICB9XG4gICAgICAvLyBcIjUwXCJcbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQHJldHVybiAoJGZyYWN0aW9uLCBudWxsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiB0eXBlLW9mKCRmcmFjdGlvbikgPT0gJ2xpc3QnIHtcbiAgICAvLyBcIjUwIG9mIDEwMFwiLCBcIjUwLzEwMFwiLi4uXG4gICAgQGlmIGxlbmd0aCgkZnJhY3Rpb24pID09IDNcbiAgICBhbmQgdHlwZS1vZihudGgoJGZyYWN0aW9uLCAxKSA9PSAnbnVtYmVyJylcbiAgICBhbmQgdHlwZS1vZihudGgoJGZyYWN0aW9uLCAzKSA9PSAnbnVtYmVyJykge1xuICAgICAgQHJldHVybiAobnRoKCRmcmFjdGlvbiwgMSksIG50aCgkZnJhY3Rpb24sIDMpKTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIChudWxsLCBudWxsKTtcbn1cblxuLy8vIFJldHVybnMgd2hldGhlciB0aGUgZ2l2ZW4gYCR2YWx1ZWAgcmVwcmVzZW50cyBhIGZyYWN0aW9uLiBTdXBwb3J0cyBmb3JtYXRzIGxpa2UgYDUwJWAsIGAxIG9mIDJgLCBgMSBwZXIgMmAgb3IgYDEvMmAuXG4vLy9cbi8vLyBAcGFyYW0geyp9ICR2YWx1ZSAtIFZhbHVlIHRvIHRlc3QuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYWxsb3ctbm8tZGVub21pbmF0b3IgW2ZhbHNlXSAtIElmIGB0cnVlYCwgc2ltcGxlIG51bWJlcnMgd2l0aG91dCBkZW5vbWluYXRvcnMgbGlrZSBgNTBgIGFyZSBzdXBwb3J0ZWQuXG4vLy9cbi8vLyBAcmV0dXJuIHtCb29sZWFufSBgdHJ1ZWAgaWYgYCR2YWx1ZWAgcmVwcmVzZW50cyBhIGZyYWN0aW9uLCBgZmFsc2VgIG90aGVyd2lzZS5cbkBmdW5jdGlvbiB6Zi1pcy1mcmFjdGlvbigkdmFsdWUsICRhbGxvdy1uby1kZW5vbWluYXRvcjogZmFsc2UpIHtcbiAgJHBhcnNlZDogemYtcGFyc2UtZnJhY3Rpb24oJHZhbHVlKTtcbiAgQHJldHVybiBub3QobnRoKCRwYXJzZWQsIDEpID09IG51bGxcbiAgICBvciAobnRoKCRwYXJzZWQsIDIpID09IG51bGwgYW5kICRhbGxvdy1uby1kZW5vbWluYXRvciA9PSBmYWxzZSkpO1xufVxuXG4vLy8gQ2FsY3VsYXRlIGEgcGVyY2VudGFnZSBmcm9tIGEgZ2l2ZW4gZnJhY3Rpb24uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkZnJhY3Rpb24gLSBWYWx1ZSByZXByZXNlbnRpbmcgYSBmcmFjdGlvbiB0byB1c2UgdG8gY2FsY3VsYXRlIHRoZSBwZXJjZW50YWdlLCBmb3JtYXR0ZWQgYXMgYDUwYCAocmVsYXRpdmUgdG8gYCRkZW5vbWluYXRvcmApLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvMmAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJGRlbm9taW5hdG9yIC0gRGVmYXVsdCB2YWx1ZSB0byB1c2UgYXMgZGVub21pbmF0b3Igd2hlbiBgJGZyYWN0aW9uYCByZXByZXNlbnRzIGFuIGFic29sdXRlIHZhbHVlLlxuQGZ1bmN0aW9uIGZyYWN0aW9uLXRvLXBlcmNlbnRhZ2UoXG4gICRmcmFjdGlvbixcbiAgJGRlbm9taW5hdG9yOiBudWxsXG4pIHtcbiAgJHBhcnNlZDogemYtcGFyc2UtZnJhY3Rpb24oJGZyYWN0aW9uKTtcbiAgJHBhcnNlZC1ub21pbmF0b3I6IG50aCgkcGFyc2VkLCAxKTtcbiAgJHBhcnNlZC1kZW5vbWluYXRvcjogbnRoKCRwYXJzZWQsIDIpO1xuXG4gIEBpZiAkcGFyc2VkLW5vbWluYXRvciA9PSBudWxsIHtcbiAgICBAZXJyb3IgJ1dyb25nIHN5bnRheCBmb3IgXCJmcmFjdGlvbi10by1wZXJjZW50YWdlKClcIi4gVXNlIGEgbnVtYmVyLCBkZWNpbWFsLCBwZXJjZW50YWdlLCBvciBcIm4gb2YgblwiIC8gXCJuL25cIi4nO1xuICB9XG4gIEBpZiAkcGFyc2VkLWRlbm9taW5hdG9yID09IG51bGwge1xuICAgIEBpZiB0eXBlLW9mKCRkZW5vbWluYXRvcikgPT0gJ251bWJlcicge1xuICAgICAgJHBhcnNlZC1kZW5vbWluYXRvcjogJGRlbm9taW5hdG9yO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAZXJyb3IgJ0Vycm9yIHdpdGggXCJmcmFjdGlvbi10by1wZXJjZW50YWdlKClcIi4gQSBkZWZhdWx0IFwiJGRlbm9taW5hdG9yXCIgaXMgcmVxdWlyZWQgdG8gc3VwcG9ydCBhYnNvbHV0ZSB2YWx1ZXMnO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gcGVyY2VudGFnZShkaXZpZGUoJHBhcnNlZC1ub21pbmF0b3IsICRwYXJzZWQtZGVub21pbmF0b3IpKTtcbn1cblxuLy8vIERpdmlkZSB0aGUgZ2l2ZW4gYCRkaXZpZGVudGAgYnkgdGhlIGdpdmVuIGAkZGl2aXNvcmAuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGRpdmlkZW50IC0gVGhlIGRpdmlkZW50LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZGl2aXNvciAtIFRoZSBkaXZpc29yLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcHJlY2lzaW9uIC0gVGhlIHByZWNpc2lvbiBkZWNpbWFscyBmb3IgdGhlIGRpdmlzaW9uLlxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSBUaGUgcHJvZHVjdCBvZiB0aGUgZGl2aXNpb24uXG5AZnVuY3Rpb24gZGl2aWRlKCRkaXZpZGVuZCwgJGRpdmlzb3IsICRwcmVjaXNpb246IDEyKSB7XG4gICRzaWduOiBpZigkZGl2aWRlbmQgPiAwIGFuZCAkZGl2aXNvciA+IDAgb3IgJGRpdmlkZW5kIDwgMCBhbmQgJGRpdmlzb3IgPCAwLCAxLCAtMSk7XG4gICRkaXZpZGVuZDogYWJzKCRkaXZpZGVuZCk7XG4gICRkaXZpc29yOiBhYnMoJGRpdmlzb3IpO1xuICBAaWYgJGRpdmlkZW5kID09IDAge1xuICAgIEByZXR1cm4gMDtcbiAgfVxuICBAaWYgJGRpdmlzb3IgPT0gMCB7XG4gICAgQGVycm9yICdDYW5ub3QgZGl2aWRlIGJ5IDAnO1xuICB9XG4gICRyZW1haW5kZXI6ICRkaXZpZGVuZDtcbiAgJHJlc3VsdDogMDtcbiAgJGZhY3RvcjogMTA7XG4gIEB3aGlsZSAoJHJlbWFpbmRlciA+IDAgYW5kICRwcmVjaXNpb24gPj0gMCkge1xuICAgICRxdW90aWVudDogMDtcbiAgICBAd2hpbGUgKCRyZW1haW5kZXIgPj0gJGRpdmlzb3IpIHtcbiAgICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgLSAkZGl2aXNvcjtcbiAgICAgICRxdW90aWVudDogJHF1b3RpZW50ICsgMTtcbiAgICB9XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgJHF1b3RpZW50O1xuICAgICRmYWN0b3I6ICRmYWN0b3IgKiAwLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgICdweCc6IDFweCxcbiAgICAncmVtJzogMXJlbSxcbiAgICAnZW0nOiAxZW0sXG4gICAgJyUnOiAxJVxuICApO1xuICBAaWYgKCRkaXZpZGVuZC11bml0ICE9ICRkaXZpc29yLXVuaXQgYW5kIG1hcC1oYXMta2V5KCR1bml0LW1hcCwgJGRpdmlkZW5kLXVuaXQpKSB7XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIG1hcC1nZXQoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCk7XG4gIH1cblxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gU2l6ZXMgY2hpbGQgZWxlbWVudHMgc28gdGhhdCBgJG5gIG51bWJlciBvZiBpdGVtcyBhcHBlYXIgb24gZWFjaCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgZWxlbWVudHMgdG8gZGlzcGxheSBwZXIgcm93LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWycuY2VsbCddIC0gU2VsZWN0b3IocykgdG8gdXNlIGZvciBjaGlsZCBlbGVtZW50cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFtudWxsXSAtIFtERVBSRUNBVEVEXSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gLCBgcGFkZGluZ2Agb3IgYG5vbmVgLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbbnVsbF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uIEJ5IGRlZmF1bHQgYHJpZ2h0IGxlZnRgIGZvciBob3Jpem9udGFsIGNlbGxzIGFuZCBgdG9wIGJvdHRvbWAgZm9yIHZlcnRpY2FsIGNlbGxzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgYnJlYWtwb2ludCB0byB1c2UgZm9yIHRoZSBjZWxsIGdlbmVyYXRpb24uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG4vLy8gQHBhcmFtIHtMaXN0fSAkb3V0cHV0IFsoYmFzZSBzaXplIGd1dHRlcnMpXSAtIENlbGwgcGFydHMgdG8gb3V0cHV0LiBZb3Ugd2lsbCBuZWVkIHRvIGdlbmVyYXRlIG90aGVycyBwYXJ0cyBvZiB0aGUgY2VsbCBzZXBlcmF0ZWx5LCBpdCBtYXkgbm90IHdvcmsgY29ycmVjdGx5IG90aGVyd2lzZS5cbkBtaXhpbiB4eS1ncmlkLWxheW91dChcbiAgJG4sXG4gICRzZWxlY3RvcjogJy5jZWxsJyxcbiAgJGd1dHRlci1vdXRwdXQ6IG51bGwsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IG51bGwsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlLFxuICAkb3V0cHV0OiAoYmFzZSBzaXplIGd1dHRlcnMpXG4pIHtcbiAgJHNpemU6IHBlcmNlbnRhZ2UoZGl2aWRlKDEsICRuKSk7XG5cbiAgJiA+ICN7JHNlbGVjdG9yfSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgkc2l6ZSwgJGd1dHRlci1vdXRwdXQsICRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24sICRicmVha3BvaW50LCAkdmVydGljYWwsICRvdXRwdXQpO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ29sbGFwc2VzIHRoZSBncmlkIGEgY2VsbHMgd2l0aGluIGl0LlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbLmNlbGxdIC0gVGhlIGNoaWxkIGVsZW1lbnQgdG8gcmVtb3ZlIHRoZSBndXR0ZXIgZnJvbS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFRoZSB0eXBlIG9mIGd1dHRlciB0byByZW1vdmUuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbnMgdG8gcmVtb3ZlIGd1dHRlcnMgZnJvbS4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkbWluLWJyZWFrcG9pbnQgWyQtemYtemVyby1icmVha3BvaW50XSAtIE1pbmltdW0gYnJlYWtwb2ludCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgZm9yIHdoaWNoIHRvIGNvbGxhcHNlIHRoZSBndXR0ZXIuXG5AbWl4aW4geHktZ3JpZC1jb2xsYXBzZShcbiAgJHNlbGVjdG9yOiAnLmNlbGwnLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJG1pbi1icmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludFxuKSB7XG4gIC8vIEZpcnN0LCBsZXRzIG5lZ2F0ZSBhbnkgbWFyZ2lucyBvbiB0aGUgdG9wIGxldmVsXG4gIEBpZiAoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgfVxuXG4gICAgICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJGV4Y2x1ZGVkLWJwczogLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkbWluLWJyZWFrcG9pbnQpO1xuXG4gICAgLy8gT3V0cHV0IG5ldyB3aWR0aHMgdG8gbm90IGluY2x1ZGUgZ3V0dGVyc1xuICAgIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZihzbC1jb250YWluKCRleGNsdWRlZC1icHMsICRicCkpIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICAgICAgPiAuI3skYnB9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwKSB7XG4gICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgICAgID4gLiN7JGJwfS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZSgkaSwgJGd1dHRlci10eXBlOiBub25lKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgbWFyZ2luLSN7JHZhbHVlfTogMDtcbiAgICAgIH1cblxuICAgICAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgICAgcGFkZGluZy0jeyR2YWx1ZX06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBSZXR1cm5zIHRoZSBhcHByb3ByaWF0ZSBDU1MgdmFsdWUgdG8gb2Zmc2V0IGEgY2VsbC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gU2l6ZSB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGB4eS1jZWxsKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSBNYXAgb2YgZ3V0dGVycyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIGZvciByZXNwb25zaXZlIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHVzZS4gQ2FuIGJlIGBtYXJnaW5gIG9yIGBwYWRkaW5nYFxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ8U3RyaW5nfSBUaGUgY2VsbCBvZmZzZXQgcHJvcGVydHkgdmFsdWUuXG5AZnVuY3Rpb24geHktY2VsbC1vZmZzZXQoXG4gICRuLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogbnVsbFxuKSB7XG4gICRicmVha3BvaW50OiAtemYtY3VycmVudC1icmVha3BvaW50KCRicmVha3BvaW50LCAkZGVmYXVsdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICAkc2l6ZTogeHktY2VsbC1zaXplKCRuKTtcblxuICAkb2Zmc2V0OiAkc2l6ZTtcbiAgQGlmICgkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcbiAgICAkZ3V0dGVyOiByZW0tY2FsYyh4eS1jZWxsLWd1dHRlcnMoJGd1dHRlcnMsICRicmVha3BvaW50KSk7XG4gICAgJG9mZnNldDogaWYoJGd1dHRlciA9PSAwLCAkc2l6ZSwgY2FsYygjeyRzaXplfSArICN7JGd1dHRlcn0gLyAyKSk7XG4gIH1cbiAgQHJldHVybiAkb2Zmc2V0O1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQvYm90dG9tIGJ5IGAkbmAgY29sdW1ucy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gU2l6ZSB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGB4eS1jZWxsKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSBNYXAgb2YgZ3V0dGVycyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIGZvciByZXNwb25zaXZlIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHVzZS4gQ2FuIGJlIGBtYXJnaW5gIG9yIGBwYWRkaW5nYFxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRicmVha3BvaW50IFtudWxsXSAtIEJyZWFrcG9pbnQgdG8gdXNlIGZvciBgJGd1dHRlcnNgLiBJdCBjYW4gYmUgYSBicmVha3BvaW50IG5hbWUsIGxpc3Qgb2YgYnJlYWtwb2ludHMgb3IgYGF1dG9gIGZvciBhbGwgYnJlYWtwb2ludHMuIElmIGEgbGlzdCBpcyBnaXZlbiwgbWVkaWEtcXVlcmllcyB3aWxsIGJlIGdlbmVyYXRlZC4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gU2V0cyB0aGUgZGlyZWN0aW9uIG9mIHRoZSBvZmZzZXQuIElmIHNldCB0byB0cnVlIHdpbGwgYXBwbHkgbWFyZ2luLXRvcCBpbnN0ZWFkLlxuQG1peGluIHh5LWNlbGwtb2Zmc2V0KFxuICAkbixcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkYnJlYWtwb2ludDogLXpmLWN1cnJlbnQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCwgJGRlZmF1bHQ6ICQtemYtemVyby1icmVha3BvaW50KTtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsLCAndG9wJywgJGdsb2JhbC1sZWZ0KTtcblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50LWluKCRicmVha3BvaW50LCAkbWVkaWEtcXVlcmllczogJ2Zvci1saXN0cycpIHtcbiAgICAkb2Zmc2V0OiB4eS1jZWxsLW9mZnNldCgkbiwgJGd1dHRlcnMsICRndXR0ZXItdHlwZSk7XG4gICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06ICN7JG9mZnNldH07XG4gIH1cbn1cbiIsIi8vIHNhc3MtbGludDpkaXNhYmxlIG5vLXZlbmRvci1wcmVmaXhlc1xuXG4vLy8gTW9kaWZpZXMgYSBncmlkIHRvIGdpdmUgaXQgXCJmcmFtZVwiIGJlaGF2aW9yIChubyBvdmVyZmxvdywgbm8gd3JhcCwgc3RyZXRjaCBiZWhhdmlvcilcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBJcyBncmlkIHZlcnRpY2FsIG9yIGhvcml6b250YWwuIFNob3VsZCBtYXRjaCBncmlkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJG5lc3RlZCBbZmFsc2VdIC0gSXMgZ3JpZCBuZXN0ZWQgb3Igbm90LiBJZiBuZXN0ZWQgaXMgdHJ1ZSB0aGlzIHNldHMgdGhlIGZyYW1lIHRvIDEwMCUgaGVpZ2h0LCBvdGhlcndpc2Ugd2lsbCBiZSAxMDB2aC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFtudWxsXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbmNsdWRlLWJhc2UgW3RydWVdIC0gSW5jbHVkZSB0aGUgYmFzZSBzdHlsZXMgdGhhdCBkb24ndCB2YXJ5IHBlciBicmVha3BvaW50LlxuQG1peGluIHh5LWdyaWQtZnJhbWUoXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICRuZXN0ZWQ6IGZhbHNlLFxuICAkZ3V0dGVyczogbnVsbCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICRpbmNsdWRlLWJhc2U6IHRydWVcbikge1xuXG4gIEBpZiAkaW5jbHVkZS1iYXNlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuXG4gIEBpZiAkYnJlYWtwb2ludCA9PSBudWxsIGFuZCB0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbWFwJyB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUoJHZlcnRpY2FsLCAkbmVzdGVkLCAkZ3V0dGVycywgJC16Zi1zaXplLCBmYWxzZSk7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAvLyBHZXQgb3VyIGd1dHRlcnMgaWYgYXBwbGljYWJsZVxuICAgICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG5cbiAgICAvLyBJZiB3ZSBoYXZlIGEgZ3V0dGVyLCBhZGQgaXQgdG8gdGhlIHdpZHRoL2hlaWdodFxuICAgIEBpZiAkZ3V0dGVyIHtcbiAgICAgIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgICAgICR1bml0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZoKTtcbiAgICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcik7XG4gICAgICAgIGhlaWdodDogY2FsYygjeyR1bml0fSArICN7JGd1dHRlcn0pO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICR1bml0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZ3KTtcbiAgICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcik7XG4gICAgICAgIHdpZHRoOiBjYWxjKCN7JHVuaXR9ICsgI3skZ3V0dGVyfSk7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgICAgIGhlaWdodDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2aCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgd2lkdGg6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdncpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gTW9kaWZpZXMgYSBjZWxsIHRvIGdpdmUgaXQgXCJibG9ja1wiIGJlaGF2aW9yIChvdmVyZmxvdyBhdXRvLCBpbmVydGlhbCBzY3JvbGxpbmcpXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gSXMgZ3JpZCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsLiBTaG91bGQgbWF0Y2ggZ3JpZC5cbkBtaXhpbiB4eS1jZWxsLWJsb2NrKFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJHByb3BlcnR5OiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgJ292ZXJmbG93LXknLCAnb3ZlcmZsb3cteCcpO1xuXG4gIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIH0gQGVsc2Uge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbn1cblxuLy8vIENvbnRhaW5lciBmb3IgaW5zaWRlIGEgZ3JpZCBmcmFtZSBjb250YWluaW5nIG11bHRpcGxlIGJsb2Nrcy4gVHlwaWNhbGx5IHVzZWRcbi8vLyBhcyBhIG1vZGlmaWVyIGZvciBhIGAuY2VsbGAgdG8gYWxsb3cgdGhlIGNlbGwgdG8gcGFzcyBhbG9uZyBmbGV4IHNpemluZ1xuLy8vIGNvbnN0cmFpbnRzIC8gZnJvbSBwYXJlbnRzIHRvIGNoaWxkcmVuLlxuQG1peGluIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuXG4gID4gLmdyaWQteCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvblxuLy8vL1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGJ1dHRvbiBlbGVtZW50cy5cbi8vLyBAdHlwZSBGb250XG4kYnV0dG9uLWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGJ1dHRvbiBlbGVtZW50cy5cbi8vLyBJZ25vcmVkIGlmIG51bGwgKGRlZmF1bHQpXG4vLy8gQHR5cGUgRm9udC1XZWlnaHRcbiRidXR0b24tZm9udC13ZWlnaHQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tcGFkZGluZzogMC44NWVtIDFlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBhcm91bmQgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZpbGwgZm9yIGJ1dHRvbnMuIENhbiBlaXRoZXIgYmUgYHNvbGlkYCBvciBgaG9sbG93YC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kYnV0dG9uLWZpbGw6IHNvbGlkICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGl2ZSBmb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgYnV0dG9ucywgdHJhbnNwYXJlbnQgYnkgZGVmYXVsdFxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgd2lkdGggZm9yIGhvbGxvdyBvdXRsaW5lIGJ1dHRvbnNcbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBvcGFjaXR5IGZvciBhIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGhvbGxvdyBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbDogZmxpcCBmcm9tIG1hcmdpbi1yaWdodCB0byBtYXJnaW4tbGVmdCBmb3IgZGVmYXVsdHNcbkBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbn1cblxuLy8vIHRyYW5zaXRpb25zIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBBZGRpdGlvbmFsIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgLmV4cGFuZGVkXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJ1dHRvbi1yZXNwb25zaXZlLWV4cGFuZGVkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gVE9ETzogRG9jdW1lbnQgYnV0dG9uLWJhc2UoKSBtaXhpblxuQG1peGluIGJ1dHRvbi1iYXNlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogJGJ1dHRvbi1tYXJnaW47XG5cbiAgQGlmICh0eXBlLW9mKCRidXR0b24tcGFkZGluZykgPT0gJ21hcCcpIHtcbiAgICBAZWFjaCAkc2l6ZSwgJHBhZGRpbmcgaW4gJGJ1dHRvbi1wYWRkaW5nIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmc7XG4gIH1cblxuICBib3JkZXI6ICRidXR0b24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgdHJhbnNpdGlvbjogJGJ1dHRvbi10cmFuc2l0aW9uO1xuICBmb250LWZhbWlseTogJGJ1dHRvbi1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuICBmb250LXdlaWdodDogJGJ1dHRvbi1mb250LXdlaWdodDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vLyBFeHBhbmRzIGEgYnV0dG9uIHRvIG1ha2UgaXQgZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgdGhlIGV4cGFuZCBiZWhhdmlvci4gU2V0IHRvIGBmYWxzZWAgdG8gcmV2ZXJzZSB0aGlzIGJlaGF2aW9yLlxuQG1peGluIGJ1dHRvbi1leHBhbmQoJGV4cGFuZDogdHJ1ZSkge1xuICBAaWYgJGV4cGFuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgYmFzZSBzdHlsZXMgb2YgYSBob2xsb3cgb3IgY2xlYXIgYnV0dG9uIGZpbGxpbmcgYWNjb3JkaW5nIHRvIGAkZmlsbGAuXG4vLy8gU2VlIG1peGluIGBidXR0b24tZmlsbC1zdHlsZWAgZm9yIHRoZSBmaWxsaW5nIHN0eWxlcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRmaWxsIFskYnV0dG9uLWZpbGxdIC0gVHlwZSBvZiBmaWxsaW5nIGJldHdlZW4gYGhvbGxvd2AgYW5kIGBjbGVhcmAuIGBzb2xpZGAgaGFzIG5vIGVmZmVjdHMuXG5AbWl4aW4gYnV0dG9uLWZpbGwoXG4gICRmaWxsOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaWYgJGZpbGwgPT0gaG9sbG93IHtcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICB9XG4gIEBlbHNlIGlmICRmaWxsID09IGNsZWFyIHtcbiAgICBAaW5jbHVkZSBidXR0b24tY2xlYXI7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHZpc3VhbCBzdHlsZXMgb2YgYSBzb2xpZC9ob2xsb3cvY2xlYXIgYnV0dG9uIGZpbGxpbmcgYWNjb3JkaW5nIHRvIGAkZmlsbGAuXG4vLy8gU2VlIG1peGlucyBgYnV0dG9uLXN0eWxlYCwgYGJ1dHRvbi1ob2xsb3ctc3R5bGVgIGFuZCBgYnV0dG9uLWNsZWFyLXN0eWxlYCBmb3IgZWZmZWN0cyBvZiB2aXN1YWwgc3R5bGluZyBwYXJhbWV0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZpbGwgWyRidXR0b24tZmlsbF0gLSBUeXBlIG9mIGZpbGxpbmcgYmV0d2VlbiBgaG9sbG93YCBhbmQgYGNsZWFyYC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIC1cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIC1cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gLVxuQG1peGluIGJ1dHRvbi1maWxsLXN0eWxlKFxuICAkZmlsbDogJGJ1dHRvbi1maWxsLFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkY29sb3I6ICRidXR0b24tY29sb3Jcbikge1xuICBAaWYgJGZpbGwgPT0gc29saWQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmFja2dyb3VuZCwgJGJhY2tncm91bmQtaG92ZXIsICRjb2xvcik7XG4gIH1cbiAgQGVsc2UgaWYgJGZpbGwgPT0gaG9sbG93IHtcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRiYWNrZ3JvdW5kKTtcbiAgfVxuICBAZWxzZSBpZiAkZmlsbCA9PSBjbGVhciB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWNsZWFyLXN0eWxlKCRiYWNrZ3JvdW5kKTtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tc3R5bGUoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgQGlmICRiYWNrZ3JvdW5kLWhvdmVyID09IGF1dG8ge1xuICAgICRiYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzKTtcbiAgfVxuXG4gIC8vIERlZmF1bHQgYW5kIGRpc2FibGVkIHN0YXRlc1xuICAmLFxuICAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZDpob3ZlciwgJltkaXNhYmxlZF06aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMsICZbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgYmFzZSBzdHlsZXMgb2YgYSBob2xsb3cgYnV0dG9uLlxuLy8vIFNlZSBtaXhpbiBgYnV0dG9uLWhvbGxvdy1zdHlsZWAgZm9yIHRoZSBmaWxsaW5nIHN0eWxlcy5cbkBtaXhpbiBidXR0b24taG9sbG93IHtcbiAgJiwgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBob2xsb3cgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIFRleHQgYW5kIGJvcmRlciBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRob3Zlci1saWdodG5lc3MgWyRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzc10gLSBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJvcmRlci13aWR0aCBbJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoXSAtIEJvcmRlciB3aWR0aCBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbi1ob2xsb3ctc3R5bGUoXG4gICRjb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3MsXG4gICRib3JkZXItd2lkdGg6ICRidXR0b24taG9sbG93LWJvcmRlci13aWR0aFxuKSB7XG4gICRjb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkaG92ZXItbGlnaHRuZXNzKTtcblxuICAvLyBEZWZhdWx0IGFuZCBkaXNhYmxlZCBzdGF0ZXNcbiAgJixcbiAgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0sXG4gICYuZGlzYWJsZWQ6aG92ZXIsICZbZGlzYWJsZWRdOmhvdmVyLFxuICAmLmRpc2FibGVkOmZvY3VzLCAmW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRjb2xvcjtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgYmFzZSBzdHlsZXMgb2YgYSBjbGVhciBidXR0b24uXG4vLy8gU2VlIG1peGluIGBidXR0b24tY2xlYXItc3R5bGVgIGZvciB0aGUgZmlsbGluZyBzdHlsZXMuXG5AbWl4aW4gYnV0dG9uLWNsZWFyIHtcbiAgJiwgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgY2xlYXIgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkaG92ZXItbGlnaHRuZXNzIFskYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3NdIC0gQ29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyLlxuQG1peGluIGJ1dHRvbi1jbGVhci1zdHlsZShcbiAgJGNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRob3Zlci1saWdodG5lc3M6ICRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzc1xuKSB7XG4gICRjb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkaG92ZXItbGlnaHRuZXNzKTtcblxuICAvLyBEZWZhdWx0IGFuZCBkaXNhYmxlZCBzdGF0ZXNcbiAgJixcbiAgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0sXG4gICYuZGlzYWJsZWQ6aG92ZXIsICZbZGlzYWJsZWRdOmhvdmVyLFxuICAmLmRpc2FibGVkOmZvY3VzLCAmW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gIH1cbn1cblxuLy8vIEFkZHMgZGlzYWJsZWQgc3R5bGVzIHRvIGEgYnV0dG9uIGJ5IGZhZGluZyB0aGUgZWxlbWVudCBhbmQgcmVzZXRpbmcgdGhlIGN1cnNvci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9wYWNpdHkgWyRidXR0b24tb3BhY2l0eS1kaXNhYmxlZF0gLSBPcGFjaXR5IG9mIHRoZSBkaXNhYmxlZCBidXR0b24uXG5AbWl4aW4gYnV0dG9uLWRpc2FibGVkKFxuICAkb3BhY2l0eTogJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkXG4pIHtcbiAgb3BhY2l0eTogJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4vLy8gQWRkcyBhIGRyb3Bkb3duIGFycm93IHRvIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc2l6ZSBbMC40ZW1dIC0gU2l6ZSBvZiB0aGUgYXJyb3cuIFdlIHJlY29tbWVuZCB1c2luZyBhbiBgZW1gIHZhbHVlIHNvIHRoZSB0cmlhbmdsZSBzY2FsZXMgd2hlbiB1c2VkIGluc2lkZSBkaWZmZXJlbnQgc2l6ZXMgb2YgYnV0dG9ucy5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgW3doaXRlXSAtIENvbG9yIG9mIHRoZSBhcnJvdy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9mZnNldCBbJGJ1dHRvbi1wYWRkaW5nXSAtIERpc3RhbmNlIGJldHdlZW4gdGhlIGFycm93IGFuZCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uLiBEZWZhdWx0cyB0byB3aGF0ZXZlciB0aGUgcmlnaHQgcGFkZGluZyBvZiBhIGJ1dHRvbiBpcy5cbkBtaXhpbiBidXR0b24tZHJvcGRvd24oXG4gICRzaXplOiAwLjRlbSxcbiAgJGNvbG9yOiAkd2hpdGUsXG4gICRvZmZzZXQ6IGdldC1zaWRlKCRidXR0b24tcGFkZGluZywgcmlnaHQpXG4pIHtcbiAgJjo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkc2l6ZSwgJGNvbG9yLCBkb3duKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTsgLy8gQWxpZ25zIHRoZSBhcnJvdyB3aXRoIHRoZSB0ZXh0IG9mIHRoZSBidXR0b25cblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogI3skZ2xvYmFsLXJpZ2h0fTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkb2Zmc2V0O1xuICB9XG59XG5cbi8vLyBBZGRzIGFsbCBzdHlsZXMgZm9yIGEgYnV0dG9uLiBGb3IgbW9yZSBncmFudWxhciBjb250cm9sIG92ZXIgc3R5bGVzLCB1c2UgdGhlIGluZGl2aWR1YWwgYnV0dG9uIG1peGlucy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gbWFrZSB0aGUgYnV0dG9uIGZ1bGwtd2lkdGguXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0eWxlIFtzb2xpZF0gLSBTZXQgdG8gYGhvbGxvd2AgdG8gY3JlYXRlIGEgaG9sbG93IGJ1dHRvbi4gVGhlIGNvbG9yIGRlZmluZWQgaW4gYCRiYWNrZ3JvdW5kYCB3aWxsIGJlIHVzZWQgYXMgdGhlIHByaW1hcnkgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbkBtaXhpbiBidXR0b24oXG4gICRleHBhbmQ6IGZhbHNlLFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkY29sb3I6ICRidXR0b24tY29sb3IsXG4gICRzdHlsZTogJGJ1dHRvbi1maWxsXG4pIHtcbiAgQGluY2x1ZGUgYnV0dG9uLWJhc2U7XG4gIEBpbmNsdWRlIGJ1dHRvbi1maWxsKCRzdHlsZSk7XG4gIEBpbmNsdWRlIGJ1dHRvbi1maWxsLXN0eWxlKCRzdHlsZSwgJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IpO1xuXG4gIEBpZiAkZXhwYW5kIHtcbiAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJ1dHRvbiB7XG4gIC5idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbigkc3R5bGU6IG5vbmUpO1xuXG4gICAgLy8gU2l6ZXNcbiAgICBAZWFjaCAkc2l6ZSwgJHZhbHVlIGluIG1hcC1yZW1vdmUoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCkge1xuICAgICAgJi4jeyRzaXplfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZXhwYW5kZWQgeyBAaW5jbHVkZSBidXR0b24tZXhwYW5kOyB9XG5cbiAgICBAaWYgJGJ1dHRvbi1yZXNwb25zaXZlLWV4cGFuZGVkIHtcbiAgICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9IG9ubHkpIHtcbiAgICAgICAgICAmLiN7JHNpemV9LW9ubHktZXhwYW5kZWQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9IGRvd24pIHtcbiAgICAgICAgICAgICYuI3skc2l6ZX0tZG93bi1leHBhbmRlZCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgjeyRzaXplfSkge1xuICAgICAgICAgICAgJi4jeyRzaXplfS1leHBhbmRlZCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU29saWQsIGhvbGxvdyAmIGNsZWFyIHN0eWxlc1xuICAgIEBlYWNoICRmaWxsaW5nIGluIChzb2xpZCBob2xsb3cgY2xlYXIpIHtcbiAgICAgICRzZWxlY3RvcjogaWYoJGJ1dHRvbi1maWxsID09ICRmaWxsaW5nLCBudWxsLCAnLiN7JGZpbGxpbmd9Jyk7XG5cbiAgICAgICYjeyRzZWxlY3Rvcn0ge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZmlsbCgkZmlsbGluZyk7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsLXN0eWxlKCRmaWxsaW5nKTtcblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZmlsbC1zdHlsZSgkZmlsbGluZywgJGNvbG9yLCBhdXRvLCBhdXRvKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAgICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kaXNhYmxlZDtcbiAgICB9XG5cbiAgICAvLyBEcm9wZG93biBhcnJvd1xuICAgICYuZHJvcGRvd24ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRyb3Bkb3duO1xuXG4gICAgICBAaWYgJGJ1dHRvbi1maWxsID09IGhvbGxvdyB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5ob2xsb3csICYuY2xlYXIge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQnV0dG9uIHdpdGggZHJvcGRvd24gYXJyb3cgb25seVxuICAgICYuYXJyb3ctb25seTo6YWZ0ZXIge1xuICAgICAgdG9wOiAtMC4xZW07XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgfVxuICB9XG5cbiAgYS5idXR0b24geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGNsb3NlLWJ1dHRvblxuLy8vL1xuXG4vLy8gRGVmYXVsdCBwb3NpdGlvbiBvZiB0aGUgY2xvc2UgYnV0dG9uLiBUaGUgZmlyc3QgdmFsdWUgc2hvdWxkIGJlIGByaWdodGAgb3IgYGxlZnRgLCBhbmQgdGhlIHNlY29uZCB2YWx1ZSBzaG91bGQgYmUgYHRvcGAgb3IgYGJvdHRvbWAuXG4vLy8gQHR5cGUgTGlzdFxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3AgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHotaW5kZXggZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlclxuJGNsb3NlYnV0dG9uLXotaW5kZXg6IDEwICFkZWZhdWx0O1xuXG4vLy8gQnV0dG9uIHNpemUgdG8gdXNlIGFzIGRlZmF1bHRcbi8vLyBAdHlwZSBTdHJpbmdcbi8vLyBAc2VlICRjbG9zZWJ1dHRvbi1zaXplXG4vLy8gQHNlZSAkY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWxcbi8vLyBAc2VlICRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWxcbiRjbG9zZWJ1dHRvbi1kZWZhdWx0LXNpemU6IG1lZGl1bSAhZGVmYXVsdDtcblxuLy8vIFJpZ2h0IChvciBsZWZ0KSBvZmZzZXQocykgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxuICBzbWFsbDogMC42NnJlbSxcbiAgbWVkaXVtOiAxcmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFRvcCAob3IgYm90dG9tKSBvZmZzZXQocykgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IChcbiAgc21hbGw6IDAuMzNlbSxcbiAgbWVkaXVtOiAwLjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gU2l6ZShzKSBvZiB0aGUgY2xvc2UgYnV0dG9uLiBVc2VkIHRvIGdlbmVyYXRlIHNpemluZyBtb2RpZmllcnMuXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLXNpemU6IChcbiAgc21hbGw6IDEuNWVtLFxuICBtZWRpdW06IDJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGluZS1oZWlnaHQgb2YgdGhlIGNsb3NlIGJ1dHRvbi4gSXQgYWZmZWN0cyB0aGUgc3BhY2luZyBvZiB0aGUgZWxlbWVudC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0OiAxICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIENvbG9yXG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSBjbG9zZSBidXR0b24gd2hlbiBiZWluZyBob3ZlcmVkIG9uLlxuLy8vIEB0eXBlIENvbG9yXG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjayAhZGVmYXVsdDtcblxuXG4vLy8gR2V0IHRoZSBzaXplIGFuZCBwb3NpdGlvbiBmb3IgYSBjbG9zZSBidXR0b24uIElmIHRoZSBpbnB1dCB2YWx1ZSBpcyBhIG51bWJlciwgdGhlIG51bWJlciBpcyByZXR1cm5lZC4gSWYgdGhlIGlucHV0IHZhbHVlIGlzIGEgY29uZmlnIG1hcCBhbmQgdGhlIG1hcCBoYXMgdGhlIGtleSBgJHNpemVgLCB0aGUgdmFsdWUgaXMgcmV0dXJuZWQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICR2YWx1ZSAtIEEgbnVtYmVyIG9yIG1hcCB0aGF0IHJlcHJlc2VudHMgdGhlIHNpemUgb3IgcG9zaXRpb24gdmFsdWUocykgb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gVGhlIHNpemUgb2YgdGhlIGNsb3NlIGJ1dHRvbiB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IFRoZSBnaXZlbiBudW1iZXIgb3IgdGhlIHZhbHVlIGZvdW5kIGluIHRoZSBtYXAuXG5AZnVuY3Rpb24gLXpmLWdldC1zaXplLXZhbCgkdmFsdWUsICRzaXplKSB7XG4gIC8vIENoZWNrIGlmIHRoZSB2YWx1ZSBpcyBhIG51bWJlclxuICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAvLyBJZiBpdCBpcywganVzdCByZXR1cm4gdGhlIG51bWJlclxuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgdGhlIHNpemUgbmFtZSBleGlzdHMgaW4gdGhlIHZhbHVlIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkdmFsdWUsICRzaXplKSB7XG4gICAgLy8gSWYgaXQgZG9lcywgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkdmFsdWUsICRzaXplKTtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgc2l6ZSBhbmQgcG9zaXRpb24gb2YgYSBjbG9zZSBidXR0b24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSBbbWVkaXVtXSAtIFRoZSBzaXplIHRvIHVzZS4gU2V0IHRvIGBzbWFsbGAgdG8gY3JlYXRlIGEgc21hbGwgY2xvc2UgYnV0dG9uLiBUaGUgJ21lZGl1bScgdmFsdWVzIGRlZmluZWQgaW4gYCRjbG9zZWJ1dHRvbi0qYCB2YXJpYWJsZXMgd2lsbCBiZSB1c2VkIGFzIHRoZSBkZWZhdWx0IHNpemUgYW5kIHBvc2l0aW9uIG9mIHRoZSBjbG9zZSBidXR0b24uXG5AbWl4aW4gY2xvc2UtYnV0dG9uLXNpemUoJHNpemUpIHtcbiAgJHg6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDEpO1xuICAkeTogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMik7XG5cbiAgI3skeH06IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsLCAkc2l6ZSk7XG4gICN7JHl9OiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWwsICRzaXplKTtcbiAgZm9udC1zaXplOiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1zaXplLCAkc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0LCAkc2l6ZSk7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjbG9zZSBidXR0b24sIHVzaW5nIHRoZSBzdHlsZXMgaW4gdGhlIHNldHRpbmdzIHZhcmlhYmxlcy5cbkBtaXhpbiBjbG9zZS1idXR0b24ge1xuICAkeDogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMSk7XG4gICR5OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAyKTtcblxuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogJGNsb3NlYnV0dG9uLXotaW5kZXg7XG4gIGNvbG9yOiAkY2xvc2VidXR0b24tY29sb3I7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbiB7XG4gIC5jbG9zZS1idXR0b24ge1xuICAgIC8vIFVzZSBieSBkZWZhdWx0IHRoZSBwbGFjZWhvbGRlciBvZiB0aGUgZGVmYXVsdCBzaXplXG4gICAgQGV4dGVuZCAlemYtY2xvc2UtYnV0dG9uLS0jeyRjbG9zZWJ1dHRvbi1kZWZhdWx0LXNpemV9O1xuXG4gICAgQGluY2x1ZGUgY2xvc2UtYnV0dG9uO1xuXG4gICAgLy8gR2VuZXJhdGUgYSBwbGFjZWhvbGRlciBhbmQgYSBjbGFzcyBmb3IgZWFjaCBzaXplXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRjbG9zZWJ1dHRvbi1zaXplIHtcbiAgICAgIEBhdC1yb290IHtcbiAgICAgICAgJXpmLWNsb3NlLWJ1dHRvbi0tI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGNsb3NlLWJ1dHRvbi1zaXplKCRuYW1lKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgQGV4dGVuZCAlemYtY2xvc2UtYnV0dG9uLS0jeyRuYW1lfTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBsYWJlbFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0ZSB0ZXh0IGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLWZvbnQtc2l6ZTogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBvZiBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBiYXNlIHN0eWxlcyBmb3IgYSBsYWJlbC5cbkBtaXhpbiBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGxhYmVsLXBhZGRpbmc7XG5cbiAgYm9yZGVyLXJhZGl1czogJGxhYmVsLXJhZGl1cztcblxuICBmb250LXNpemU6ICRsYWJlbC1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWxhYmVsIHtcbiAgLmxhYmVsIHtcbiAgICBAaW5jbHVkZSBsYWJlbDtcblxuICAgIGJhY2tncm91bmQ6ICRsYWJlbC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkbGFiZWwtY29sb3I7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRsYWJlbC1wYWxldHRlIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgICAgIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRjb2xvciwgKCRsYWJlbC1jb2xvciwgJGxhYmVsLWNvbG9yLWFsdCkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgcHJvZ3Jlc3MgYmFyIGNvbnRhaW5lci5cbkBtaXhpbiBwcm9ncmVzcy1jb250YWluZXIge1xuICBoZWlnaHQ6ICRwcm9ncmVzcy1oZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206ICRwcm9ncmVzcy1tYXJnaW4tYm90dG9tO1xuICBib3JkZXItcmFkaXVzOiAkcHJvZ3Jlc3MtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFja2dyb3VuZDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5uZXIgbWV0ZXIgb2YgYSBwcm9ncmVzcyBiYXIuXG5AbWl4aW4gcHJvZ3Jlc3MtbWV0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ7XG5cbiAgQGlmIGhhcy12YWx1ZSgkcHJvZ3Jlc3MtcmFkaXVzKSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0ZXh0IGluIHRoZSBwcm9ncmVzcyBtZXRlci5cbkBtaXhpbiBwcm9ncmVzcy1tZXRlci10ZXh0IHtcbiAgQGluY2x1ZGUgYWJzb2x1dGUtY2VudGVyO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgQGlmIGhhcy12YWx1ZSgkcHJvZ3Jlc3MtcmFkaXVzKSB7XG4gICAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcm9ncmVzcy1iYXIge1xuICAvLyBQcm9ncmVzcyBiYXJcbiAgLnByb2dyZXNzIHtcbiAgICBAaW5jbHVkZSBwcm9ncmVzcy1jb250YWluZXI7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIC5wcm9ncmVzcy1tZXRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSW5uZXIgbWV0ZXJcbiAgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBAaW5jbHVkZSBwcm9ncmVzcy1tZXRlcjtcbiAgfVxuXG4gIC8vIElubmVyIG1ldGVyIHRleHRcbiAgLnByb2dyZXNzLW1ldGVyLXRleHQge1xuICAgIEBpbmNsdWRlIHByb2dyZXNzLW1ldGVyLXRleHQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIHRhYmxlXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciB0YWJsZSBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlICAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgc3RyaXBlZCB0YWJsZSByb3dzIGFuZCB0aGUgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc3R5bGUgZm9yIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYmxlLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RhbmRhcmQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0cmlwZWQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCB0YWJsZXMgYXJlIHN0cmlwZWQgYnkgZGVmYXVsdCBhbmQgYW4gLnVuc3RyaXBlZCBjbGFzcyBpcyBjcmVhdGVkLiBJZiBgZmFsc2VgLCBhIC5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIHN0cmlwZWQgcm93cy5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBzaG93aW5nIHRoZSBzdHJpcGUgb24gcm93cyBvZiB0aGUgdGFibGVzLCBleGNsdWRpbmcgdGhlIGhlYWRlciBhbmQgZm9vdGVyLiBJZiBldmVuLCB0aGUgZXZlbiByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIG9kZCwgdGhlIG9kZCByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIGVtcHR5LCBvciBhbnkgb3RoZXIgdmFsdWUsIHRoZSB0YWJsZSByb3dzIHdpbGwgaGF2ZSBubyBzdHJpcGluZy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kdGFibGUtc3RyaXBlOiBldmVuICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVhZGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKiAwLjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBoZWFkZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgZm9vdGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBmb290ZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBoZWFkZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvb3Rlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIGhlYWRlciB3aGVuIHVzaW5nIHN0YWNrZWQgdGFibGVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGF0IHdoaWNoIHN0YWNrZWQgdGFibGUgc3dpdGNoZXMgZnJvbSBtb2JpbGUgdG8gZGVza3RvcCB2aWV3LlxuLy8vIEB0eXBlIEJyZWFrcG9pbnRcbiR0YWJsZS1zdGFjay1icmVha3BvaW50OiBtZWRpdW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUpIHtcbiAgdHIge1xuICAgIC8vIElmIHN0cmlwZSBpcyBzZXQgdG8gZXZlbiwgZGFya2VuIHRoZSBldmVuIHJvd3MuXG4gICAgQGlmICRzdHJpcGUgPT0gZXZlbiB7XG4gICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBvZGQsIGRhcmtlbiB0aGUgb2RkIHJvd3MuXG4gICAgQGVsc2UgaWYgJHN0cmlwZSA9PSBvZGQge1xuICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtdW5zdHJpcGUoKSB7XG4gIHRyIHtcbiAgICBib3JkZXItYm90dG9tOiAkdGFibGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsICRpcy1zdHJpcGVkOiAkdGFibGUtaXMtc3RyaXBlZCkge1xuICB0aGVhZCxcbiAgdGJvZHksXG4gIHRmb290IHtcbiAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cblxuICAvLyBDYXB0aW9uXG4gIGNhcHRpb24ge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICB9XG5cbiAgLy8gVGFibGUgaGVhZFxuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWhlYWQtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWhlYWQtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGZvb3RcbiAgdGZvb3Qge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1mb290LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0YWJsZS1mb290LWZvbnQtY29sb3I7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkIGFuZCBmb290XG4gIHRoZWFkLFxuICB0Zm9vdCB7XG4gICAgLy8gUm93cyB3aXRoaW4gaGVhZCBhbmQgZm9vdFxuICAgIHRyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC8vIENlbGxzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgIHRleHQtYWxpZ246ICN7JGdsb2JhbC1sZWZ0fTtcbiAgICB9XG4gIH1cblxuICAvLyBUYWJsZSByb3dzXG4gIHRib2R5IHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIHN0cmlwZWRcbiAgQGlmICRpcy1zdHJpcGVkID09IHRydWUge1xuICAgIHRib2R5IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZSk7XG4gICAgfVxuXG4gICAgJi51bnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgdGFibGVzIGFyZSBub3Qgc3RyaXBlZFxuICBAZWxzZSBpZiAkaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXVuc3RyaXBlKCk7XG4gICAgfVxuXG4gICAgJi5zdHJpcGVkIHtcbiAgICAgIHRib2R5IHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciB0YWJsZXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RyaXBlIFskdGFibGUtc3RyaXBlXSAtIFVzZXMga2V5d29yZHMgZXZlbiwgb2RkLCBvciBub25lIHRvIGRhcmtlbiByb3dzIG9mIHRoZSB0YWJsZS4gVGhlIGRlZmF1bHQgdmFsdWUgaXMgZXZlbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRuZXN0IFtmYWxzZV0gLSBOZWVkZWQgaWYgeW91IG9ubHkgd2FudCB0byBhcHBseSB0aGlzIHRvIGEgc3BlY2lmaWMgdGFibGUuXG5AbWl4aW4gdGFibGUoXG4gICRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsXG4gICRuZXN0OiBmYWxzZVxuKSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbiAgQGlmICRuZXN0IHtcbiAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAYXQtcm9vdCB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgYWJpbGl0eSB0byBob3Jpem9udGFsbHkgc2Nyb2xsIHRoZSB0YWJsZSB3aGVuIHRoZSBjb250ZW50IG92ZXJmbG93cyBob3Jpem9udGFsbHkuXG5AbWl4aW4gdGFibGUtc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4vLy8gU2xpZ2h0bHkgZGFya2VucyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbkBtaXhpbiB0YWJsZS1ob3ZlciB7XG4gIHRoZWFkIHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhlYWQtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWZvb3Qtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRib2R5IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIG5vbi1zdHJpcGVkIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSB0cnVlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERhcmtlbnMgdGhlIG9kZCBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGVsc2UgaWYoJHRhYmxlLXN0cmlwZSA9PSBvZGQpIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgLy8gRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZSBpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN0YWNrZWQgdGFibGUuIFVzZWZ1bCBmb3Igc21hbGwtc2NyZWVuIGxheW91dHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaGVhZGVyIFskc2hvdy1oZWFkZXItZm9yLXN0YWNrZWRdIC0gU2hvdyB0aGUgZmlyc3QgdGggb2YgaGVhZGVyIHdoZW4gc3RhY2tlZC5cbkBtaXhpbiB0YWJsZS1zdGFjaygkaGVhZGVyOiAkc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQpIHtcbiAgQGlmICRoZWFkZXIge1xuICAgIHRoZWFkIHtcbiAgICAgIHRoIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgdHIsXG4gIHRoLFxuICB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10YWJsZSgkbmVzdDogZmFsc2UpIHtcbiAgdGFibGUge1xuICAgIEBpbmNsdWRlIHRhYmxlKCRuZXN0OiAkbmVzdCk7XG4gIH1cblxuICB0YWJsZS5zdGFjayB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGUtc3RhY2stYnJlYWtwb2ludCBkb3duKSB7XG4gICAgICBAaW5jbHVkZSB0YWJsZS1zdGFjaztcbiAgICB9XG4gIH1cblxuICB0YWJsZS5zY3JvbGwge1xuICAgIEBpbmNsdWRlIHRhYmxlLXNjcm9sbDtcbiAgfVxuXG4gIHRhYmxlLmhvdmVyIHtcbiAgICBAaW5jbHVkZSB0YWJsZS1ob3ZlcjtcbiAgfVxuXG4gIC50YWJsZS1zY3JvbGwge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdtYXRoJztcblxuJGNvbnRyYXN0LXdhcm5pbmdzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gUGF0Y2ggdG8gZml4IGlzc3VlICMxMjA4MFxuJHByaW1hcnktY29sb3I6IG51bGwgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWNvbG9yOiBudWxsICFkZWZhdWx0O1xuJHdhcm5pbmctY29sb3I6IG51bGwgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3I6IG51bGwgIWRlZmF1bHQ7XG4kc3VjY2Vzcy1jb2xvcjogbnVsbCAhZGVmYXVsdDtcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENoZWNrcyB0aGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gY2hlY2sgdGhlIGx1bWluYW5jZSBvZi5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG5AZnVuY3Rpb24gY29sb3ItbHVtaW5hbmNlKCRjb2xvcikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jcmVsYXRpdmVsdW1pbmFuY2VkZWZcbiAgJHJnYmE6IHJlZCgkY29sb3IpLCBncmVlbigkY29sb3IpLCBibHVlKCRjb2xvcik7XG4gICRyZ2JhMjogKCk7XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAzIHtcbiAgICAkcmdiOiBudGgoJHJnYmEsICRpKTtcbiAgICAkcmdiOiBkaXZpZGUoJHJnYiwgMjU1KTtcblxuICAgICRyZ2I6IGlmKCRyZ2IgPCAwLjAzOTI4LCBkaXZpZGUoJHJnYiwgMTIuOTIpLCBwb3coZGl2aWRlKCRyZ2IgKyAwLjA1NSwgMS4wNTUpLCAyLjQpKTtcblxuICAgICRyZ2JhMjogYXBwZW5kKCRyZ2JhMiwgJHJnYik7XG4gIH1cblxuICBAcmV0dXJuIDAuMjEyNiAqIG50aCgkcmdiYTIsIDEpICsgMC43MTUyICogbnRoKCRyZ2JhMiwgMikgKyAwLjA3MjIgKiBudGgoJHJnYmEyLCAzKTtcbn1cblxuLy8vIENoZWNrcyB0aGUgY29udHJhc3QgcmF0aW8gb2YgdHdvIGNvbG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjEgLSBGaXJzdCBjb2xvciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjIgLSBTZWNvbmQgY29sb3IgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBjb250cmFzdCByYXRpbyBvZiB0aGUgY29tcGFyZWQgY29sb3JzLlxuQGZ1bmN0aW9uIGNvbG9yLWNvbnRyYXN0KCRjb2xvcjEsICRjb2xvcjIpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI2NvbnRyYXN0LXJhdGlvZGVmXG4gICRsdW1pbmFuY2UxOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMSkgKyAwLjA1O1xuICAkbHVtaW5hbmNlMjogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjIpICsgMC4wNTtcbiAgJHJhdGlvOiBkaXZpZGUoJGx1bWluYW5jZTEsICRsdW1pbmFuY2UyKTtcblxuICBAaWYgJGx1bWluYW5jZTIgPiAkbHVtaW5hbmNlMSB7XG4gICAgJHJhdGlvOiBkaXZpZGUoMSwgJHJhdGlvKTtcbiAgfVxuXG4gICRyYXRpbzogcm91bmQoJHJhdGlvICogMTApICogMC4xO1xuXG4gIEByZXR1cm4gJHJhdGlvO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRiYXNlYCwgYW5kIHJldHVybnMgdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFzZSAtIENvbG9yIHRvIGNoZWNrIGx1bWluYW5jZS5cbi8vLyBAcGFyYW0ge0xpc3R9ICRjb2xvcnMgWygkd2hpdGUsICRibGFjayldIC0gQ29sb3JzIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0b2xlcmFuY2UgWyRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2VdIC0gQ29udHJhc3QgdG9sZXJhbmNlLlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbkBmdW5jdGlvbiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYXNlLCAkY29sb3JzOiAoJHdoaXRlLCAkYmxhY2spLCAkdG9sZXJhbmNlOiAkZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlKSB7XG4gICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAxKSk7XG4gICRiZXN0OiBudGgoJGNvbG9ycywgMSk7XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCBsZW5ndGgoJGNvbG9ycykge1xuICAgICRjdXJyZW50LWNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgQGlmICgkY3VycmVudC1jb250cmFzdCAtICRjb250cmFzdCA+ICR0b2xlcmFuY2UpIHtcbiAgICAgICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgICAgJGJlc3Q6IG50aCgkY29sb3JzLCAkaSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkY29udHJhc3Qtd2FybmluZ3MgYW5kICRjb250cmFzdCA8IDMpIHtcbiAgICBAd2FybiAnQ29udHJhc3QgcmF0aW8gb2YgI3skYmVzdH0gb24gI3skYmFzZX0gaXMgcHJldHR5IGJhZCwganVzdCAjeyRjb250cmFzdH0nO1xuICB9XG5cbiAgQHJldHVybiAkYmVzdDtcbn1cblxuLy8vIFNjYWxlcyBhIGNvbG9yIHRvIGJlIGRhcmtlciBpZiBpdCdzIGxpZ2h0LCBvciBsaWdodGVyIGlmIGl0J3MgZGFyay4gVXNlIHRoaXMgZnVuY3Rpb24gdG8gdGludCBhIGNvbG9yIGFwcHJvcHJpYXRlIHRvIGl0cyBsaWdodG5lc3MuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBzY2FsZS5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICRzY2FsZSBbNSVdIC0gQW1vdW50IHRvIHNjYWxlIHVwIG9yIGRvd24uXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkdGhyZXNob2xkIFs0MCVdIC0gVGhyZXNob2xkIG9mIGxpZ2h0bmVzcyB0byBjaGVjayBhZ2FpbnN0LlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBBIHNjYWxlZCBjb2xvci5cbkBmdW5jdGlvbiBzbWFydC1zY2FsZSgkY29sb3IsICRzY2FsZTogNSUsICR0aHJlc2hvbGQ6IDQwJSkge1xuICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPiAkdGhyZXNob2xkIHtcbiAgICAkc2NhbGU6IC0kc2NhbGU7XG4gIH1cbiAgQHJldHVybiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRzY2FsZSk7XG59XG5cbi8vLyBHZXQgY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEBwYXJhbSB7a2V5fSBjb2xvciBrZXkgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbkBmdW5jdGlvbiBnZXQtY29sb3IoJGtleSkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSkge1xuICAgIEByZXR1cm4gbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGVycm9yICdnaXZlbiAka2V5IGlzIG5vdCBhdmFpbGFibGUgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSc7XG4gIH1cbn1cblxuLy8vIFRyYW5zZmVycyB0aGUgY29sb3JzIGluIHRoZSBgJGZvdW5kYXRpb24tcGFsZXR0ZWAgbWFwIGludG8gdmFyaWFibGVzLCBzdWNoIGFzIGAkcHJpbWFyeS1jb2xvcmAgYW5kIGAkc2Vjb25kYXJ5LWNvbG9yYC4gQ2FsbCB0aGlzIG1peGluIGJlbG93IHRoZSBHbG9iYWwgc2VjdGlvbiBvZiB5b3VyIHNldHRpbmdzIGZpbGUgdG8gcHJvcGVybHkgbWlncmF0ZSB5b3VyIGNvZGViYXNlLlxuQG1peGluIGFkZC1mb3VuZGF0aW9uLWNvbG9ycygpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgICAkcHJpbWFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkcHJpbWFyeS1jb2xvcjogIzE3NzliYSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpIHtcbiAgICAkc2Vjb25kYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHNlY29uZGFyeS1jb2xvcjogIzc2NzY3NiAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSB7XG4gICAgJHN1Y2Nlc3MtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2VzcykgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHN1Y2Nlc3MtY29sb3I6ICMzYWRiNzYgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykge1xuICAgICR3YXJuaW5nLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICR3YXJuaW5nLWNvbG9yOiAjZmZhZTAwICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSB7XG4gICAgJGFsZXJ0LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkYWxlcnQtY29sb3I6ICNjYzRiMzcgIWdsb2JhbDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJhZGdlXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJhZGdlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJhZGdlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRiYWRnZS1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRlIHRleHQgY29sb3IgZm9yIGJhZGdlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJhZGdlLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYmFkZ2UtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgYmFkZ2VzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJhZGdlLXBhZGRpbmc6IDAuM2VtICFkZWZhdWx0O1xuXG4vLy8gTWluaW11bSB3aWR0aCBvZiBhIGJhZGdlLlxuLy8vIEB0eXBlIE51bWJlclxuJGJhZGdlLW1pbndpZHRoOiAyLjFlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYmFkZ2UtZm9udC1zaXplOiAwLjZyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgdGhlIGJhc2Ugc3R5bGVzIGZvciBhIGJhZGdlLlxuQG1peGluIGJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6ICRiYWRnZS1taW53aWR0aDtcbiAgcGFkZGluZzogJGJhZGdlLXBhZGRpbmc7XG5cbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gIGZvbnQtc2l6ZTogJGJhZGdlLWZvbnQtc2l6ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1iYWRnZSB7XG4gIC5iYWRnZSB7XG4gICAgQGluY2x1ZGUgYmFkZ2U7XG5cbiAgICBiYWNrZ3JvdW5kOiAkYmFkZ2UtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJhZGdlLWNvbG9yO1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYmFkZ2UtcGFsZXR0ZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkY29sb3IsICgkYmFkZ2UtY29sb3IsICRiYWRnZS1jb2xvci1hbHQpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVhZGNydW1ic1xuLy8vL1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBhIGJyZWFkY3J1bWJzIGNvbnRhaW5lci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgQ29sb3JcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBhY3RpdmUgYnJlYWRjcnVtYiBsaW5rLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBPcGFjaXR5IG9mIGRpc2FibGVkIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGJldHdlZW4gYnJlYWRjcnVtYiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgbWFrZXMgYnJlYWRjcnVtYiBsaW5rcyB1cHBlcmNhc2UuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhZGRzIGEgc2VwZXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIElmIGl0IGV4aXN0cyAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaCBpcyB1c2VkIHRvIGJ1aWxkICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhicmVhZGNydW1icy1pdGVtLXNsYXNoKSB7XG4gICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvcjogJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2g7XG59XG5cbi8vLyBVc2VkIGNoYXJhY3RlciBmb3IgdGhlIGJyZWFkY3J1bWIgc2VwYXJhdG9yLlxuLy8vIEB0eXBlIENvbnRlbnRcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtOiAnLycgIWRlZmF1bHQ7XG5cbi8vLyBVc2VkIGNoYXJhY3RlciBmb3IgdGhlIGJyZWFkY3J1bWIgc2VwYXJhdG9yIGluIHJ0bCBtb2RlLlxuLy8vIEB0eXBlIENvbnRlbnRcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bDogJ1xcXFwnICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYnJlYWRjcnVtYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8gSWYgaXQgZXhpc3RzICRicmVhZGNydW1icy1pdGVtLXNsYXNoLWNvbG9yIGlzIHVzZWQgdG8gYnVpbGQgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2gtY29sb3IpIHtcbiAgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaC1jb2xvcjtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGJyZWFkY3J1bWJzIGNvbnRhaW5lciwgYWxvbmcgd2l0aCB0aGUgc3R5bGVzIGZvciB0aGUgYDxsaT5gIGFuZCBgPGE+YCBlbGVtZW50cyBpbnNpZGUgb2YgaXQuXG5AbWl4aW4gYnJlYWRjcnVtYnMtY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbjogJGJyZWFkY3J1bWJzLW1hcmdpbjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAvLyBJdGVtIHdyYXBwZXJcbiAgbGkge1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtbGVmdH07XG5cbiAgICBmb250LXNpemU6ICRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgICBAaWYgJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgQGlmICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvciB7XG4gICAgICAvLyBOZWVkIHRvIGVzY2FwZSB0aGUgYmFja3NsYXNoXG4gICAgICAkc2VwYXJhdG9yOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdsdHInLCAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbSwgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW0tcnRsKTtcblxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBtYXJnaW46IDAgJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luO1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgY29udGVudDogJHNlcGFyYXRvcjtcbiAgICAgICAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW47XG4gICAgfVxuICB9XG5cbiAgLy8gUGFnZSBsaW5rc1xuICBhIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1icmVhZGNydW1icyB7XG4gIC5icmVhZGNydW1icyB7XG4gICAgQGluY2x1ZGUgYnJlYWRjcnVtYnMtY29udGFpbmVyO1xuXG4gICAgLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2FsbG91dFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZhZGUgdmFsdWUgZm9yIGNhbGxvdXQgYmFja2dyb3VuZHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGU6IDg1JSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHN0eWxlIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBMaXN0XG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC4yNSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtbWFyZ2luOiAwIDAgMXJlbSAwICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIENhbGxvdXQgcGFkZGluZ3MuXG4vLy8gQHR5cGUgTWFwXG4kY2FsbG91dC1zaXplczogKFxuICBzbWFsbDogMC41cmVtLFxuICBkZWZhdWx0OiAxcmVtLFxuICBsYXJnZTogM3JlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBjYWxsb3V0cywgaWYgdGhlIGNhbGxvdXQgaGFzIGEgZGFyayBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1mb250LWNvbG9yLWFsdDogJGJvZHktYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHJhZGl1cyBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBBbW91bnQgdG8gdGludCBsaW5rcyB1c2VkIHdpdGhpbiBjb2xvcmVkIHBhbmVscy4gU2V0IHRvIGBmYWxzZWAgdG8gZGlzYWJsZSB0aGlzIGZlYXR1cmUuXG4vLy8gQHR5cGUgTnVtYmVyIHwgQm9vbGVhblxuJGNhbGxvdXQtbGluay10aW50OiAzMCUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgYSBjYWxsb3V0LCBpbmNsdWRpbmcgcGFkZGluZyBhbmQgbWFyZ2luLlxuQG1peGluIGNhbGxvdXQtYmFzZSgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46ICRjYWxsb3V0LW1hcmdpbjtcbiAgcGFkZGluZzogbWFwLWdldCgkY2FsbG91dC1zaXplcywgZGVmYXVsdCk7XG5cbiAgYm9yZGVyOiAkY2FsbG91dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRjYWxsb3V0LXJhZGl1cztcblxuICAvLyBSZXNwZWN0IHRoZSBwYWRkaW5nLCBmb29sLlxuICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHF1aWNrIHN0eWxlcyBmb3IgYSBjYWxsb3V0IHVzaW5nIGEgc2luZ2xlIGNvbG9yIGFzIGEgYmFzZWxpbmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskY2FsbG91dC1iYWNrZ3JvdW5kXSAtIENvbG9yIHRvIHVzZS5cbkBtaXhpbiBjYWxsb3V0LXN0eWxlKCRjb2xvcjogJGNhbGxvdXQtYmFja2dyb3VuZCkge1xuICAkYmFja2dyb3VuZDogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGUpO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRjYWxsb3V0LWZvbnQtY29sb3IsICRjYWxsb3V0LWZvbnQtY29sb3ItYWx0KSk7XG59XG5cbkBtaXhpbiBjYWxsb3V0LXNpemUoJHBhZGRpbmcpIHtcbiAgcGFkZGluZy10b3A6ICRwYWRkaW5nO1xuICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206ICRwYWRkaW5nO1xuICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xufVxuXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYWxsb3V0LlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGNhbGxvdXQtYmFja2dyb3VuZF0gLSBDb2xvciB0byB1c2UuXG5AbWl4aW4gY2FsbG91dCgkY29sb3I6ICRjYWxsb3V0LWJhY2tncm91bmQpIHtcbiAgQGluY2x1ZGUgY2FsbG91dC1iYXNlO1xuICBAaW5jbHVkZSBjYWxsb3V0LXN0eWxlKCRjb2xvcik7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNhbGxvdXQge1xuICAuY2FsbG91dCB7XG4gICAgQGluY2x1ZGUgY2FsbG91dDtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgQGluY2x1ZGUgY2FsbG91dC1zdHlsZSgkY29sb3IpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBlYWNoICRzaXplLCAkcGFkZGluZyBpbiBtYXAtcmVtb3ZlKCRjYWxsb3V0LXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgY2FsbG91dC1zaXplKCRwYWRkaW5nKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93blxuLy8vL1xuXG4vLy8gUGFkZGluZyBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd24td2lkdGg6IDMwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGRyb3Bkb3duIHBhbmVzLiBFYWNoIHNpemUgaXMgYSBDU1MgY2xhc3MgeW91IGNhbiBhcHBseS5cbi8vLyBAdHlwZSBNYXBcbiRkcm9wZG93bi1zaXplczogKFxuICB0aW55OiAxMDBweCxcbiAgc21hbGw6IDIwMHB4LFxuICBsYXJnZTogNDAwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQXBwbGllcyBzdHlsZXMgZm9yIGEgYmFzaWMgZHJvcGRvd24uXG5AbWl4aW4gZHJvcGRvd24tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcblxuICBkaXNwbGF5OiBub25lO1xuXG4gIHdpZHRoOiAkZHJvcGRvd24td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nO1xuXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkZHJvcGRvd24tcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmFja2dyb3VuZDtcblxuICBmb250LXNpemU6ICRkcm9wZG93bi1mb250LXNpemU7XG5cblxuICAvLyBBbGxvdyBhbiBpbnRlcm1pdHRlbnQgc3RhdGUgdG8gZG8gcG9zaXRpb25pbmcgYmVmb3JlIG1ha2luZyB2aXNpYmxlLlxuICAmLmlzLW9wZW5pbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJi5pcy1vcGVuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyb3Bkb3duIHtcbiAgLmRyb3Bkb3duLXBhbmUge1xuICAgIEBpbmNsdWRlIGRyb3Bkb3duLWNvbnRhaW5lcjtcbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkZHJvcGRvd24tc2l6ZXMge1xuICAgIC5kcm9wZG93bi1wYW5lIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICB3aWR0aDogJHNpemU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcGFnaW5hdGlvblxuLy8vL1xuXG4vLy8gRm9udCBzaXplIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBvZiB0aGUgcGFnaW5hdGlvbiBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCkgIWRlZmF1bHQ7XG5cbi8vLyBSaWdodCBtYXJnaW4gdG8gc2VwYXJhdGUgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZzogcmVtLWNhbGMoMSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbXMgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbSBmb3IgdGhlIGN1cnJlbnQgcGFnZS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgcGFnaW5hdGlvbiBpdGVtIGZvciB0aGUgY3VycmVudCBwYWdlLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYSBkaXNhYmxlZCBwYWdpbmF0aW9uIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBlbGxpcHNpcyBpbiBhIHBhZ2luYXRpb24gbWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIElmIGBmYWxzZWAsIGRvbid0IGRpc3BsYXkgcGFnZSBudW1iZXIgbGlua3Mgb24gbW9iaWxlLCBvbmx5IG5leHQvcHJldmlvdXMgbGlua3Ncbi8vLyBhbmQgb3B0aW9uYWxseSBjdXJyZW50IHBhZ2UgbnVtYmVyLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGRpc3BsYXkgdGhlIGN1cnJlbnQgcGFnZSBudW1iZXIgb24gbW9iaWxlIGV2ZW4gaWYgYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtc2AgaXMgc2V0IHRvIGBmYWxzZWAuXG4vLy8gVGhpcyBwYXJhbWV0ZXIgd2lsbCBvbmx5IG92ZXJyaWRlIHRoZSB2aXNpYmlsaXR5IHNldHRpbmcgb2YgdGhlIGN1cnJlbnQgaXRlbSBmb3IgYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2U7YCxcbi8vLyBpdCB3aWxsIG5vdCBhZmZlY3QgdGhlIGN1cnJlbnQgcGFnZSBudW1iZXIgdmlzaWJpbGl0eSB3aGVuIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXNgIGlzIHNldCB0byBgdHJ1ZWAuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFycm93cyBhcmUgYWRkZWQgdG8gdGhlIG5leHQgYW5kIHByZXZpb3VzIGxpbmtzIG9mIHBhZ2luYXRpb24uXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQ29udGVudCBmb3IgdGhlIHByZXZpb3VzIGFycm93IHdoZW4gYCRwYWdpbmF0aW9uLWFycm93c2AgaXMgYHRydWVgXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFnaW5hdGlvbi1hcnJvdy1wcmV2aW91czogJ1xcMDBBQicgIWRlZmF1bHQ7XG5cbi8vLyBDb250ZW50IGZvciB0aGUgbmV4dCBhcnJvdyB3aGVuIGAkcGFnaW5hdGlvbi1hcnJvd3NgIGlzIGB0cnVlYFxuLy8vIEB0eXBlIFN0cmluZ1xuJHBhZ2luYXRpb24tYXJyb3ctbmV4dDogJ1xcMDBCQicgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBwYWdpbmF0aW9uIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGA8dWw+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWNvbnRhaW5lciAoXG4gICRtYXJnaW4tYm90dG9tOiAkcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tLFxuICAkZm9udC1zaXplOiAkcGFnaW5hdGlvbi1mb250LXNpemUsXG4gICRzcGFjaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmcsXG4gICRyYWRpdXM6ICRwYWdpbmF0aW9uLXJhZGl1cyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIG1hcmdpbi1ib3R0b206ICRtYXJnaW4tYm90dG9tO1xuXG4gIC8vIExpc3QgaXRlbVxuICBsaSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuXG4gICAgQGlmICRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICY6bGFzdC1jaGlsZCxcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtIHtcbiAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFBhZ2UgbGlua3NcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBjdXJyZW50IHBhZ2luYXRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byBhbiBgPGE+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWl0ZW0tY3VycmVudCAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRiYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50LFxuICAkY29sb3ItY3VycmVudDogJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50XG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWN1cnJlbnQ7XG4gIGNvbG9yOiAkY29sb3ItY3VycmVudDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgZGlzYWJsZWQgcGFnaW5hdGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIGFuIGA8YT5gLlxuQG1peGluIHBhZ2luYXRpb24taXRlbS1kaXNhYmxlZCAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRjb2xvcjogJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZFxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBjb2xvcjogJGNvbG9yO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gZWxsaXBzaXMgZm9yIHVzZSBpbiBhIHBhZ2luYXRpb24gbGlzdC5cbkBtaXhpbiBwYWdpbmF0aW9uLWVsbGlwc2lzIChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvclxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBjb250ZW50OiAnXFwyMDI2JztcbiAgY29sb3I6ICRjb2xvcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tcGFnaW5hdGlvbiB7XG4gIC5wYWdpbmF0aW9uIHtcbiAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWNvbnRhaW5lcjtcblxuICAgIC5jdXJyZW50IHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24taXRlbS1jdXJyZW50O1xuICAgIH1cblxuICAgIC5kaXNhYmxlZCB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLmVsbGlwc2lzOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWVsbGlwc2lzO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFnaW5hdGlvbi1hcnJvd3Mge1xuICAgIC5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSxcbiAgICAucGFnaW5hdGlvbi1wcmV2aW91cy5kaXNhYmxlZDo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwLjVyZW07XG4gICAgICBjb250ZW50OiAkcGFnaW5hdGlvbi1hcnJvdy1wcmV2aW91cztcbiAgICB9XG5cbiAgICAucGFnaW5hdGlvbi1uZXh0IGE6OmFmdGVyLFxuICAgIC5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICRwYWdpbmF0aW9uLWFycm93LW5leHQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdG9vbHRpcFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBjdXJzb3Igb2YgdGhlIGRlZmluZWQgdGVybS5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaGFzLXRpcC1jdXJzb3I6IGhlbHAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IG9mIHRoZSBkZWZpbmVkIHRlcm0uXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGhhcy10aXAtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBib3R0b20gb2YgdGhlIGRlZmluZWQgdGVybS5cbi8vLyBAdHlwZSBMaXN0XG4kaGFzLXRpcC1ib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSB0b29sdGlwIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIHRvb2x0aXAgZm9udC5cbi8vLyBAdHlwZSBDb2xvclxuJHRvb2x0aXAtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiB0aGUgdG9vbHRpcCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcGFkZGluZzogMC43NXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWF4IHdpZHRoIGZvciB0b29sdGlwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLW1heC13aWR0aDogMTByZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBvZiB0aGUgdG9vbHRpcCB0ZXh0LiBCeSBkZWZhdWx0LCB3ZSByZWNvbW1lbmQgYSBzbWFsbGVyIGZvbnQgc2l6ZSB0aGFuIHRoZSBib2R5IGNvcHkuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBpcCB3aWR0aCBmb3IgdG9vbHRpcHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1waXAtd2lkdGg6IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBpcCBoZWlnaHQgZm9yIHRvb2x0aXBzLiBUaGlzIGlzIGhlbHBmdWwgZm9yIGNhbGN1bGF0aW5nIHRoZSBkaXN0YW5jZSBvZiB0aGUgdG9vbHRpcCBmcm9tIHRoZSB0b29sdGlwIHdvcmQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1waXAtaGVpZ2h0OiAkdG9vbHRpcC1waXAtd2lkdGggKiAwLjg2NiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciB0b29sdGlwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBoYXMtdGlwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgYm9yZGVyLWJvdHRvbTogJGhhcy10aXAtYm9yZGVyLWJvdHRvbTtcbiAgZm9udC13ZWlnaHQ6ICRoYXMtdGlwLWZvbnQtd2VpZ2h0O1xuICBjdXJzb3I6ICRoYXMtdGlwLWN1cnNvcjtcbn1cblxuQG1peGluIHRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygxMDAlICsgI3skdG9vbHRpcC1waXAtaGVpZ2h0fSk7XG4gIHotaW5kZXg6IDEyMDA7XG5cbiAgbWF4LXdpZHRoOiAkdG9vbHRpcC1tYXgtd2lkdGg7XG4gIHBhZGRpbmc6ICR0b29sdGlwLXBhZGRpbmc7XG5cbiAgYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yO1xuICBmb250LXNpemU6ICR0b29sdGlwLWZvbnQtc2l6ZTtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgJi5ib3R0b20ge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCB1cCk7XG4gICAgICBib3R0b206IDEwMCU7XG4gICAgfVxuXG4gICAgJi5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi50b3Age1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCBkb3duKTtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICB9XG5cbiAgICAmLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB9XG4gIH1cblxuICAmLmxlZnQge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCByaWdodCk7XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgIH1cblxuICAgICYuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi5yaWdodCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9vbHRpcC1waXAtd2lkdGgsICR0b29sdGlwLWJhY2tncm91bmQtY29sb3IsIGxlZnQpO1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgICYuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi5hbGlnbi10b3A6OmJlZm9yZSB7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIHRvcDogMTAlO1xuICB9XG5cbiAgJi5hbGlnbi1ib3R0b206OmJlZm9yZSB7XG4gICAgYm90dG9tOiAxMCU7XG4gICAgdG9wOiBhdXRvO1xuICB9XG5cbiAgJi5hbGlnbi1sZWZ0OjpiZWZvcmUge1xuICAgIGxlZnQ6IDEwJTtcbiAgICByaWdodDogYXV0bztcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQ6OmJlZm9yZSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMTAlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRvb2x0aXAge1xuICAuaGFzLXRpcCB7XG4gICAgQGluY2x1ZGUgaGFzLXRpcDtcbiAgfVxuXG4gIC50b29sdGlwIHtcbiAgICBAaW5jbHVkZSB0b29sdGlwO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWNjb3JkaW9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYW4gYWNjb3JkaW9uIGdyb3VwLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYWRkcyBwbHVzIGFuZCBtaW51cyBpY29ucyB0byB0aGUgc2lkZSBvZiBlYWNoIGFjY29yZGlvbiB0aXRsZS5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIENvbnRlbnQgZm9yIHRoZSBwbHVzIGljb24gd2hlbiBgJGFjY29yZGlvbi1wbHVzbWludXNgIGlzIGB0cnVlYFxuLy8vIEB0eXBlIFN0cmluZ1xuJGFjY29yZGlvbi1wbHVzLWNvbnRlbnQ6ICdcXDAwMkInICFkZWZhdWx0O1xuXG4vLy8gQ29udGVudCBmb3IgdGhlIG1pbnVzIGljb24gd2hlbiBgJGFjY29yZGlvbi1wbHVzbWludXNgIGlzIGB0cnVlYFxuLy8vIEB0eXBlIFN0cmluZ1xuJGFjY29yZGlvbi1taW51cy1jb250ZW50OiAnXFwyMDEzJyAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBhY2NvcmRpb24gdGl0bGVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhbiBhY2NvcmRpb24gaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBhY2NvcmRpb24gY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIHRoZSBzYW1lIGVsZW1lbnQgdGhhdCBnZXRzIGBkYXRhLWFjY29yZGlvbmAuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRhaW5lciAoXG4gICRiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLWJhY2tncm91bmRcbikge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICZbZGlzYWJsZWRdIHtcbiAgICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGFjY29yZGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIHRoZSBsaXN0IGl0ZW0gd2l0aGluIGFuIGFjY29yZGlvbiB1bC5cbkBtaXhpbiBhY2NvcmRpb24taXRlbSB7XG4gICY6Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzIDAgMDtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCA+IDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXM7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgdGl0bGUgb2YgYW4gYWNjb3JkaW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gdGhlIGxpbmsgd2l0aGluIGFuIGFjY29yZGlvbiBpdGVtLlxuQG1peGluIGFjY29yZGlvbi10aXRsZSAoXG4gICRwYWRkaW5nOiAkYWNjb3JkaW9uLWl0ZW0tcGFkZGluZyxcbiAgJGZvbnQtc2l6ZTogJGFjY29yZGlvbi10aXRsZS1mb250LXNpemUsXG4gICRjb2xvcjogJGFjY29yZGlvbi1pdGVtLWNvbG9yLFxuICAkYm9yZGVyOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXJcbikge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjb2xvcjtcblxuICA6bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSkgPiAmIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICB9XG5cbiAgQGlmICRhY2NvcmRpb24tcGx1c21pbnVzIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICAgICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICRhY2NvcmRpb24tcGx1cy1jb250ZW50O1xuICAgIH1cblxuICAgIC5pcy1hY3RpdmUgPiAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGFjY29yZGlvbi1taW51cy1jb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFjY29yZGlvbiBjb250ZW50LiBBcHBseSB0aGlzIHRvIHRoZSBjb250ZW50IHBhbmUgYmVsb3cgYW4gYWNjb3JkaW9uIGl0ZW0ncyB0aXRsZS5cbkBtaXhpbiBhY2NvcmRpb24tY29udGVudCAoXG4gICRwYWRkaW5nOiAkYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZyxcbiAgJGJvcmRlcjogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcixcbiAgJGJhY2tncm91bmQ6ICRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICRhY2NvcmRpb24tY29udGVudC1jb2xvclxuKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgY29sb3I6ICRjb2xvcjtcblxuICA6bGFzdC1jaGlsZCA+ICY6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlcjtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1hY2NvcmRpb24ge1xuICAuYWNjb3JkaW9uIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGFpbmVyO1xuICB9XG5cbiAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24taXRlbTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tdGl0bGUge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi10aXRsZTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBtZWRpYS1vYmplY3Rcbi8vLy9cblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgYSBtZWRpYSBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IGFuZCByaWdodCBwYWRkaW5nIG9uIHNlY3Rpb25zIHdpdGhpbiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFdpZHRoIG9mIGltYWdlcyB3aXRoaW4gYSBtZWRpYSBvYmplY3QsIHdoZW4gdGhlIG9iamVjdCBpcyBzdGFja2VkIHZlcnRpY2FsbHkuIFNldCB0byAnYXV0bycgdG8gdXNlIHRoZSBpbWFnZSdzIG5hdHVyYWwgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG1lZGlhIG9iamVjdCBjb250YWluZXIuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGlmKCRnbG9iYWwtZmxleGJveCwgZmxleCwgYmxvY2spO1xuICBtYXJnaW4tYm90dG9tOiAkbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxuXG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgJi5zdGFjay1mb3ItI3skLXpmLXplcm8tYnJlYWtwb2ludH0ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBzZWN0aW9ucyB3aXRoaW4gYSBtZWRpYSBvYmplY3QuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIFskbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nXSAtIFBhZGRpbmcgYmV0d2VlbiBzZWN0aW9ucy5cbkBtaXhpbiBtZWRpYS1vYmplY3Qtc2VjdGlvbigkcGFkZGluZzogJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZykge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAkcGFkZGluZztcbiAgfVxuXG4gICY6bGFzdC1jaGlsZDpub3QoOm50aC1jaGlsZCgyKSkge1xuICAgIHBhZGRpbmctI3skZ2xvYmFsLWxlZnR9OiAkcGFkZGluZztcbiAgfVxuXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuc3RhY2stZm9yLSN7JC16Zi16ZXJvLWJyZWFrcG9pbnR9ICYge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtb2JqZWN0LXN0YWNrO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICYubWFpbi1zZWN0aW9uIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAmLm1pZGRsZSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgICYuYm90dG9tIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyB0byBzdGFjayBzZWN0aW9ucyBvZiBhIG1lZGlhIG9iamVjdC4gQXBwbHkgdGhpcyB0byB0aGUgc2VjdGlvbiBlbGVtZW50cywgbm90IHRoZSBjb250YWluZXIuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LXN0YWNrIHtcbiAgcGFkZGluZzogMDtcbiAgcGFkZGluZy1ib3R0b206ICRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc7XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgaW1nIHtcbiAgICB3aWR0aDogJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0IHtcbiAgLm1lZGlhLW9iamVjdCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtb2JqZWN0LWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gICAgQGluY2x1ZGUgbWVkaWEtb2JqZWN0LXNlY3Rpb247XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCByZXNwb25zaXZlLWVtYmVkXG4vLy8vXG5cbi8vLyBNYXJnaW4gYmVsb3cgYSByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEFzcGVjdCByYXRpb3MgdXNlZCB0byBkZXRlcm1pbmUgcGFkZGluZy1ib3R0b20gb2YgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXJzLlxuLy8vIEB0eXBlIE1hcFxuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zOiAoXG4gIGRlZmF1bHQ6IDQgYnkgMyxcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIGEgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtTdHJpbmd8TGlzdH0gJHJhdGlvIFtkZWZhdWx0XSAtIFJhdGlvIG9mIHRoZSBjb250YWluZXIuIENhbiBiZSBhIGtleSBmcm9tIHRoZSBgJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zYCBtYXAgb3IgYSBsaXN0IGZvcm1hdHRlZCBhcyBgeCBieSB5YC5cbkBtaXhpbiByZXNwb25zaXZlLWVtYmVkKCRyYXRpbzogZGVmYXVsdCkge1xuICBAaWYgdHlwZS1vZigkcmF0aW8pID09ICdzdHJpbmcnIHtcbiAgICAkcmF0aW86IG1hcC1nZXQoJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zLCAkcmF0aW8pO1xuICB9XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tO1xuICBwYWRkaW5nLWJvdHRvbTogcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIGlmcmFtZSxcbiAgb2JqZWN0LFxuICBlbWJlZCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkIHtcbiAgLnJlc3BvbnNpdmUtZW1iZWQsXG4gIC5mbGV4LXZpZGVvIHtcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWVtYmVkKCRyYXRpbzogZGVmYXVsdCk7XG5cbiAgICAkcmF0aW9zOiBtYXAtcmVtb3ZlKCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvcywgZGVmYXVsdCk7XG5cbiAgICBAZWFjaCAkbmFtZSwgJHJhdGlvIGluICRyYXRpb3Mge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGFic1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gb2YgdGhlIHRhYiBiYXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFiLW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhIHRhYiBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBvZiB0YWIgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBBY3RpdmUgYmFja2dyb3VuZCBjb2xvciBvZiBhIHRhYiBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItYmFja2dyb3VuZC1hY3RpdmU6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQWN0aXZlIGZvbnQgY29sb3Igb2YgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItYWN0aXZlLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiB0YWIgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFiLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGl0ZW1zIGluIGEgTWVudS5cbiR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgYSB0YWIgaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItaXRlbS1wYWRkaW5nOiAxLjI1cmVtIDEuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHRhYiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBgPHVsPmAuXG5AbWl4aW4gdGFicy1jb250YWluZXIgKFxuICAkbWFyZ2luOiAkdGFiLW1hcmdpbixcbiAgJGJhY2tncm91bmQ6ICR0YWItYmFja2dyb3VuZCxcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW46ICRtYXJnaW47XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi8vLyBBdWdtZW50cyBhIHRhYiBjb250YWluZXIgdG8gaGF2ZSB2ZXJ0aWNhbCB0YWJzLiBVc2UgdGhpcyBpbiBjb25qdW5jdGlvbiB3aXRoIGB0YWJzLWNvbnRhaW5lcigpYC5cbkBtaXhpbiB0YWJzLWNvbnRhaW5lci12ZXJ0aWNhbCB7XG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGxpbmtzIHdpdGhpbiBhIHRhYiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gdGhlIGA8bGk+YCBlbGVtZW50cyBpbnNpZGUgYSB0YWIgY29udGFpbmVyLlxuQG1peGluIHRhYnMtdGl0bGUgKFxuICAkcGFkZGluZzogJHRhYi1pdGVtLXBhZGRpbmcsXG4gICRmb250LXNpemU6ICR0YWItaXRlbS1mb250LXNpemUsXG4gICRjb2xvcjogJHRhYi1jb2xvcixcbiAgJGNvbG9yLWFjdGl2ZTogJHRhYi1hY3RpdmUtY29sb3IsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGJhY2tncm91bmQtYWN0aXZlOiAkdGFiLWJhY2tncm91bmQtYWN0aXZlXG4pIHtcbiAgZmxvYXQ6ICN7JGdsb2JhbC1sZWZ0fTtcblxuICA+IGEge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgICBjb2xvcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICZbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICAgIGNvbG9yOiAkY29sb3ItYWN0aXZlO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSB3cmFwcGVyIHRoYXQgc3Vycm91bmRzIGEgdGFiIGdyb3VwJ3MgY29udGVudCBwYW5lcy5cbkBtaXhpbiB0YWJzLWNvbnRlbnQgKFxuICAkYmFja2dyb3VuZDogJHRhYi1jb250ZW50LWJhY2tncm91bmQsXG4gICRjb2xvcjogJHRhYi1jb250ZW50LWNvbG9yLFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiAkY29sb3I7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG59XG5cbi8vLyBBdWdtZW50cyBhIHRhYiBjb250ZW50IGNvbnRhaW5lciB0byBoYXZlIGEgdmVydGljYWwgc3R5bGUsIGJ5IHNoaWZ0aW5nIHRoZSBib3JkZXIgYXJvdW5kLiBVc2UgdGhpcyBpbiBjb25qdW5jdGlvbiB3aXRoIGB0YWJzLWNvbnRlbnQoKWAuXG5AbWl4aW4gdGFicy1jb250ZW50LXZlcnRpY2FsIChcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gaW5kaXZpZHVhbCB0YWIgY29udGVudCBwYW5lbCB3aXRoaW4gdGhlIHRhYiBjb250ZW50IGNvbnRhaW5lci5cbkBtaXhpbiB0YWJzLXBhbmVsIChcbiAgJHBhZGRpbmc6ICR0YWItY29udGVudC1wYWRkaW5nXG4pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYnMge1xuICAudGFicyB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250YWluZXI7XG4gIH1cblxuICAvLyBWZXJ0aWNhbFxuICAudGFicy52ZXJ0aWNhbCB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250YWluZXItdmVydGljYWw7XG4gIH1cblxuICAvLyBTaW1wbGVcbiAgLnRhYnMuc2ltcGxlIHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUHJpbWFyeSBjb2xvclxuICAudGFicy5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcblxuICAgID4gbGkgPiBhIHtcbiAgICAgIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRwcmltYXJ5LWNvbG9yKTtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkcHJpbWFyeS1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRhYnMtdGl0bGUge1xuICAgIEBpbmNsdWRlIHRhYnMtdGl0bGU7XG4gIH1cblxuICAudGFicy1jb250ZW50IHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRlbnQ7XG4gIH1cblxuICAudGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRlbnQtdmVydGljYWw7XG4gIH1cblxuICAudGFicy1wYW5lbCB7XG4gICAgQGluY2x1ZGUgdGFicy1wYW5lbDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRodW1ibmFpbFxuLy8vL1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIEJvcmRlclxuJHRodW1ibmFpbC1ib3JkZXI6IDRweCBzb2xpZCAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgdW5kZXIgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBTaGFkb3dcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMikgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IHVuZGVyIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgU2hhZG93XG4kdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjogMCAwIDZweCAxcHggcmdiYSgkcHJpbWFyeS1jb2xvciwgMC41KSAhZGVmYXVsdDtcblxuLy8vIFRyYW5zaXRpb24gcHJvcHJ0aWVzIGZvciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiR0aHVtYm5haWwtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIE51bWJlclxuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQWRkcyB0aHVtYm5haWwgc3R5bGVzIHRvIGFuIGVsZW1lbnQuXG5AbWl4aW4gdGh1bWJuYWlsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTtcblxuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkdGh1bWJuYWlsLXJhZGl1cztcbiAgYm94LXNoYWRvdzogJHRodW1ibmFpbC1zaGFkb3c7XG5cbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbkBtaXhpbiB0aHVtYm5haWwtbGluayB7XG4gIHRyYW5zaXRpb246ICR0aHVtYm5haWwtdHJhbnNpdGlvbjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAkdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjtcbiAgfVxuXG4gIGltYWdlIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRodW1ibmFpbCB7XG4gIC50aHVtYm5haWwge1xuICAgIEBpbmNsdWRlIHRodW1ibmFpbDtcbiAgfVxuXG4gIGEudGh1bWJuYWlsIHtcbiAgICBAaW5jbHVkZSB0aHVtYm5haWwtbGluaztcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG1lbnVcbi8vLy9cblxuLy8vIE1hcmdpbiBvZiBhIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0LWhhbmQgbWFyZ2luIG9mIGEgbmVzdGVkIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGl0ZW1zIGluIGEgcGlsbCBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgc2ltcGxlIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRpdmUgdGV4dCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLi5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1jb2xvci1hbHQtYWN0aXZlOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhbiBpY29uIGFuZCB0ZXh0IGluIGEgbWVudSBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBzdGF0ZS4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYGFjdGl2ZWAgd2l0aCBgaXMtYWN0aXZlYC5cbi8vLyBCdXQgcGxlYXNlIG5vdGUgdGhhdCBgYWN0aXZlYCB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtc3RhdGUtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciBtZW51IGNlbnRlcmVkLiBJZiB0cnVlLCB0aGlzIGR1cGxpY2F0ZSBgLm1lbnUtY2VudGVyZWQgPiAubWVudWAgd2l0aCBgLm1lbnUuYWxpZ24tY2VudGVyYC5cbi8vLyBCdXQgcGxlYXNlIG5vdGUgdGhhdCBgbWVudS1jZW50ZXJlZGAgd2lsbCBiZSByZW1vdmVkIGluIHVwY29taW5nIHZlcnNpb25zLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgdXNpbmcgYGljb24tKmAgY2xhc3NlcyB3aXRob3V0IGAuaWNvbnNgIGNsYXNzZXNcbi8vLyBCdXQgcGxlYXNlIG5vdGUgdGhhdCB0aGlzIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgd2lsbCBiZSByZW1vdmVkIGluIHVwY29taW5nIHZlcnNpb25zLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRtZW51LWljb25zLWJhY2stY29tcGF0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyB0aGUgYmFzZSBzdHlsZXMgZm9yIGEgTWVudS5cbkBtaXhpbiBtZW51LWJhc2Uge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuXG4gIGxpIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIH1cblxuICBhLFxuICAuYnV0dG9uIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJG1lbnUtaXRlbXMtcGFkZGluZztcbiAgfVxuXG4gIC8vIFJlc2V0IHN0eWxlcyBvZiBpbm5lciBlbGVtZW50c1xuICBpbnB1dCxcbiAgc2VsZWN0LFxuICBhLFxuICBidXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICBpbnB1dCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi8vLyBFeHBhbmRzIHRoZSBpdGVtcyBvZiBhIE1lbnUsIHNvIGVhY2ggaXRlbSBpcyB0aGUgc2FtZSB3aWR0aC5cbkBtaXhpbiBtZW51LWV4cGFuZCB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgID4gbGkge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBbGlnbiBtZW51IGl0ZW1zLlxuQG1peGluIG1lbnUtYWxpZ24oJGFsaWdubWVudCkge1xuICBAaWYgJGFsaWdubWVudCA9PSBsZWZ0IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkYWxpZ25tZW50ID09IHJpZ2h0IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYudmVydGljYWwgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuXG4gICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtbGVmdDtcbiAgICAgIH1cblxuICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRhbGlnbm1lbnQgPT0gY2VudGVyIHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgZGlyZWN0aW9uIG9mIGEgTWVudS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgW2hvcml6b250YWxdIC0gRGlyZWN0aW9uIG9mIHRoZSBNZW51LiBDYW4gYmUgYGhvcml6b250YWxgIG9yIGB2ZXJ0aWNhbGAuXG5AbWl4aW4gbWVudS1kaXJlY3Rpb24oJGRpcjogaG9yaXpvbnRhbCkge1xuICBAaWYgJGRpciA9PSBob3Jpem9udGFsIHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZGlyID09IHZlcnRpY2FsIHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdUaGUgZGlyZWN0aW9uIHVzZWQgZm9yIG1lbnUtZGlyZWN0aW9uKCkgbXVzdCBiZSBob3Jpem9udGFsIG9yIHZlcnRpY2FsLic7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBzaW1wbGUgTWVudSwgd2hpY2ggaGFzIG5vIHBhZGRpbmcgb3IgaG92ZXIgc3RhdGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIFskZ2xvYmFsLWxlZnRdIC0gRGlyZWN0aW9uIG9mIHRoZSBtZW51LiBUaGlzIGVmZmVjdHMgdGhlIHNpZGUgb2YgdGhlIGA8bGk+YCB0aGF0IHJlY2VpdmVzIHRoZSBtYXJnaW4uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXJnaW4gWyRtZW51LXNpbXBsZS1tYXJnaW5dIC0gVGhlIG1hcmdpbiB0byBhcHBseSB0byBlYWNoIGA8bGk+YC5cbkBtaXhpbiBtZW51LXNpbXBsZSgkZGlyOiAkZ2xvYmFsLWxlZnQsICRtYXJnaW46ICRtZW51LXNpbXBsZS1tYXJnaW4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIGxpICsgbGkge1xuICAgIG1hcmdpbi0jeyRkaXJ9OiAkbWFyZ2luO1xuICB9XG5cbiAgYSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbmVzdGVkIE1lbnUsIGJ5IGFkZGluZyBgbWFyZ2luLWxlZnRgIHRvIHRoZSBtZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRtYXJnaW4gWyRtZW51LW5lc3RlZC1tYXJnaW5dIC0gTGVuZ3RoIG9mIHRoZSBtYXJnaW4uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkbmVzdGVkLWFsaWdubWVudCBbbGVmdF0gLSBBbGlnbm1lbnQgb2YgdGhlIG5lc3RlZCBjbGFzc1xuQG1peGluIG1lbnUtbmVzdGVkKFxuICAkbWFyZ2luOiAkbWVudS1uZXN0ZWQtbWFyZ2luLFxuICAkbmVzdGVkLWFsaWdubWVudDogbGVmdFxuKSB7XG4gIEBpZiAkbmVzdGVkLWFsaWdubWVudCA9PSByaWdodCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRtYXJnaW47XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgfVxuICBAZWxzZSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJG1hcmdpbjtcbiAgfVxuXG59XG5cbi8vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgaWNvbnMgaW4gbWVudXMuXG5AbWl4aW4gbWVudS1pY29ucygpIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgaW1nLFxuICAgIGksXG4gICAgc3ZnIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICsgc3BhbiB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBbGlnbiB0b3AvYm90dG9tIGljb25zIHdpdGhpbiBhIG1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkYWxpZ25tZW50IFtjZW50ZXJdIC0gQWxpZ25tZW50IG9mIHRoZSBpY29uXG5AbWl4aW4gbWVudS1pY29uLWFsaWdubWVudCgkYWxpZ25tZW50OiBjZW50ZXIpIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgJi5pY29uLXRvcCxcbiAgICAmLmljb24tYm90dG9tIHtcbiAgICAgIGxpIGEge1xuICAgICAgICBpbWcsXG4gICAgICAgIGksXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgQGlmICRhbGlnbm1lbnQgPT0gbGVmdCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBlbHNlIGlmICRhbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBwb3NpdGlvbiBjbGFzc2VzIGZvciBpY29ucyB3aXRoaW4gYSBtZW51LlxuQG1peGluIG1lbnUtaWNvbi1wb3NpdGlvbigkcG9zaXRpb246IGxlZnQsICRzcGFjaW5nOiAkbWVudS1pY29uLXNwYWNpbmcpIHtcbiAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG5cbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRzcGFjaW5nO1xuXG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHRvcCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG8gJHNwYWNpbmc7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBib3R0b20ge1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogJHNwYWNpbmcgYXV0byAwO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWVudS10ZXh0IHtcbiAgcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG5cbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuQG1peGluIG1lbnUtc3RhdGUtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZSwgKCRtZW51LWl0ZW0tY29sb3ItYWN0aXZlLCAkbWVudS1pdGVtLWNvbG9yLWFsdC1hY3RpdmUpKTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVudSB7XG4gIC5tZW51IHtcbiAgICBAaW5jbHVkZSBtZW51LWJhc2U7XG5cbiAgICAvLyBEZWZhdWx0IG9yaWVudGF0aW9uOiBob3Jpem9udGFsXG4gICAgJiwgJi5ob3Jpem9udGFsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgIH1cblxuICAgIC8vIFZlcnRpY2FsIG9yaWVudGF0aW9uIG1vZGlmaWVyXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tYWxpZ25tZW50KGxlZnQpO1xuICAgIH1cblxuICAgIC8vIEV2ZW4td2lkdGggbW9kaWZpZXIgZm9yIGhvcml6b250YWwgb3JpZW50YXRpb25cbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29uLWFsaWdubWVudChsZWZ0KTtcbiAgICB9XG5cbiAgICAvLyBTaW1wbGVcbiAgICAmLnNpbXBsZSB7XG4gICAgICBAaW5jbHVkZSBtZW51LXNpbXBsZTtcbiAgICB9XG5cbiAgICAvLyBCcmVha3BvaW50IHNwZWNpZmljIHZlcnNpb25zXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgkc21hbGw6IGZhbHNlKSB7XG4gICAgICAmLiN7JC16Zi1zaXplfS1ob3Jpem9udGFsIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LXZlcnRpY2FsIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgICAgfVxuXG4gICAgICAmLiN7JC16Zi1zaXplfS1leHBhbmRlZCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgICAgfVxuXG4gICAgICAmLiN7JC16Zi1zaXplfS1zaW1wbGUge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZXN0aW5nXG4gICAgJi5uZXN0ZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQ7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBCYXNlIFN0eWxlc1xuICAgICYuaWNvbnMge1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29ucztcbiAgICB9XG5cbiAgICAvLyBCYWNrd2FyZCBDb21wYXRpYmlsaXR5IGZvciBhY3RpdmUgc3RhdGVcbiAgICBAaWYgJG1lbnUtaWNvbnMtYmFjay1jb21wYXQge1xuICAgICAgJi5pY29uLXRvcCxcbiAgICAgICYuaWNvbi1yaWdodCxcbiAgICAgICYuaWNvbi1ib3R0b20sXG4gICAgICAmLmljb24tbGVmdCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbnM7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTWVudSBpY29uIHBvc2l0aW9uXG4gICAgLy8gSW5jbHVkZXMgc3BlY2lmaWNpdHkgdG8gbmVzdGVkIGljb25zIHdpdGggYSBkaWZmZXJlbnQgcG9zaXRpb25cbiAgICAmLFxuICAgICYubmVzdGVkIHtcbiAgICAgIC8vIEljb24gTGVmdFxuICAgICAgJi5pY29uLWxlZnQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24obGVmdCk7XG4gICAgICB9XG5cbiAgICAgIC8vIEljb24gUmlnaHRcbiAgICAgICYuaWNvbi1yaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihyaWdodCk7XG4gICAgICB9XG5cbiAgICAgIC8vIEljb24gVG9wXG4gICAgICAmLmljb24tdG9wIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKHRvcCk7XG4gICAgICB9XG5cbiAgICAgIC8vIEljb24gQm90dG9tXG4gICAgICAmLmljb24tYm90dG9tIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKGJvdHRvbSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlXG4gICAgLmlzLWFjdGl2ZSA+IGEge1xuICAgICAgQGluY2x1ZGUgbWVudS1zdGF0ZS1hY3RpdmU7XG4gICAgfVxuXG4gICAgLy8gQmFja3dhcmQgQ29tcGF0aWJpbGl0eSBmb3IgYWN0aXZlIHN0YXRlXG4gICAgQGlmICRtZW51LXN0YXRlLWJhY2stY29tcGF0IHtcbiAgICAgIC5hY3RpdmUgPiBhIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1zdGF0ZS1hY3RpdmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gbGVmdFxuICAgICYuYWxpZ24tI3skZ2xvYmFsLWxlZnR9IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24obGVmdCk7XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gcmlnaHRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihyaWdodCk7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tYWxpZ25tZW50KHJpZ2h0KTtcblxuICAgICAgLm5lc3RlZCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRuZXN0ZWQtYWxpZ25tZW50OiByaWdodCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gY2VudGVyXG4gICAgJi5hbGlnbi1jZW50ZXIge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihjZW50ZXIpO1xuICAgIH1cblxuICAgIC5tZW51LXRleHQge1xuICAgICAgQGluY2x1ZGUgbWVudS10ZXh0O1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWVudS1jZW50ZXJlZC1iYWNrLWNvbXBhdCB7XG4gICAgLm1lbnUtY2VudGVyZWQge1xuICAgICAgPiAubWVudSB7XG4gICAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihjZW50ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFByZXZlbnQgRk9VQyB3aGVuIHVzaW5nIHRoZSBSZXNwb25zaXZlIE1lbnUgcGx1Z2luXG4gIC5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLy8vXG4vLy8gQGdyb3VwIGFjY29yZGlvbi1tZW51XG4vLy8vXG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IHBhZGRpbmcuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgbmVzdGVkIG1hcmdpblxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IHN1Ym1lbnUgcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGFjY29yZGlvbm1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFNldHMgaWYgYWNjb3JkaW9uIG1lbnVzIGhhdmUgdGhlIGRlZmF1bHQgYXJyb3cgc3R5bGVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgYXJyb3cgY29sb3IgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZDogbnVsbCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgaXRlbSBib3JkZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb25tZW51LWJvcmRlcjogbnVsbCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgaXRlbSBwYWRkaW5nLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgTGlzdFxuJGFjY29yZGlvbi1zdWJtZW51LXRvZ2dsZS1ib3JkZXI6ICRhY2NvcmRpb25tZW51LWJvcmRlciAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgc3VibWVudSB0b2dnbGUgYmFja2dyb3VuZCB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoOiA0MHB4ICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBzdWJtZW51IHRvZ2dsZSBiYWNrZ3JvdW5kIGhlaWdodC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWhlaWdodDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGFycm93IHNpemUgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBMZW5ndGhcbiRhY2NvcmRpb25tZW51LWFycm93LXNpemU6IDZweCAhZGVmYXVsdDtcblxuQG1peGluIHpmLWFjY29yZGlvbi1tZW51LWxlZnQtcmlnaHQtYXJyb3dzIHtcbiAgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudDpub3QoLmhhcy1zdWJtZW51LXRvZ2dsZSkgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZSwgJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBtYXJnaW4tdG9wOiAtMSAqICgkYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplICogMC41KTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgfVxuICB9XG5cbiAgJi5hbGlnbi1sZWZ0IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxcmVtO1xuICB9XG59XG5AbWl4aW4gZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudSB7XG5cbiAgLmFjY29yZGlvbi1tZW51IHtcbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtYm9yZGVyIHtcbiAgICAgIGJvcmRlci1ib3R0b206ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBAaWYgJGFjY29yZGlvbm1lbnUtYm9yZGVyIHtcbiAgICAgICAgYm9yZGVyLXRvcDogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgICAgICBib3JkZXItcmlnaHQ6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiAgICAgICAgYm9yZGVyLWxlZnQ6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiAgICAgIH1cbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgQGlmICRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICAgIHBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLmlzLWFjY29yZGlvbi1zdWJtZW51IGEge1xuICAgICAgcGFkZGluZzogJGFjY29yZGlvbm1lbnUtc3VibWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbik7XG4gICAgfVxuXG4gICAgJi5hbGlnbi0jeyRnbG9iYWwtcmlnaHR9IHtcbiAgICAgIC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICAgICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luLCByaWdodCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRhY2NvcmRpb25tZW51LWFycm93cyB7XG4gICAgICBAaW5jbHVkZSB6Zi1hY2NvcmRpb24tbWVudS1sZWZ0LXJpZ2h0LWFycm93cztcblxuICAgICAgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudFthcmlhLWV4cGFuZGVkPSd0cnVlJ10gPiBhOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlzLWFjY29yZGlvbi1zdWJtZW51IGxpIHtcbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtYm9yZGVyIHtcbiAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5oYXMtc3VibWVudS10b2dnbGUgPiBhIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg7XG4gIH1cblxuICAvLyBTdWJtZW51IHRvZ2dsZVxuICAuc3VibWVudS10b2dnbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLXJpZ2h0fTogMDtcblxuICAgIHdpZHRoOiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDtcbiAgICBoZWlnaHQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWhlaWdodDtcblxuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRhY2NvcmRpb24tc3VibWVudS10b2dnbGUtYm9yZGVyO1xuXG4gICAgQGlmICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQge1xuICAgICAgYmFja2dyb3VuZDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICAvLyBBZGQgdGhlIGFycm93IHRvIHRoZSB0b2dnbGVcbiAgICAmOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZSwgJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuXG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLy8gUm90YXRlIHRoZSBhcnJvdyB3aGVuIG1lbnUgaXMgb3BlblxuICAuc3VibWVudS10b2dnbGVbYXJpYS1leHBhbmRlZD0ndHJ1ZSddOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoLTEpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIH1cblxuICAuc3VibWVudS10b2dnbGUtdGV4dCB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcmlsbGRvd25cbi8vLy9cblxuLy8vIFRyYW5zaXRpb24gcHJvcGVydHkgdG8gdXNlIGZvciBhbmltYXRpbmcgbWVudXMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGRyaWxsZG93bi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBhcnJvd3MgdG8gZHJpbGxkb3duIGl0ZW1zIHdpdGggc3VibWVudXMsIGFzIHdlbGwgYXMgdGhlIGJhY2sgYnV0dG9uLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJpbGxkb3duLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gbWVudSBuZXN0ZWQgbWFyZ2luXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJpbGxkb3duLW5lc3RlZC1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcmlsbGRvd24gdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIG1lbnUgaXRlbSBwYWRkaW5nIGluIHRoZSBzdWJtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc6ICRkcmlsbGRvd24tcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyaWxsZG93biBzdWJtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyaWxsZG93bi1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyaWxsZG93bi1hcnJvdy1zaXplOiA2cHggIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1kcmlsbGRvd24tbGVmdC1yaWdodC1hcnJvd3Mge1xuICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcmlsbGRvd24tYXJyb3ctc2l6ZSwgJGRyaWxsZG93bi1hcnJvdy1jb2xvciwgJGdsb2JhbC1yaWdodCk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xICogJGRyaWxsZG93bi1hcnJvdy1zaXplO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICB9XG4gIH1cblxuICAmLmFsaWduLWxlZnQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBsZWZ0KTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxcmVtO1xuICB9XG5cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnUge1xuICAvLyBBcHBsaWVkIHRvIHRoZSBNZW51IGNvbnRhaW5lclxuICAuaXMtZHJpbGxkb3duIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgICYuYW5pbWF0ZS1oZWlnaHQge1xuICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuNXM7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhlIHRvcCBsZXZlbCA8dWw+XG4gIC5kcmlsbGRvd24ge1xuICAgIGEge1xuICAgICAgcGFkZGluZzogJGRyaWxsZG93bi1wYWRkaW5nO1xuICAgICAgYmFja2dyb3VuZDogJGRyaWxsZG93bi1iYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIC8vIEFwcGxpZWQgdG8gc3VibWVudSA8dWw+c1xuICAgIC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICAjeyRnbG9iYWwtbGVmdH06IDEwMCU7XG4gICAgICB6LWluZGV4OiAtMTtcblxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJpbGxkb3duLXN1Ym1lbnUtYmFja2dyb3VuZDtcbiAgICAgIHRyYW5zaXRpb246ICRkcmlsbGRvd24tdHJhbnNpdGlvbjtcblxuICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gbHRyLCAtMTAwJSwgMTAwJSkpO1xuICAgICAgfVxuXG4gICAgICAmLmlzLWNsb3Npbmcge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBsdHIsIDEwMCUsIC0xMDAlKSk7XG4gICAgICB9XG5cbiAgICAgIC8vIFN1Ym1lbnUgaXRlbSBwYWRkaW5nXG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm5lc3RlZC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkZHJpbGxkb3duLW5lc3RlZC1tYXJnaW4pO1xuICAgIH1cblxuICAgIC5kcmlsbGRvd24tc3VibWVudS1jb3Zlci1wcmV2aW91cyB7XG4gICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIEBpZiAkZHJpbGxkb3duLWFycm93cyB7XG4gICAgICBAaW5jbHVkZSB6Zi1kcmlsbGRvd24tbGVmdC1yaWdodC1hcnJvd3M7XG5cbiAgICAgIC5qcy1kcmlsbGRvd24tYmFjayA+IGE6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJpbGxkb3duLWFycm93LXNpemUsICRkcmlsbGRvd24tYXJyb3ctY29sb3IsICRnbG9iYWwtbGVmdCk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDAuNzVyZW07IC8vIENyZWF0ZXMgc3BhY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJvcGRvd24tbWVudVxuLy8vL1xuXG4vLy8gRW5hYmxlcyBhcnJvd3MgZm9yIGl0ZW1zIHdpdGggZHJvcGRvd24gbWVudXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGRyb3Bkb3dubWVudS1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyb3Bkb3duIG1lbnUgYXJyb3cgY29sb3IgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvcjogJGFuY2hvci1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBzaXplIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweCAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBwYWRkaW5nIGZvciBhbGlnbmluZyB0aGUgYXJyb3cgY29ycmVjdGx5LlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nOiAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNaW5pbXVtIHdpZHRoIG9mIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRvcCBsZXZlbCBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgZHJvcGRvd25zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBuZXN0ZWQgbWFyZ2luXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciBzdWItbWVudSBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nOiAkZHJvcGRvd25tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd25tZW51LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8gQm9yZGVyIHdpZHRoIGZvciBkcm9wZG93biBzdWItbWVudXMuXG4vLyBVc2VkIHRvIGFkanVzdCB0b3AgbWFyZ2luIG9mIGEgc3ViLW1lbnUgaWYgYSBib3JkZXIgaXMgdXNlZC5cbi8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGg6IG50aCgkZHJvcGRvd25tZW51LWJvcmRlciwgMSk7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0uIEV4cGxpY2l0IG92ZXJyaWRlIGZvciBtZW51IGRlZmF1bHRzXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bi1tZW51LWl0ZW0tY29sb3ItYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0uIEV4cGxpY2l0IG92ZXJyaWRlIGZvciBtZW51IGRlZmF1bHRzXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG5AbWl4aW4gemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3Mge1xuICA+IGE6OmFmdGVyIHtcbiAgICAjeyRnbG9iYWwtcmlnaHR9OiAxNHB4O1xuICB9XG5cbiAgJi5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGxlZnQpO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDtcbiAgfVxuXG4gICYub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgcmlnaHQpO1xuICB9XG59XG5cbkBtaXhpbiBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgID4gbGkub3BlbnMtbGVmdCB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaS5vcGVucy1yaWdodCB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAkZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc7XG4gICAgICB9XG5cbiAgICAgID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBkb3duKTtcbiAgICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogNXB4O1xuICAgICAgICAjeyRnbG9iYWwtbGVmdH06IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IC0xICogKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSAqIDAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgID4gbGkge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDA7XG4gICAgICB9XG5cbiAgICAgICYub3BlbnMtbGVmdCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICByaWdodDogMTAwJTtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYub3BlbnMtcmlnaHQge1xuICAgICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICAgIEBpbmNsdWRlIHpmLWRyb3Bkb3duLWxlZnQtcmlnaHQtYXJyb3dzO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcm9wZG93bi1tZW51IHtcbiAgLmRyb3Bkb3duLm1lbnUge1xuICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuXG4gICAgYSB7XG4gICAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgfVxuXG4gICAgLy8gVG9wLWxldmVsIGl0ZW1cbiAgICA+IGxpID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd25tZW51LWJhY2tncm91bmQ7XG4gICAgICBwYWRkaW5nOiAkZHJvcGRvd25tZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLy8gVG9wLWxldmVsIGl0ZW0gYWN0aXZlIHN0YXRlXG4gICAgPiBsaS5pcy1hY3RpdmUgPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU7XG4gICAgfVxuXG4gICAgLm5vLWpzICYgdWwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAubmVzdGVkLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGRyb3Bkb3dubWVudS1uZXN0ZWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgICAmLiN7JHNpemV9LWhvcml6b250YWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi4jeyRzaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5hbGlnbi1yaWdodCB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWIge1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsIHtcbiAgICB3aWR0aDogMTAwcHg7XG5cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGE6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogNXB4O1xuICAgICAgI3skZ2xvYmFsLWxlZnR9OiBhdXRvO1xuICAgICAgbWFyZ2luLXRvcDogLTEgKiAkZHJvcGRvd25tZW51LWFycm93LXNpemU7XG4gICAgfVxuXG4gICAgJi5vcGVucy1pbm5lciA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcblxuICAgICAgdG9wOiAxMDAlO1xuICAgICAgQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICByaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuXG4gICAgJi5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDEwMCU7XG4gICAgei1pbmRleDogMTtcblxuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWluLXdpZHRoOiAkZHJvcGRvd25tZW51LW1pbi13aWR0aDtcblxuICAgIGJvcmRlcjogJGRyb3Bkb3dubWVudS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZDogJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ7XG5cbiAgICAuZHJvcGRvd24gJiBhIHtcbiAgICAgIHBhZGRpbmc6ICRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgICBAaW5jbHVkZSB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgKHR5cGUtb2YoJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGgpID09ICdudW1iZXInKSB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIG1hcmdpbi10b3A6ICgtJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGgpO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gbGkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLy8gW1RPRE9dIEN1dCBiYWNrIHNwZWNpZmljaXR5XG4gICAgLy8mOm5vdCguanMtZHJvcGRvd24tbm9ob3ZlcikgPiAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQ6aG92ZXIgPiAmLCAvLyB3aHkgaXMgdGhpcyBsaW5lIG5lZWRlZD8gT3BlbmluZyBpcyBoYW5kbGVkIGJ5IEpTIGFuZCB0aGlzIGNhdXNlcyBzb21lIHVnbHkgZmxpY2tlcmluZyB3aGVuIHRoZSBzdWIgaXMgcmUtcG9zaXRpb25lZCBhdXRvbWF0aWNhbGx5Li4uXG4gICAgJi5qcy1kcm9wZG93bi1hY3RpdmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZmxvYXRcbi8vLy9cblxuQG1peGluIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcyB7XG4gIC5mbG9hdC1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC1jZW50ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIC5jbGVhcmZpeCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBGbGV4Ym94IFV0aWxpdGllc1xuLy8vL1xuLy9cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciB0aGUgY291bnQgb2Ygc291cmNlIG9yZGVyaW5nYFxuLy8vIEB0eXBlIE51bWJlclxuJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50OiA2ICFkZWZhdWx0O1xuXG4vLy8gUXVpY2tseSBkaXNhYmxlL2VuYWJsZSBSZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBWYW5pbGxhIEZsZXggSGVscGVycy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzOiB0cnVlICFkZWZhdWx0O1xuXG5AbWl4aW4gZmxleC1oZWxwZXJzIHtcbiAgLmZsZXgtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBmbGV4O1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cblxuICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAuZmxleC1kaXItI3skZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzKSB7XG4gICAgLy8gTG9vcCB0aHJvdWdoIFJlc3BvbnNpdmUgQnJlYWtwb2ludHNcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jb250YWluZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1hdXRvIHtcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLWdyb3cge1xuICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBlYWNoICRkaXIsICRwcm9wIGluICQtemYtZmxleC1kaXJlY3Rpb24ge1xuICAgICAgICAgICAgLiN7JHNpemV9LWZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcyB7XG4gIC8vIEhvcml6b250YWwgYWxpZ25tZW50IHVzaW5nIGp1c3RpZnktY29udGVudFxuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWp1c3RpZnkge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgfVxuICB9XG4gIFxuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCBTcGVjaWZpY2FsbHkgZm9yIFZlcnRpY2FsIE1lbnVcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluIG1hcC1yZW1vdmUoJC16Zi1mbGV4LWp1c3RpZnksICdqdXN0aWZ5JywgJ3NwYWNlZCcpIHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgICYubWVudSA+IGxpID4gYSB7XG4gICAgICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmVydGljYWwgYWxpZ25tZW50IHVzaW5nIGFsaWduLWl0ZW1zIGFuZCBhbGlnbi1zZWxmXG4gIEBlYWNoICR2ZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtYWxpZ24ge1xuICAgIC5hbGlnbi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR5OiAkdmRpcik7XG4gICAgfVxuXG4gICAgLmFsaWduLXNlbGYtI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbi1zZWxmKCR5OiAkdmRpcik7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2VudHJhbCBhbGlnbm1lbnQgb2YgY29udGVudFxuICAuYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogY2VudGVyLCAkeTogbWlkZGxlKTtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQge1xuICAgICAgLiN7JC16Zi1zaXplfS1vcmRlci0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtb3JkZXIoJGkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZhbmlsbGEgRmxleGJveCBIZWxwZXJzXG4gIEBpbmNsdWRlIGZsZXgtaGVscGVycztcbn1cbiIsIkBmdW5jdGlvbiAtemYtZmxleC1qdXN0aWZ5KCR0ZXh0LWRpcmVjdGlvbikge1xuICAkLXpmLWZsZXgtanVzdGlmeTogKFxuICAgICdsZWZ0JzogaWYoJHRleHQtZGlyZWN0aW9uID09IHJ0bCwgZmxleC1lbmQsIGZsZXgtc3RhcnQpLFxuICAgICdyaWdodCc6IGlmKCR0ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGZsZXgtc3RhcnQsIGZsZXgtZW5kKSxcbiAgICAnY2VudGVyJzogY2VudGVyLFxuICAgICdqdXN0aWZ5Jzogc3BhY2UtYmV0d2VlbixcbiAgICAnc3BhY2VkJzogc3BhY2UtYXJvdW5kLFxuICApO1xuXG4gIEByZXR1cm4gJC16Zi1mbGV4LWp1c3RpZnk7XG59XG5cblxuJC16Zi1mbGV4LWFsaWduOiAoXG4gICd0b3AnOiBmbGV4LXN0YXJ0LFxuICAnYm90dG9tJzogZmxleC1lbmQsXG4gICdtaWRkbGUnOiBjZW50ZXIsXG4gICdzdHJldGNoJzogc3RyZXRjaCxcbik7XG5cbiQtemYtZmxleC1kaXJlY3Rpb246IChcbiAgJ3Jvdyc6IHJvdyxcbiAgJ3Jvdy1yZXZlcnNlJzogcm93LXJldmVyc2UsXG4gICdjb2x1bW4nOiBjb2x1bW4sXG4gICdjb2x1bW4tcmV2ZXJzZSc6IGNvbHVtbi1yZXZlcnNlLFxuKTtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBieSBhZGRpbmcgYGRpc3BsYXk6IGZsZXhgIHRvIHRoZSBlbGVtZW50LlxuQG1peGluIGZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkgYWxpZ25zIHRoZSBpdGVtcyB3aXRoaW4gYSBmbGV4IGNvbnRhaW5lci5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHggW251bGxdIC0gSG9yaXpvbnRhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYGxlZnRgLCBgcmlnaHRgLCBgY2VudGVyYCwgYGp1c3RpZnlgLCBvciBgc3BhY2VkYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IGhvcml6b250YWwgYWxpZ25tZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWFsaWduKCR4OiBudWxsLCAkeTogbnVsbCkge1xuICBAaWYgJHgge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtanVzdGlmeSwgJHgpIHtcbiAgICAgICR4OiBtYXAtZ2V0KCQtemYtZmxleC1qdXN0aWZ5LCAkeCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtcm93LWFsaWduKCk6ICN7JHh9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciBob3Jpem9udGFsIGFsaWdubWVudC4gVXNlIGxlZnQsIHJpZ2h0LCBjZW50ZXIsIGp1c3RpZnksIG9yIHNwYWNlZC4nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgdmVydGljYWwgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGp1c3RpZnktY29udGVudDogJHg7XG4gIGFsaWduLWl0ZW1zOiAkeTtcbn1cblxuLy8vIFZlcnRpY2FsbHkgYWxpZ24gYSBzaW5nbGUgY29sdW1uIHdpdGhpbiBhIGZsZXggcm93LiBBcHBseSB0aGlzIG1peGluIHRvIGEgZmxleCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbi1zZWxmKCR5OiBudWxsKSB7XG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLWNvbHVtbi1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGFsaWduLXNlbGY6ICR5O1xufVxuXG4vLy8gQ2hhbmdlcyB0aGUgc291cmNlIG9yZGVyIG9mIGEgZmxleCBjaGlsZC4gQ2hpbGRyZW4gd2l0aCBsb3dlciBudW1iZXJzIGFwcGVhciBmaXJzdCBpbiB0aGUgbGF5b3V0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb3JkZXIgWzBdIC0gT3JkZXIgbnVtYmVyIHRvIGFwcGx5LlxuQG1peGluIGZsZXgtb3JkZXIoJG9yZGVyOiAwKSB7XG4gIG9yZGVyOiAkb3JkZXI7XG59XG5cbi8vLyBDaGFuZ2UgZmxleC1kaXJlY3Rpb25cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW3Jvd10gLSBGbGV4IGRpcmVjdGlvbiB0byB1c2UuIENhbiBiZVxuLy8vICAgLSByb3cgKGRlZmF1bHQpOiBzYW1lIGFzIHRleHQgZGlyZWN0aW9uXG4vLy8gICAtIHJvdy1yZXZlcnNlOiBvcHBvc2l0ZSB0byB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSBjb2x1bW46IHNhbWUgYXMgcm93IGJ1dCB0b3AgdG8gYm90dG9tXG4vLy8gICAtIGNvbHVtbi1yZXZlcnNlOiBzYW1lIGFzIHJvdy1yZXZlcnNlIHRvcCB0byBib3R0b21cbkBtaXhpbiBmbGV4LWRpcmVjdGlvbigkZGlyZWN0aW9uOiByb3cpIHtcbiAgZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yKCRzaXplKSB7XG4gICRzaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAvLyBNYXggdmFsdWUgaXMgMC4ycHggdW5kZXIgdGhlIG5leHQgYnJlYWtwb2ludCAoMC4wMiAvIDE2ID0gMC4wMDEyNSkuXG4gIC8vIFVzZSBhIHByZWNpc2lvbiB1bmRlciAxcHggdG8gc3VwcG9ydCBicm93c2VyIHpvb20sIGJ1dCBub3QgdG8gbG93IHRvIGF2b2lkIHJvdW5kaW5nLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTEzMTNcbiAgJHNpemU6IC16Zi1icC10by1lbSgkc2l6ZSkgLSAwLjAwMTI1O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCB3aXRoaW4gYSBjZXJ0YWluIGJyZWFrcG9pbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvci1vbmx5KCRzaXplKSB7XG4gICRsb3dlci1ib3VuZC1zaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkdXBwZXItYm91bmQtc2l6ZTogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJHNpemUpO1xuXG4gIC8vIG1vcmUgb2Z0ZW4gdGhhbiBub3QgdGhpcyB3aWxsIGJlIGNvcnJlY3QsIGp1c3Qgb25lIHRpbWUgcm91bmQgdGhlIGxvb3AgaXQgd29uJ3Qgc28gc2V0IGluIHNjb3BlIGhlcmVcbiAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpIC0gMC4wMDEyNTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgLnZpc2libGUge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBEYXJrIE1vZGUgVmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItZGFyay1tb2RlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5oaWRlLWZvci1kYXJrLW1vZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAgIC5zaG93LWZvci1kYXJrLW1vZGUge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmhpZGUtZm9yLWRhcmstbW9kZSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSUUxMCsgVmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItaWUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAuc2hvdy1mb3ItaWUge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmhpZGUtZm9yLWllIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBTdGlja3kgVmlzaWJpbGl0eVxuICAuc2hvdy1mb3Itc3RpY2t5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5pcy1zdHVjayAuc2hvdy1mb3Itc3RpY2t5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuaXMtc3R1Y2sgLmhpZGUtZm9yLXN0aWNreSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHByb3RvdHlwZS1mb250LXN0eWxpbmdcbi8vLy9cblxuLy8vIFJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIGZvbnQgc3R5bGluZyB0eXBlc1xuLy8vIEB0eXBlIEJvb2xlYW5cbiRwcm90b3R5cGUtZm9udC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHMgIWRlZmF1bHQ7XG5cbi8vLyBMZXR0ZXIgc3BhY2luZyBmb3IgYC5mb250LXdpZGVgXG4vLy8gQHR5cGUgTnVtYmVyXG4kcHJvdG90eXBlLXdpZGUtbGV0dGVyLXNwYWNpbmc6IHJlbS1jYWxjKDQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB3ZWlnaHQgZm9yIGAuZm9udC1ub3JtYWxgLCBkZWZhdWx0ZWQgdG8gYGdsb2JhbC13ZWlnaHQtbm9ybWFsYFxuLy8vIEB0eXBlIE51bWJlclxuJHByb3RvdHlwZS1mb250LW5vcm1hbDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB3ZWlnaHQgZm9yIGAuZm9udC1ib2xkYCwgZGVmYXVsdGVkIHRvIGBnbG9iYWwtd2VpZ2h0LWJvbGRgXG4vLy8gQHR5cGUgTnVtYmVyXG4kcHJvdG90eXBlLWZvbnQtYm9sZDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2lkZSBsZXR0ZXIgc3BhY2luZyFcbi8vLyBAcGFyYW0ge051bWJlcn0gJGxldHRlci1zcGFjaW5nIFskcHJvdG90eXBlLXdpZGUtbGV0dGVyLXNwYWNpbmddIFdpZGUgbGV0dGVyIHNwYWNpbmcgZm9yIHRoZSBmb250XG5AbWl4aW4gZm9udC13aWRlKFxuICAkbGV0dGVyLXNwYWNpbmc6ICRwcm90b3R5cGUtd2lkZS1sZXR0ZXItc3BhY2luZ1xuKSB7XG4gIGxldHRlci1zcGFjaW5nOiAkbGV0dGVyLXNwYWNpbmc7XG59XG5cbi8vLyBGb250IFdlaWdodCBOb3JtYWwsIGRlZmF1bHQgdmFsdWUgY29taW5nIHRocm91Z2ggYGdsb2JhbC13ZWlnaHQtbm9ybWFsYFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFskcHJvdG90eXBlLWZvbnQtbm9ybWFsXSBXZWlnaHQgb2YgdGhlIGZvbnQgKG5vcm1hbClcbkBtaXhpbiBmb250LW5vcm1hbChcbiAgJHdlaWdodDogJHByb3RvdHlwZS1mb250LW5vcm1hbFxuKSB7XG4gIGZvbnQtd2VpZ2h0OiAkd2VpZ2h0O1xufVxuXG4vLy8gRm9udCBXZWlnaHQgQm9sZCwgZGVmYXVsdCB2YWx1ZSBjb21pbmcgdGhyb3VnaCBgZ2xvYmFsLXdlaWdodC1ib2xkYFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFskcHJvdG90eXBlLWZvbnQtYm9sZF0gV2VpZ2h0IG9mIHRoZSBmb250IChib2xkKVxuQG1peGluIGZvbnQtYm9sZChcbiAgJHdlaWdodDogJHByb3RvdHlwZS1mb250LWJvbGRcbikge1xuICBmb250LXdlaWdodDogJHdlaWdodDtcbn1cblxuLy8vIEZvbnQgU3R5bGUgSXRhbGljXG5AbWl4aW4gZm9udC1pdGFsaWMge1xuICBmb250LXN0eWxlOiBpdGFsaWMgIWltcG9ydGFudDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tcHJvdG90eXBlLWZvbnQtc3R5bGluZyB7XG4gIC5mb250LXdpZGUge1xuICAgIEBpbmNsdWRlIGZvbnQtd2lkZTtcbiAgfVxuXG4gIC5mb250LW5vcm1hbCB7XG4gICAgQGluY2x1ZGUgZm9udC1ub3JtYWw7XG4gIH1cblxuICAuZm9udC1ib2xkIHtcbiAgICBAaW5jbHVkZSBmb250LWJvbGQ7XG4gIH1cblxuICAuZm9udC1pdGFsaWMge1xuICAgIEBpbmNsdWRlIGZvbnQtaXRhbGljO1xuICB9XG5cbiAgQGlmICgkcHJvdG90eXBlLWZvbnQtYnJlYWtwb2ludHMpIHtcbiAgICAvLyBMb29wIHRocm91Z2ggUmVzcG9uc2l2ZSBCcmVha3BvaW50c1xuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS1mb250LXdpZGUge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC13aWRlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mb250LW5vcm1hbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LW5vcm1hbDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZm9udC1ib2xkIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtYm9sZDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZm9udC1pdGFsaWMge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1pdGFsaWM7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcHJvdG90eXBlLXNwYWNpbmdcbi8vLy9cblxuLy8vIFJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIHNwYWNpbmcgY2xhc3NlcyAobWFyZ2luIGFuZCBwYWRkaW5nKVxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwcm90b3R5cGUtc3BhY2luZy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHMgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG51bWJlciBvZiBzcGFjZXJzIGNvdW50IChtYXJnaW4gYW5kIHBhZGRpbmcpXG4vLy8gQHR5cGUgTnVtYmVyXG4kcHJvdG90eXBlLXNwYWNlcnMtY291bnQ6IDMgIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gaGVscGVyIG1peGluLCBhbGwgdGhlIHZhbHVlcyBhcmUgbXVsdGlwbGllZCBieSBgJGdsb2JhbC1tYXJnaW5gIHdoaWNoIGJ5IGRlZmF1bHQgaXMgZXF1YWwgdG8gYDFyZW1gXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0b3AgW251bGxdIC0gTWFyZ2luIFRvcFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcmlnaHQgW251bGxdIC0gTWFyZ2luIFJpZ2h0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRib3R0b20gW251bGxdIC0gTWFyZ2luIEJvdHRvbVxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbGVmdCBbbnVsbF0gLSBNYXJnaW4gTGVmdFxuQG1peGluIG1hcmdpbihcbiAgJHRvcDogbnVsbCxcbiAgJHJpZ2h0OiBudWxsLFxuICAkYm90dG9tOiBudWxsLFxuICAkbGVmdDogbnVsbFxuKSB7XG4gIEBpZiAkdG9wICE9IG51bGwge1xuICAgIG1hcmdpbi10b3A6ICR0b3AgKiAkZ2xvYmFsLW1hcmdpbiAhaW1wb3J0YW50O1xuICB9XG4gIEBpZiAkcmlnaHQgIT0gbnVsbCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkcmlnaHQgKiAkZ2xvYmFsLW1hcmdpbiAhaW1wb3J0YW50O1xuICB9XG4gIEBpZiAkYm90dG9tICE9IG51bGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRib3R0b20gKiAkZ2xvYmFsLW1hcmdpbiAhaW1wb3J0YW50O1xuICB9XG4gIEBpZiAkbGVmdCAhPSBudWxsIHtcbiAgICBtYXJnaW4tbGVmdDogJGxlZnQgKiAkZ2xvYmFsLW1hcmdpbiAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBQYWRkaW5nIGhlbHBlciBtaXhpbiwgYWxsIHRoZSB2YWx1ZXMgYXJlIG11bHRpcGxpZWQgYnkgYCRnbG9iYWwtcGFkZGluZ2Agd2hpY2ggYnkgZGVmYXVsdCBpcyBlcXVhbCB0byBgMXJlbWBcbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvcCBbbnVsbF0gLSBQYWRkaW5nIFRvcFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcmlnaHQgW251bGxdIC0gUGFkZGluZyBSaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYm90dG9tIFtudWxsXSAtIFBhZGRpbmcgQm90dG9tXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRsZWZ0IFtudWxsXSAtIFBhZGRpbmcgTGVmdFxuQG1peGluIHBhZGRpbmcoXG4gICR0b3A6IG51bGwsXG4gICRyaWdodDogbnVsbCxcbiAgJGJvdHRvbTogbnVsbCxcbiAgJGxlZnQ6IG51bGxcbikge1xuICBAaWYgJHRvcCAhPSBudWxsIHtcbiAgICBwYWRkaW5nLXRvcDogJHRvcCAqICRnbG9iYWwtcGFkZGluZyAhaW1wb3J0YW50O1xuICB9XG4gIEBpZiAkcmlnaHQgIT0gbnVsbCB7XG4gICAgcGFkZGluZy1yaWdodDogJHJpZ2h0ICogJGdsb2JhbC1wYWRkaW5nICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGlmICRib3R0b20gIT0gbnVsbCB7XG4gICAgcGFkZGluZy1ib3R0b206ICRib3R0b20gKiAkZ2xvYmFsLXBhZGRpbmcgIWltcG9ydGFudDtcbiAgfVxuICBAaWYgJGxlZnQgIT0gbnVsbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAkbGVmdCAqICRnbG9iYWwtcGFkZGluZyAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBNYXJnaW4gY2xhc3NlcyBmb3Igc3BlY2lmaWMgZGlyZWN0aW9uIHByb3BlcnRpZXNcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGRpciBbXSBEaXJlY3Rpb25cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNwYWNlciBbXSBTcGFjZXJcbkBtaXhpbiBtYXJnaW4tZGlyZWN0aW9uKCRkaXIsICRzcGFjZXIpIHtcbiAgQGlmICgkZGlyID09IHRvcCkge1xuICAgIEBpbmNsdWRlIG1hcmdpbigkdG9wOiAkc3BhY2VyKTtcbiAgfVxuICBAZWxzZSBpZiAoJGRpciA9PSByaWdodCkge1xuICAgIEBpbmNsdWRlIG1hcmdpbigkcmlnaHQ6ICRzcGFjZXIpO1xuICB9XG4gIEBlbHNlIGlmICgkZGlyID09IGJvdHRvbSkge1xuICAgIEBpbmNsdWRlIG1hcmdpbigkYm90dG9tOiAkc3BhY2VyKTtcbiAgfVxuICBAZWxzZSBpZiAoJGRpciA9PSBsZWZ0KSB7XG4gICAgQGluY2x1ZGUgbWFyZ2luKCRsZWZ0OiAkc3BhY2VyKTtcbiAgfVxuICBAZWxzZSBpZiAoJGRpciA9PSBob3Jpem9udGFsKSB7XG4gICAgQGluY2x1ZGUgbWFyZ2luKCRyaWdodDogJHNwYWNlciwgJGxlZnQ6ICRzcGFjZXIpO1xuICB9XG4gIEBlbHNlIGlmICgkZGlyID09IHZlcnRpY2FsKSB7XG4gICAgQGluY2x1ZGUgbWFyZ2luKCR0b3A6ICRzcGFjZXIsICRib3R0b206ICRzcGFjZXIpO1xuICB9XG59XG5cbi8vLyBQYWRkaW5nIGNsYXNzZXMgZm9yIHNwZWNpZmljIGRpcmVjdGlvbiBwcm9wZXJ0aWVzXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRkaXIgW10gRGlyZWN0aW9uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzcGFjZXIgW10gU3BhY2VyXG5AbWl4aW4gcGFkZGluZy1kaXJlY3Rpb24oJGRpciwgJHNwYWNlcikge1xuICBAaWYgKCRkaXIgPT0gdG9wKSB7XG4gICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAkc3BhY2VyKTtcbiAgfVxuICBAZWxzZSBpZiAoJGRpciA9PSByaWdodCkge1xuICAgIEBpbmNsdWRlIHBhZGRpbmcoJHJpZ2h0OiAkc3BhY2VyKTtcbiAgfVxuICBAZWxzZSBpZiAoJGRpciA9PSBib3R0b20pIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKCRib3R0b206ICRzcGFjZXIpO1xuICB9XG4gIEBlbHNlIGlmICgkZGlyID09IGxlZnQpIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKCRsZWZ0OiAkc3BhY2VyKTtcbiAgfVxuICBAZWxzZSBpZiAoJGRpciA9PSBob3Jpem9udGFsKSB7XG4gICAgQGluY2x1ZGUgcGFkZGluZygkcmlnaHQ6ICRzcGFjZXIsICRsZWZ0OiAkc3BhY2VyKTtcbiAgfVxuICBAZWxzZSBpZiAoJGRpciA9PSB2ZXJ0aWNhbCkge1xuICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogJHNwYWNlciwgJGJvdHRvbTogJHNwYWNlcik7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tcHJvdG90eXBlLXNwYWNpbmcge1xuICBAZm9yICRzcGFjZXIgZnJvbSAwIHRocm91Z2ggJHByb3RvdHlwZS1zcGFjZXJzLWNvdW50IHtcblxuICAgIEBlYWNoICRwcm9wIGluIChtYXJnaW4sIHBhZGRpbmcpIHtcbiAgICAgIC8vIEFsbCBTaWRlc1xuICAgICAgLiN7JHByb3B9LSN7JHNwYWNlcn0ge1xuICAgICAgICBAaWYgKCRwcm9wID09IG1hcmdpbikge1xuICAgICAgICAgIG1hcmdpbjogJHNwYWNlciAqICRnbG9iYWwtbWFyZ2luICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2UgaWYgKCRwcm9wID09IHBhZGRpbmcpIHtcbiAgICAgICAgICBwYWRkaW5nOiAkc3BhY2VyICogJGdsb2JhbC1wYWRkaW5nICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGVhY2ggJGRpciBpbiAodG9wLCByaWdodCwgYm90dG9tLCBsZWZ0LCBob3Jpem9udGFsLCB2ZXJ0aWNhbCkge1xuICAgICAgICAvLyBUb3AgU2lkZVxuICAgICAgICAuI3skcHJvcH0tI3skZGlyfS0jeyRzcGFjZXJ9IHtcbiAgICAgICAgICBAaWYgKCRwcm9wID09IG1hcmdpbikge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFyZ2luLWRpcmVjdGlvbigkZGlyLCAkc3BhY2VyKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2UgaWYgKCRwcm9wID09IHBhZGRpbmcpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBhZGRpbmctZGlyZWN0aW9uKCRkaXIsICRzcGFjZXIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAoJHByb3RvdHlwZS1zcGFjaW5nLWJyZWFrcG9pbnRzKSB7XG4gICAgQGZvciAkc3BhY2VyIGZyb20gMCB0aHJvdWdoICRwcm90b3R5cGUtc3BhY2Vycy1jb3VudCB7XG4gICAgICAvLyBMb29wIHRocm91Z2ggUmVzcG9uc2l2ZSBCcmVha3BvaW50c1xuICAgICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgLiN7JHNpemV9IHtcbiAgICAgICAgICAgICAgQGVhY2ggJHByb3AgaW4gKG1hcmdpbiwgcGFkZGluZykge1xuICAgICAgICAgICAgICAgIC8vIEFsbCBTaWRlc1xuICAgICAgICAgICAgICAgICYtI3skcHJvcH0tI3skc3BhY2VyfSB7XG4gICAgICAgICAgICAgICAgICBAaWYgKCRwcm9wID09IG1hcmdpbikge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46ICRzcGFjZXIgKiAkZ2xvYmFsLW1hcmdpbiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgQGVsc2UgaWYgKCRwcm9wID09IHBhZGRpbmcpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogJHNwYWNlciAqICRnbG9iYWwtcGFkZGluZyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBlYWNoICRkaXIgaW4gKHRvcCwgcmlnaHQsIGJvdHRvbSwgbGVmdCwgaG9yaXpvbnRhbCwgdmVydGljYWwpIHtcbiAgICAgICAgICAgICAgICAgIC8vIFRvcCBTaWRlXG4gICAgICAgICAgICAgICAgICAmLSN7JHByb3B9LSN7JGRpcn0tI3skc3BhY2VyfSB7XG4gICAgICAgICAgICAgICAgICAgIEBpZiAoJHByb3AgPT0gbWFyZ2luKSB7XG4gICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWFyZ2luLWRpcmVjdGlvbigkZGlyLCAkc3BhY2VyKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBAZWxzZSBpZiAoJHByb3AgPT0gcGFkZGluZykge1xuICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBhZGRpbmctZGlyZWN0aW9uKCRkaXIsICRzcGFjZXIpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcHJvdG90eXBlLXNlcGFyYXRvclxuLy8vL1xuXG4vLy8gUmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3Igc2VwYXJhdG9yLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYWxpZ25tZW50IG9mIGEgc2VwYXJhdG9yLlxuLy8vIEB0eXBlIFN0cmluZ1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItYWxpZ246IGNlbnRlciAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBvZiBhIHNlcGFyYXRvci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWhlaWdodDogcmVtLWNhbGMoMikgIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBvZiBhIHNlcGFyYXRvci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwcm90b3R5cGUtc2VwYXJhdG9yLXdpZHRoOiAzcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBhIHNlcGFyYXRvci5cbi8vLyBAdHlwZSBDb2xvclxuJHByb3RvdHlwZS1zZXBhcmF0b3ItYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBUb3AgTWFyZ2luIG9mIGEgc2VwYXJhdG9yLlxuLy8vIEB0eXBlIE51bWJlclxuJHByb3RvdHlwZS1zZXBhcmF0b3ItbWFyZ2luLXRvcDogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBUaXRsZSBzZXBhcmF0b3IgVXRpbGl0eSwgbW9zdGx5IHVzZWQgdG8gc3R5bGUgdGhlIG1haW4gaGVhZGluZyBvZiBhIHNlY3Rpb25cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGFsaWduIFskcHJvdG90eXBlLXNlcGFyYXRvci1hbGlnbl0gLSBzZXBhcmF0b3IgQWxpZ25tZW50XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWyRwcm90b3R5cGUtc2VwYXJhdG9yLWhlaWdodF0gLSBXaWR0aFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWyRwcm90b3R5cGUtc2VwYXJhdG9yLXdpZHRoXSAtIEhlaWdodFxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskcHJvdG90eXBlLXNlcGFyYXRvci1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmRcbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvcCBbJHByb3RvdHlwZS1zZXBhcmF0b3ItbWFyZ2luLXRvcF0gLSBNYXJnaW4gVG9wXG5AbWl4aW4gc2VwYXJhdG9yIChcbiAgJGFsaWduOiAkcHJvdG90eXBlLXNlcGFyYXRvci1hbGlnbixcbiAgJGhlaWdodDogJHByb3RvdHlwZS1zZXBhcmF0b3ItaGVpZ2h0LFxuICAkd2lkdGg6ICRwcm90b3R5cGUtc2VwYXJhdG9yLXdpZHRoLFxuICAkYmFja2dyb3VuZDogJHByb3RvdHlwZS1zZXBhcmF0b3ItYmFja2dyb3VuZCxcbiAgJHRvcDogJHByb3RvdHlwZS1zZXBhcmF0b3ItbWFyZ2luLXRvcFxuKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICB0ZXh0LWFsaWduOiAkYWxpZ24gIWltcG9ydGFudDtcblxuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgcG9zaXRpb24ocmVsYXRpdmUpO1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhlaWdodCBzb2xpZCAkYmFja2dyb3VuZDtcbiAgICBtYXJnaW46ICR0b3AgYXV0byAwO1xuXG4gICAgQGlmICRhbGlnbiA9PSBsZWZ0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGlmICRhbGlnbiA9PSByaWdodCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tcHJvdG90eXBlLXNlcGFyYXRvciB7XG4gIC5zZXBhcmF0b3ItY2VudGVyIHtcbiAgICBAaW5jbHVkZSBzZXBhcmF0b3IoY2VudGVyKTtcbiAgfVxuXG4gIC5zZXBhcmF0b3ItbGVmdCB7XG4gICAgQGluY2x1ZGUgc2VwYXJhdG9yKGxlZnQpO1xuICB9XG5cbiAgLnNlcGFyYXRvci1yaWdodCB7XG4gICAgQGluY2x1ZGUgc2VwYXJhdG9yKHJpZ2h0KTtcbiAgfVxuXG4gIEBpZiAoJHByb3RvdHlwZS1zZXBhcmF0b3ItYnJlYWtwb2ludHMpIHtcbiAgICAvLyBMb29wIHRocm91Z2ggUmVzcG9uc2l2ZSBCcmVha3BvaW50c1xuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS1zZXBhcmF0b3ItY2VudGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNlcGFyYXRvcihjZW50ZXIpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuI3skc2l6ZX0tc2VwYXJhdG9yLWxlZnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgc2VwYXJhdG9yKGxlZnQpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuI3skc2l6ZX0tc2VwYXJhdG9yLXJpZ2h0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNlcGFyYXRvcihyaWdodCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcHJvdG90eXBlLXBvc2l0aW9uXG4vLy8vXG5cbi8vLyBSZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBwb3NpdGlvbiBoZWxwZXJzXG4vLy8gQHR5cGUgQm9vbGVhblxuJHByb3RvdHlwZS1wb3NpdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHMgIWRlZmF1bHQ7XG5cbi8vLyBNYXAgY29udGFpbmluZyBhbGwgdGhlIGBwb3NpdGlvbmAgY2xhc3Nlc1xuLy8vIEB0eXBlIE1hcFxuJHByb3RvdHlwZS1wb3NpdGlvbjogKFxuICBzdGF0aWMsXG4gIHJlbGF0aXZlLFxuICBhYnNvbHV0ZSxcbiAgZml4ZWRcbikgIWRlZmF1bHQ7XG5cbi8vLyB6LWluZGV4IGZvciBmaXhlZCBwb3NpdGlvbmluZ1xuLy8vIEB0eXBlIE51bWJlclxuJHByb3RvdHlwZS1wb3NpdGlvbi16LWluZGV4OiA5NzUgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbiBjbGFzc2VzLCBieSBkZWZhdWx0IGNvbWluZyB0aHJvdWdoIGEgbWFwIGAkcHJvdG90eXBlLXBvc2l0aW9uYCwgd2hlcmVhcyBhbGwgdGhlIG9mZnNldCB2YWx1ZXMgYXJlIG11bHRpcGxpZWQgYnkgYCRnbG9iYWwtcG9zaXRpb25gIHdoaWNoIGJ5IGRlZmF1bHQgaXMgZXF1YWwgdG8gYDFyZW1gLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkcG9zaXRpb24gW10gUG9zaXRpb24gY2xhc3NlcywgRWl0aGVyIGBzdGF0aWNgLCBgcmVsYXRpdmVgLCBgYWJzb2x1dGVgIG9yIGBmaXhlZGBcbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvcCBbbnVsbF0gLSBUb3Agb2Zmc2V0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRyaWdodCBbbnVsbF0gLSBSaWdodCBvZmZzZXRcbi8vLyBAcGFyYW0ge051bWJlcn0gJGJvdHRvbSBbbnVsbF0gLSBCb3R0b20gb2Zmc2V0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRsZWZ0IFtudWxsXSAtIExlZnQgb2Zmc2V0XG5AbWl4aW4gcG9zaXRpb24oXG4gICRwb3NpdGlvbixcbiAgJHRvcDogbnVsbCxcbiAgJHJpZ2h0OiBudWxsLFxuICAkYm90dG9tOiBudWxsLFxuICAkbGVmdDogbnVsbFxuKSB7XG4gIHBvc2l0aW9uOiAkcG9zaXRpb24gIWltcG9ydGFudDtcbiAgQGlmICR0b3AgIT0gbnVsbCB7XG4gICAgdG9wOiAkdG9wICogJGdsb2JhbC1wb3NpdGlvbiAhaW1wb3J0YW50O1xuICB9XG4gIEBpZiAkcmlnaHQgIT0gbnVsbCB7XG4gICAgcmlnaHQ6ICRyaWdodCAqICRnbG9iYWwtcG9zaXRpb24gIWltcG9ydGFudDtcbiAgfVxuICBAaWYgJGJvdHRvbSAhPSBudWxsIHtcbiAgICBib3R0b206ICRib3R0b20gKiAkZ2xvYmFsLXBvc2l0aW9uICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGlmICRsZWZ0ICE9IG51bGwge1xuICAgIGxlZnQ6ICRsZWZ0ICogJGdsb2JhbC1wb3NpdGlvbiAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBQb3NpdGlvbiBGaXhlZCBvbiB0b3AgY29ybmVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkei1pbmRleCBbJHByb3RvdHlwZS1wb3NpdGlvbi16LWluZGV4XSB6LWluZGV4IGZvciBgcG9zaXRpb24tZml4ZWQtdG9wYFxuQG1peGluIHBvc2l0aW9uLWZpeGVkLXRvcChcbiAgJHotaW5kZXg6ICRwcm90b3R5cGUtcG9zaXRpb24tei1pbmRleFxuKSB7XG4gIEBpbmNsdWRlIHBvc2l0aW9uKGZpeGVkLCAwLCAwLCBudWxsLCAwKTtcbiAgei1pbmRleDogJHotaW5kZXg7XG59XG5cbi8vLyBQb3NpdGlvbiBGaXhlZCBvbiBib3R0b20gY29ybmVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkei1pbmRleCBbJHByb3RvdHlwZS1wb3NpdGlvbi16LWluZGV4XSB6LWluZGV4IGZvciBgcG9zaXRpb24tZml4ZWQtYm90dG9tYFxuQG1peGluIHBvc2l0aW9uLWZpeGVkLWJvdHRvbShcbiAgJHotaW5kZXg6ICRwcm90b3R5cGUtcG9zaXRpb24tei1pbmRleFxuKSB7XG4gIEBpbmNsdWRlIHBvc2l0aW9uKGZpeGVkLCBudWxsLCAwLCAwLCAwKTtcbiAgei1pbmRleDogJHotaW5kZXg7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXByb3RvdHlwZS1wb3NpdGlvbiB7XG4gIC8vIFBvc2l0aW9uOiBTdGF0aWMsIFJlbGF0aXZlLCBGaXhlZCwgQWJzb2x1dGVcbiAgQGVhY2ggJHBvc2l0aW9uIGluICRwcm90b3R5cGUtcG9zaXRpb24ge1xuICAgIC5wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgQGluY2x1ZGUgcG9zaXRpb24oJHBvc2l0aW9uKTtcbiAgICB9XG4gIH1cblxuICAvLyBQb3NpdGlvbjogRml4ZWQgVG9wLCBGaXhlZCBCb3R0b21cbiAgLnBvc2l0aW9uLWZpeGVkLXRvcCB7XG4gICAgQGluY2x1ZGUgcG9zaXRpb24tZml4ZWQtdG9wO1xuICB9XG4gIC5wb3NpdGlvbi1maXhlZC1ib3R0b20ge1xuICAgIEBpbmNsdWRlIHBvc2l0aW9uLWZpeGVkLWJvdHRvbTtcbiAgfVxuXG4gIEBpZiAoJHByb3RvdHlwZS1wb3NpdGlvbi1icmVha3BvaW50cykge1xuICAgIC8vIExvb3AgdGhyb3VnaCBSZXNwb25zaXZlIEJyZWFrcG9pbnRzXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIC8vIFBvc2l0aW9uOiBTdGF0aWMsIFJlbGF0aXZlLCBGaXhlZCwgQWJzb2x1dGVcbiAgICAgICAgQGVhY2ggJHBvc2l0aW9uIGluICRwcm90b3R5cGUtcG9zaXRpb24ge1xuICAgICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICAuI3skc2l6ZX0tcG9zaXRpb24tI3skcG9zaXRpb259IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oJHBvc2l0aW9uKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBQb3NpdGlvbjogRml4ZWQgVG9wLCBGaXhlZCBCb3R0b21cbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tcG9zaXRpb24tZml4ZWQtdG9wIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uLWZpeGVkLXRvcDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tcG9zaXRpb24tZml4ZWQtYm90dG9tIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uLWZpeGVkLWJvdHRvbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBwcm90b3R5cGUtc2l6aW5nXG4vLy8vXG5cbi8vLyBSZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBzcGFjaW5nIGNsYXNzZXMgKG1hcmdpbiBhbmQgcGFkZGluZylcbi8vLyBAdHlwZSBCb29sZWFuXG4kcHJvdG90eXBlLXNpemluZy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHMgIWRlZmF1bHQ7XG5cbi8vLyBNYXAgY29udGFpbmluZyBhbGwgdGhlIGBzaXppbmdgIGNsYXNzZXNcbi8vLyBAdHlwZSBNYXBcbiRwcm90b3R5cGUtc2l6aW5nOiAoXG4gIHdpZHRoLFxuICBoZWlnaHRcbikgIWRlZmF1bHQ7XG5cbi8vLyBNYXAgY29udGFpbmluZyBhbGwgdGhlIHNpemVzLlxuLy8vIEB0eXBlIE1hcFxuJHByb3RvdHlwZS1zaXplczogKFxuICAyNTogMjUlLFxuICA1MDogNTAlLFxuICA3NTogNzUlLFxuICAxMDA6IDEwMCVcbikgIWRlZmF1bHQ7XG5cbi8vLyBNYXggV2lkdGggMTAwIHV0aWxpdHkuXG5AbWl4aW4gbWF4LXdpZHRoLTEwMCB7XG4gIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4vLy8gTWF4IEhlaWdodCAxMDAgdXRpbGl0eS5cbkBtaXhpbiBtYXgtaGVpZ2h0LTEwMCB7XG4gIG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tcHJvdG90eXBlLXNpemluZyB7XG4gIC8vIEVsZW1lbnQgU2l6aW5nXG4gIEBlYWNoICRzaXppbmcgaW4gJHByb3RvdHlwZS1zaXppbmcge1xuICAgIEBlYWNoICRsZW5ndGgsICRwZXJjZW50YWdlIGluICRwcm90b3R5cGUtc2l6ZXMge1xuICAgICAgLiN7JHNpemluZ30tI3skbGVuZ3RofSB7XG4gICAgICAgICN7JHNpemluZ306ICRwZXJjZW50YWdlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTWF4IHdpZHRoICYgaGVpZ2h0XG4gIC5tYXgtd2lkdGgtMTAwIHtcbiAgICBAaW5jbHVkZSBtYXgtd2lkdGgtMTAwO1xuICB9XG4gIC5tYXgtaGVpZ2h0LTEwMCB7XG4gICAgQGluY2x1ZGUgbWF4LWhlaWdodC0xMDA7XG4gIH1cblxuICBAaWYgKCRwcm90b3R5cGUtc2l6aW5nLWJyZWFrcG9pbnRzKSB7XG4gICAgLy8gTG9vcCB0aHJvdWdoIFJlc3BvbnNpdmUgQnJlYWtwb2ludHNcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICBAZWFjaCAkc2l6aW5nIGluICRwcm90b3R5cGUtc2l6aW5nIHtcbiAgICAgICAgICAgIEBlYWNoICRsZW5ndGgsICRwZXJjZW50YWdlIGluICRwcm90b3R5cGUtc2l6ZXMge1xuICAgICAgICAgICAgICAuI3skc2l6ZX0tI3skc2l6aW5nfS0jeyRsZW5ndGh9IHtcbiAgICAgICAgICAgICAgICAjeyRzaXppbmd9OiAkcGVyY2VudGFnZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKiFcbiAqIFNsaWRlYmFycyAtIEEgalF1ZXJ5IEZyYW1ld29yayBmb3IgT2ZmLUNhbnZhcyBNZW51cyBhbmQgU2lkZWJhcnNcbiAqIFZlcnNpb246IDIuMC4yXG4gKiBVcmw6IGh0dHA6Ly93d3cuYWRjaHNtLmNvbS9zbGlkZWJhcnMvXG4gKiBBdXRob3I6IEFkYW0gQ2hhcmxlcyBTbWl0aFxuICogQXV0aG9yIHVybDogaHR0cDovL3d3dy5hZGNoc20uY29tL1xuICogTGljZW5zZTogTUlUXG4gKiBMaWNlbnNlIHVybDogaHR0cDovL3d3dy5hZGNoc20uY29tL3NsaWRlYmFycy9saWNlbnNlL1xuICovXG5cbi8qKlxuICogQm94IE1vZGVsLCBIdG1sICYgQm9keVxuICovXG5cbiBodG1sLCBib2R5LCBbY2FudmFzPWNvbnRhaW5lcl0sIFtvZmYtY2FudmFzXSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbmh0bWwsIGJvZHkge1xuICB3aWR0aDogMTAwJTtcbiAgLypoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjsqL1xufVxuXG4vKipcbiAqIENhbnZhc1xuICovXG5cbltjYW52YXNdIHtcbiAgei1pbmRleDogMTtcbn1cblxuW2NhbnZhcz1jb250YWluZXJdIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLyogQmFzaWMgYmFja2dyb3VuZCBjb2xvciwgb3ZlcndyaXRlIHRoaXMgaW4geW91ciBvd24gY3NzLiAqL1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IC8qIEVuYWJsZXMgbW9tZW50dW0gc2Nyb2xsaW5nIG9uIGlPUyBkZXZpY2VzLCBtYXkgYmUgcmVtb3ZlZCBieSBzZXR0aW5nIHRvICdhdXRvJyBpbiB5b3VyIG93biBDU1MuICovXG59XG5cbltjYW52YXM9Y29udGFpbmVyXTpiZWZvcmUsIFtjYW52YXM9Y29udGFpbmVyXTphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogdGFibGU7XG59XG5cbi8qKlxuICogT2ZmLUNhbmF2c1xuICovXG5cbltvZmYtY2FudmFzXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktZGFyazsgLyogQmFzaWMgYmFja2dyb3VuZCBjb2xvciwgb3ZlcndyaXRlIHRoaXMgaW4geW91ciBvd24gY3NzLiAqL1xuICBjb2xvcjogJHdoaXRlOyAvKiBCYXNpYyBjb2xvcnMsIG92ZXJ3cml0ZSB0aGlzIGluIHlvdXIgb3duIGNzcy4gKi9cbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoOyAvKiBFbmFibGVzIG1vbWVudHVtIHNjcm9sbGluZyBvbiBpT1MgZGV2aWNlcywgbWF5IGJlIHJlbW92ZWQgYnkgc2V0dGluZyB0byAnYXV0bycgaW4geW91ciBvd24gQ1NTLiAqL1xufVxuXG5bb2ZmLWNhbnZhcyo9dG9wXSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDI1NXB4O1xuICB0b3A6IDA7XG59XG5cbltvZmYtY2FudmFzKj1yaWdodF0ge1xuICB3aWR0aDogMjU1cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbn1cblxuW29mZi1jYW52YXMqPWJvdHRvbV0ge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyNTVweDtcbiAgYm90dG9tOiAwO1xufVxuXG5bb2ZmLWNhbnZhcyo9bGVmdF0ge1xuICB3aWR0aDogMjU1cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xufVxuXG5bb2ZmLWNhbnZhcyo9cmV2ZWFsXSB7XG4gIHotaW5kZXg6IDA7XG59XG5cbltvZmYtY2FudmFzKj1wdXNoXSB7XG4gIHotaW5kZXg6IDE7XG59XG5cbltvZmYtY2FudmFzKj1vdmVybGF5XSB7XG4gIHotaW5kZXg6IDk5OTk7XG59XG5cbltvZmYtY2FudmFzKj1zaGlmdF0ge1xuICB6LWluZGV4OiAwO1xufVxuXG4vKipcbiAqIEFuaW1hdGlvblxuICovXG5cbltvZmYtY2FudmFzXSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAwcHgpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIDBweCk7XG59XG5cbltjYW52YXNdLCBbb2ZmLWNhbnZhc10ge1xuICAvKkBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDMwMG1zO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMDBtcztcbiAgfSovXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMzAwbXM7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMDBtcztcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IC8qIFByZXZlbnRzIGZsaWNrZXJpbmcsIG1heSBiZSByZW1vdmVkIGlmIGV4cGVyaWVuY2luZyBwcm9ibGVtcyB3aXRoIGZpeGVkIGJhY2tncm91bmQgaW1hZ2VzIGluIENocm9tZS4gKi9cbn1cblxuW29mZi1jYW52YXMqPXNoaWZ0XVtvZmYtY2FudmFzKj10b3BdIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwcHgsIDUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgNTAlKTtcbn1cblxuW29mZi1jYW52YXMqPXNoaWZ0XVtvZmYtY2FudmFzKj1yaWdodF0ge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDBweCk7XG59XG5cbltvZmYtY2FudmFzKj1zaGlmdF1bb2ZmLWNhbnZhcyo9Ym90dG9tXSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAtNTAlKTtcbn1cblxuW29mZi1jYW52YXMqPXNoaWZ0XVtvZmYtY2FudmFzKj1sZWZ0XSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIDBweCk7XG59XG5cbiNzYi1ibG9ja2VyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDk5O1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcyBlYXNlIDBzO1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zYi1vcGVuaW5nICNzYi1ibG9ja2VyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zYi1vcGVuZWQgI3NiLWJsb2NrZXIge1xuICBvcGFjaXR5OiAwLjY7XG59XG5cbi5jdXN0b20tZmx1aWQtd2lkdGgge1xuICB3aWR0aDogMTAwJTtcbiAgLy8gd2lkdGg6IDg1JTtcblxuICAvLyBtaW4td2lkdGg6IDE0MHB4O1xuICAvLyBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAvLyAgIHdpZHRoOiA3MCU7XG4gIC8vIH1cbn1cblxuLmN1c3RvbS1kdXJhdGlvbi00MDAge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IC40cztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjRzO1xufVxuXG4vKipcbiAqIFByaW50XG4gKi9cblxuQG1lZGlhIHByaW50IHtcbiAgW2NhbnZhc10ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMHB4LCAwcHgpICFpbXBvcnRhbnQ7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KSAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDBweCwgMHB4KSAhaW1wb3J0YW50O1xuICB9XG5cbiAgW29mZi1jYW52YXNdIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8gRGVmYXVsdCBWYXJpYWJsZXNcblxuLy8gU2xpY2sgaWNvbiBlbnRpdHkgY29kZXMgb3V0cHV0cyB0aGUgZm9sbG93aW5nXG4vLyBcIlxcMjE5MFwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaQXCJcbi8vIFwiXFwyMTkyXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLihpJcIlxuLy8gXCJcXDIwMjJcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKAolwiXG5cbiRzbGljay1mb250LXBhdGg6IFwiLi9mb250cy9cIiAhZGVmYXVsdDtcbiRzbGljay1mb250LWZhbWlseTogXCJpY29tb29uXCIgIWRlZmF1bHQ7XG4kc2xpY2stbG9hZGVyLXBhdGg6IFwiLi9cIiAhZGVmYXVsdDtcbiRzbGljay1hcnJvdy1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jb2xvcjogI0U4RThFOCAhZGVmYXVsdDtcbiRzbGljay1kb3QtY29sb3ItYWN0aXZlOiAjMjUzQzNBICFkZWZhdWx0O1xuJHNsaWNrLXByZXYtY2hhcmFjdGVyOiBcIlxcZTkwMlwiICFkZWZhdWx0O1xuJHNsaWNrLW5leHQtY2hhcmFjdGVyOiBcIlxcZTkwM1wiICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jaGFyYWN0ZXI6IFwiXFxlOTE0XCIgIWRlZmF1bHQ7XG4kc2xpY2stZG90LXNpemU6IDEzcHggIWRlZmF1bHQ7XG4kc2xpY2stb3BhY2l0eS1kZWZhdWx0OiAxICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktb24taG92ZXI6IDEgIWRlZmF1bHQ7XG4kc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlOiAwLjUgIWRlZmF1bHQ7XG5cbkBmdW5jdGlvbiBzbGljay1pbWFnZS11cmwoJHVybCkge1xuICBAaWYgZnVuY3Rpb24tZXhpc3RzKGltYWdlLXVybCkge1xuICAgIEByZXR1cm4gaW1hZ2UtdXJsKCR1cmwpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIHVybCgkc2xpY2stbG9hZGVyLXBhdGggKyAkdXJsKTtcbiAgfVxufVxuXG5AZnVuY3Rpb24gc2xpY2stZm9udC11cmwoJHVybCkge1xuICBAaWYgZnVuY3Rpb24tZXhpc3RzKGZvbnQtdXJsKSB7XG4gICAgQHJldHVybiBmb250LXVybCgkdXJsKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiB1cmwoJHNsaWNrLWZvbnQtcGF0aCArICR1cmwpO1xuICB9XG59XG5cbi8qIFNsaWRlciAqL1xuXG4uc2xpY2stbGlzdCB7XG4gIC5zbGljay1sb2FkaW5nICYge1xuICAgIC8vYmFja2dyb3VuZDogI2ZmZiBzbGljay1pbWFnZS11cmwoXCIuLi9pbWcvbG9hZGVyLnN2Z1wiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgfVxufVxuXG4vKiBJY29ucyAqL1xuQGlmICRzbGljay1mb250LWZhbWlseSA9PSBcInNsaWNrXCIge1xuICBAZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogXCJzbGlja1wiO1xuICAgIHNyYzogc2xpY2stZm9udC11cmwoXCJzbGljay5lb3RcIik7XG4gICAgc3JjOiBzbGljay1mb250LXVybChcInNsaWNrLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2sud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay5zdmcjc2xpY2tcIikgZm9ybWF0KFwic3ZnXCIpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB9XG59XG5cbi8qIEFycm93cyAqL1xuXG4uc2xpY2stcHJldixcbi5zbGljay1uZXh0IHtcbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDY4cHg7XG4gIHdpZHRoOiA0OHB4O1xuICBsaW5lLWhlaWdodDogMDtcbiAgZm9udC1zaXplOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRvcDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAvL2JvcmRlcjogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xuICBvdXRsaW5lOiBub25lO1xuICB6LWluZGV4OiAyO1xuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cbiAgJi5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xuICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIHRleHQtc2hhZG93OiAwcHggMnB4IHJnYmEoMCwgNTEsIDEwMiwgMC40KTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LWZhbWlseTogJHNsaWNrLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc2l6ZTogMy41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAkc2xpY2stYXJyb3ctY29sb3I7XG4gICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktZGVmYXVsdDtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICB9XG59XG5cbi5zbGljay1wcmV2IHtcbiAgbGVmdDogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDRweDtcbiAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICB9XG4gICY6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb250ZW50OiAkc2xpY2stcHJldi1jaGFyYWN0ZXI7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgY29udGVudDogJHNsaWNrLW5leHQtY2hhcmFjdGVyO1xuICAgIH1cbiAgfVxufVxuXG4uc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiAwO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDtcbiAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG4gICY6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb250ZW50OiAkc2xpY2stbmV4dC1jaGFyYWN0ZXI7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgY29udGVudDogJHNsaWNrLXByZXYtY2hhcmFjdGVyO1xuICAgIH1cbiAgfVxufVxuXG4vKiBEb3RzICovXG5cbi5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIHtcbiAgLy9tYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4uc2xpY2stZG90cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAtMjVweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIHdpZHRoOiAxMHB4O1xuICAgIG1hcmdpbjogMCA1cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYnV0dG9uIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICB3aWR0aDogMTBweDtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBsaW5lLWhlaWdodDogMHB4O1xuICAgICAgZm9udC1zaXplOiAwcHg7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW9uLWhvdmVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBjb250ZW50OiAkc2xpY2stZG90LWNoYXJhY3RlcjtcbiAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC1zaXplOiAkc2xpY2stZG90LXNpemU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yO1xuICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlO1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG4gICAgICBjb2xvcjogJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU7XG4gICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xuICAgIH1cbiAgfVxufVxuXG4vKiBTbGlkZXIgKi9cblxuLnNsaWNrLXNsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zbGljay1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAmLmRyYWdnaW5nIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY3Vyc29yOiBoYW5kO1xuICB9XG59XG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zbGljay10cmFjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG5cbiAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG59XG4uc2xpY2stc2xpZGUge1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIGltZyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gICYuc2xpY2stbG9hZGluZyBpbWcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBkaXNwbGF5OiBub25lO1xuXG4gICYuZHJhZ2dpbmcgaW1nIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC5zbGljay1pbml0aWFsaXplZCAmIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5zbGljay1sb2FkaW5nICYge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC5zbGljay12ZXJ0aWNhbCAmIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cbn1cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiLypcbj09IG1hbGlodSBqcXVlcnkgY3VzdG9tIHNjcm9sbGJhciBwbHVnaW4gPT1cblBsdWdpbiBVUkk6IGh0dHA6Ly9tYW5vcy5tYWxpaHUuZ3IvanF1ZXJ5LWN1c3RvbS1jb250ZW50LXNjcm9sbGVyXG4qL1xuXG5cblxuLypcbkNPTlRFTlRTOiBcblx0MS4gQkFTSUMgU1RZTEUgLSBQbHVnaW4ncyBiYXNpYy9lc3NlbnRpYWwgQ1NTIHByb3BlcnRpZXMgKG5vcm1hbGx5LCBzaG91bGQgbm90IGJlIGVkaXRlZCkuIFxuXHQyLiBWRVJUSUNBTCBTQ1JPTExCQVIgLSBQb3NpdGlvbmluZyBhbmQgZGltZW5zaW9ucyBvZiB2ZXJ0aWNhbCBzY3JvbGxiYXIuIFxuXHQzLiBIT1JJWk9OVEFMIFNDUk9MTEJBUiAtIFBvc2l0aW9uaW5nIGFuZCBkaW1lbnNpb25zIG9mIGhvcml6b250YWwgc2Nyb2xsYmFyLlxuXHQ0LiBWRVJUSUNBTCBBTkQgSE9SSVpPTlRBTCBTQ1JPTExCQVJTIC0gUG9zaXRpb25pbmcgYW5kIGRpbWVuc2lvbnMgb2YgMi1heGlzIHNjcm9sbGJhcnMuIFxuXHQ1LiBUUkFOU0lUSU9OUyAtIENTUzMgdHJhbnNpdGlvbnMgZm9yIGhvdmVyIGV2ZW50cywgYXV0by1leHBhbmRlZCBhbmQgYXV0by1oaWRkZW4gc2Nyb2xsYmFycy4gXG5cdDYuIFNDUk9MTEJBUiBDT0xPUlMsIE9QQUNJVFkgQU5EIEJBQ0tHUk9VTkRTIFxuXHRcdDYuMSBUSEVNRVMgLSBTY3JvbGxiYXIgY29sb3JzLCBvcGFjaXR5LCBkaW1lbnNpb25zLCBiYWNrZ3JvdW5kcyBldGMuIHZpYSByZWFkeS10by11c2UgdGhlbWVzLlxuKi9cblxuXG5cbi8qIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLiBCQVNJQyBTVFlMRSAgXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbi5tQ3VzdG9tU2Nyb2xsYmFyeyAtbXMtdG91Y2gtYWN0aW9uOiBwaW5jaC16b29tOyB0b3VjaC1hY3Rpb246IHBpbmNoLXpvb207IC8qIGRpcmVjdCBwb2ludGVyIGV2ZW50cyB0byBqcyAqLyB9XG4ubUN1c3RvbVNjcm9sbGJhci5tQ1Nfbm9fc2Nyb2xsYmFyLCAubUN1c3RvbVNjcm9sbGJhci5tQ1NfdG91Y2hfYWN0aW9ueyAtbXMtdG91Y2gtYWN0aW9uOiBhdXRvOyB0b3VjaC1hY3Rpb246IGF1dG87IH1cblxuLm1DdXN0b21TY3JvbGxCb3h7IC8qIGNvbnRhaW5zIHBsdWdpbidzIG1hcmt1cCAqL1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBkaXJlY3Rpb246IGx0cjtcbn1cblxuLm1DU0JfY29udGFpbmVyeyAvKiBjb250YWlucyB0aGUgb3JpZ2luYWwgY29udGVudCAqL1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG5cblxuLyogXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjIuIFZFUlRJQ0FMIFNDUk9MTEJBUiBcbnktYXhpc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4ubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXJ7IG1hcmdpbi1yaWdodDogMzBweDsgfVxuXG4ubUNTQl9jb250YWluZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbnsgbWFyZ2luLXJpZ2h0OiAwOyB9IC8qIG5vbi12aXNpYmxlIHNjcm9sbGJhciAqL1xuXG4ubUNTLWRpci1ydGwgPiAubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXJ7IC8qIFJUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMzBweDtcbn1cblxuLm1DUy1kaXItcnRsID4gLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVyLm1DU19ub19zY3JvbGxiYXJfeS5tQ1NfeV9oaWRkZW57IG1hcmdpbi1sZWZ0OiAwOyB9IC8qIFJUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xuXG4ubUNTQl9zY3JvbGxUb29sc3sgLyogY29udGFpbnMgc2Nyb2xsYmFyIG1hcmt1cCAoZHJhZ2dhYmxlIGVsZW1lbnQsIGRyYWdnZXIgcmFpbCwgYnV0dG9ucyBldGMuKSAqL1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTZweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xufVxuXG4ubUNTQl9vdXRzaWRlICsgLm1DU0Jfc2Nyb2xsVG9vbHN7IHJpZ2h0OiAtMjZweDsgfSAvKiBzY3JvbGxiYXIgcG9zaXRpb246IG91dHNpZGUgKi9cblxuLm1DUy1kaXItcnRsID4gLm1DU0JfaW5zaWRlID4gLm1DU0Jfc2Nyb2xsVG9vbHMsIFxuLm1DUy1kaXItcnRsID4gLm1DU0Jfb3V0c2lkZSArIC5tQ1NCX3Njcm9sbFRvb2xzeyAvKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xufVxuXG4ubUNTLWRpci1ydGwgPiAubUNTQl9vdXRzaWRlICsgLm1DU0Jfc2Nyb2xsVG9vbHN7IGxlZnQ6IC0yNnB4OyB9IC8qIFJUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAoc2Nyb2xsYmFyIHBvc2l0aW9uOiBvdXRzaWRlKSAqL1xuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyQ29udGFpbmVyeyAvKiBjb250YWlucyB0aGUgZHJhZ2dhYmxlIGVsZW1lbnQgYW5kIGRyYWdnZXIgcmFpbCBtYXJrdXAgKi9cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwOyBcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIGEgKyAubUNTQl9kcmFnZ2VyQ29udGFpbmVyeyBtYXJnaW46IDIwcHggMDsgfVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHtcbiAgICB3aWR0aDogMnB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDE2cHg7IC1tb3otYm9yZGVyLXJhZGl1czogMTZweDsgYm9yZGVyLXJhZGl1czogMTZweDtcbn1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcnsgLyogdGhlIGRyYWdnYWJsZSBlbGVtZW50ICovXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMzBweDsgLyogbWluaW11bSBkcmFnZ2VyIGhlaWdodCAqL1xuICAgIHotaW5kZXg6IDE7XG59XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IC8qIHRoZSBkcmFnZ2VyIGVsZW1lbnQgKi9cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDRweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxNnB4OyAtbW96LWJvcmRlci1yYWRpdXM6IDE2cHg7IGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IHdpZHRoOiAxMnB4OyAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqLyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbHsgd2lkdGg6IDhweDsgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi8gfVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCxcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bnsgYm90dG9tOiAwOyB9XG5cblxuXG4vKiBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMy4gSE9SSVpPTlRBTCBTQ1JPTExCQVIgXG54LWF4aXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuLm1DU0JfaG9yaXpvbnRhbC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lcntcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgLy9tYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5tQ1NCX2hvcml6b250YWwubUNTQl9vdXRzaWRlID4gLm1DU0JfY29udGFpbmVyeyBtaW4taGVpZ2h0OiAxMDAlOyB9XG5cbi5tQ1NCX2hvcml6b250YWwgPiAubUNTQl9jb250YWluZXIubUNTX25vX3Njcm9sbGJhcl94Lm1DU194X2hpZGRlbnsgbWFyZ2luLWJvdHRvbTogMDsgfSAvKiBub24tdmlzaWJsZSBzY3JvbGxiYXIgKi9cblxuLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFse1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogMTZweDtcbiAgICB0b3A6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG59XG5cbi5tQ3VzdG9tU2Nyb2xsQm94ICsgLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLFxuLm1DdXN0b21TY3JvbGxCb3ggKyAubUNTQl9zY3JvbGxUb29scyArIC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbHsgYm90dG9tOiAtMjZweDsgfSAvKiBzY3JvbGxiYXIgcG9zaXRpb246IG91dHNpZGUgKi9cblxuLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIGEgKyAubUNTQl9kcmFnZ2VyQ29udGFpbmVyeyBtYXJnaW46IDAgMjBweDsgfVxuXG4ubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWx7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgbWFyZ2luOiA2cHggMDtcbn1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJ7XG4gICAgd2lkdGg6IDMwcHg7IC8qIG1pbmltdW0gZHJhZ2dlciB3aWR0aCAqL1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsZWZ0OiAwO1xufVxuXG4ubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcntcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICBtYXJnaW46IDZweCBhdXRvO1xufVxuXG4ubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuICAgIGhlaWdodDogMTJweDsgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi9cbiAgICBtYXJnaW46IDJweCBhdXRvO1xufVxuXG4ubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlse1xuICAgIGhlaWdodDogOHB4OyAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqL1xuICAgIG1hcmdpbjogNHB4IDA7XG59XG5cbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9idXR0b25MZWZ0LFxuLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2J1dHRvblJpZ2h0e1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9idXR0b25MZWZ0eyBsZWZ0OiAwOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9idXR0b25SaWdodHsgcmlnaHQ6IDA7IH1cblxuXG5cbi8qIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG40LiBWRVJUSUNBTCBBTkQgSE9SSVpPTlRBTCBTQ1JPTExCQVJTIFxueXgtYXhpcyBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuLm1DU0JfY29udGFpbmVyX3dyYXBwZXJ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLm1DU0JfY29udGFpbmVyX3dyYXBwZXIgPiAubUNTQl9jb250YWluZXJ7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7IC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDsgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbCA+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWx7IGJvdHRvbTogMjBweDsgfVxuXG4ubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsID4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFseyByaWdodDogMjBweDsgfVxuXG4vKiBub24tdmlzaWJsZSBob3Jpem9udGFsIHNjcm9sbGJhciAqL1xuLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl94Lm1DU194X2hpZGRlbiArIC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWx7IGJvdHRvbTogMDsgfVxuXG4vKiBub24tdmlzaWJsZSB2ZXJ0aWNhbCBzY3JvbGxiYXIvUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXG4ubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3kubUNTX3lfaGlkZGVuICsgLm1DU0Jfc2Nyb2xsVG9vbHMgfiAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwsIFxuLm1DUy1kaXItcnRsID4gLm1DdXN0b21TY3JvbGxCb3gubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFseyByaWdodDogMDsgfVxuXG4vKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cbi5tQ1MtZGlyLXJ0bCA+IC5tQ3VzdG9tU2Nyb2xsQm94Lm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbC5tQ1NCX2luc2lkZSA+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbHsgbGVmdDogMjBweDsgfVxuXG4vKiBub24tdmlzaWJsZSBzY3JvbGxiYXIvUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXG4ubUNTLWRpci1ydGwgPiAubUN1c3RvbVNjcm9sbEJveC5tQ1NCX3ZlcnRpY2FsX2hvcml6b250YWwubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3kubUNTX3lfaGlkZGVuICsgLm1DU0Jfc2Nyb2xsVG9vbHMgfiAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWx7IGxlZnQ6IDA7IH1cblxuLm1DUy1kaXItcnRsID4gLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVyX3dyYXBwZXJ7IC8qIFJUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMzBweDtcbn1cblxuLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbiA+IC5tQ1NCX2NvbnRhaW5lcnsgcGFkZGluZy1yaWdodDogMDsgfVxuXG4ubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3gubUNTX3hfaGlkZGVuID4gLm1DU0JfY29udGFpbmVyeyBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4ubUN1c3RvbVNjcm9sbEJveC5tQ1NCX3ZlcnRpY2FsX2hvcml6b250YWwubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3kubUNTX3lfaGlkZGVue1xuICAgIG1hcmdpbi1yaWdodDogMDsgLyogbm9uLXZpc2libGUgc2Nyb2xsYmFyICovXG4gICAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi8qIG5vbi12aXNpYmxlIGhvcml6b250YWwgc2Nyb2xsYmFyICovXG4ubUN1c3RvbVNjcm9sbEJveC5tQ1NCX3ZlcnRpY2FsX2hvcml6b250YWwubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3gubUNTX3hfaGlkZGVueyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cblxuXG4vKiBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuNS4gVFJBTlNJVElPTlMgIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4ubUNTQl9zY3JvbGxUb29scywgXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bixcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDtcbiAgICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDtcbiAgICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xufVxuXG4ubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlcl9iYXIsIC8qIGF1dG8tZXhwYW5kZWQgc2Nyb2xsYmFyICovXG4ubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlclJhaWx7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiB3aWR0aCAuMnMgZWFzZS1vdXQgLjJzLCBoZWlnaHQgLjJzIGVhc2Utb3V0IC4ycywgXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLXJpZ2h0IC4ycyBlYXNlLW91dCAuMnMsIFxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3AgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLWJvdHRvbSAuMnMgZWFzZS1vdXQgLjJzLFxuICAgICAgICAgICAgICAgIG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDsgXG4gICAgLW1vei10cmFuc2l0aW9uOiB3aWR0aCAuMnMgZWFzZS1vdXQgLjJzLCBoZWlnaHQgLjJzIGVhc2Utb3V0IC4ycywgXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLXJpZ2h0IC4ycyBlYXNlLW91dCAuMnMsIFxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3AgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLWJvdHRvbSAuMnMgZWFzZS1vdXQgLjJzLFxuICAgICAgICAgICAgICAgIG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDsgXG4gICAgLW8tdHJhbnNpdGlvbjogd2lkdGggLjJzIGVhc2Utb3V0IC4ycywgaGVpZ2h0IC4ycyBlYXNlLW91dCAuMnMsIFxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0IC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1yaWdodCAuMnMgZWFzZS1vdXQgLjJzLCBcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wIC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1ib3R0b20gLjJzIGVhc2Utb3V0IC4ycyxcbiAgICAgICAgICAgICAgICBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7IFxuICAgIHRyYW5zaXRpb246IHdpZHRoIC4ycyBlYXNlLW91dCAuMnMsIGhlaWdodCAuMnMgZWFzZS1vdXQgLjJzLCBcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tcmlnaHQgLjJzIGVhc2Utb3V0IC4ycywgXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tYm90dG9tIC4ycyBlYXNlLW91dCAuMnMsXG4gICAgICAgICAgICAgICAgb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0OyBcbn1cblxuXG5cbi8qIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG42LiBTQ1JPTExCQVIgQ09MT1JTLCBPUEFDSVRZIEFORCBCQUNLR1JPVU5EUyAgXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbi8qIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuNi4xIFRIRU1FUyBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbi8qIGRlZmF1bHQgdGhlbWUgKFwibGlnaHRcIikgKi9cblxuLm1DU0Jfc2Nyb2xsVG9vbHN7IG9wYWNpdHk6IDAuNzU7IGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTc1KVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NzUpXCI7IH1cblxuLm1DUy1hdXRvSGlkZSA+IC5tQ3VzdG9tU2Nyb2xsQm94ID4gLm1DU0Jfc2Nyb2xsVG9vbHMsXG4ubUNTLWF1dG9IaWRlID4gLm1DdXN0b21TY3JvbGxCb3ggfiAubUNTQl9zY3JvbGxUb29sc3sgb3BhY2l0eTogMDsgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MClcIjsgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTApXCI7IH1cblxuLm1DdXN0b21TY3JvbGxiYXIgPiAubUN1c3RvbVNjcm9sbEJveCA+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnLFxuLm1DdXN0b21TY3JvbGxiYXIgPiAubUN1c3RvbVNjcm9sbEJveCB+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnLFxuLm1DdXN0b21TY3JvbGxCb3g6aG92ZXIgPiAubUNTQl9zY3JvbGxUb29scyxcbi5tQ3VzdG9tU2Nyb2xsQm94OmhvdmVyIH4gLm1DU0Jfc2Nyb2xsVG9vbHMsXG4ubUNTLWF1dG9IaWRlOmhvdmVyID4gLm1DdXN0b21TY3JvbGxCb3ggPiAubUNTQl9zY3JvbGxUb29scyxcbi5tQ1MtYXV0b0hpZGU6aG92ZXIgPiAubUN1c3RvbVNjcm9sbEJveCB+IC5tQ1NCX3Njcm9sbFRvb2xzeyBvcGFjaXR5OiAxOyBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0xMDApXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0xMDApXCI7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjQpO1xuICAgIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTQwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NDApXCI7IFxufVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC43NSk7XG4gICAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NzUpXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjsgXG59XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjg1KTtcbiAgICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT04NSlcIjsgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTg1KVwiOyBcbn1cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFye1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC45KTtcbiAgICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT05MClcIjsgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTkwKVwiOyBcbn1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCxcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0e1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChtQ1NCX2J1dHRvbnMucG5nKTsgLyogY3NzIHNwcml0ZXMgKi9cbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIG9wYWNpdHk6IDAuNDsgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NDApXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT00MClcIjsgXG59XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwe1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbiAgICAvKiBcbiAgICBzcHJpdGVzIGxvY2F0aW9ucyBcbiAgICBsaWdodDogMCAwLCAtMTZweCAwLCAtMzJweCAwLCAtNDhweCAwLCAwIC03MnB4LCAtMTZweCAtNzJweCwgLTMycHggLTcycHhcbiAgICBkYXJrOiAtODBweCAwLCAtOTZweCAwLCAtMTEycHggMCwgLTEyOHB4IDAsIC04MHB4IC03MnB4LCAtOTZweCAtNzJweCwgLTExMnB4IC03MnB4XG4gICAgKi9cbn1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bntcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yMHB4O1xuICAgIC8qIFxuICAgIHNwcml0ZXMgbG9jYXRpb25zXG4gICAgbGlnaHQ6IDAgLTIwcHgsIC0xNnB4IC0yMHB4LCAtMzJweCAtMjBweCwgLTQ4cHggLTIwcHgsIDAgLTkycHgsIC0xNnB4IC05MnB4LCAtMzJweCAtOTJweFxuICAgIGRhcms6IC04MHB4IC0yMHB4LCAtOTZweCAtMjBweCwgLTExMnB4IC0yMHB4LCAtMTI4cHggLTIwcHgsIC04MHB4IC05MnB4LCAtOTZweCAtOTJweCwgLTExMiAtOTJweFxuICAgICovXG59XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnR7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNDBweDtcbiAgICAvKiBcbiAgICBzcHJpdGVzIGxvY2F0aW9ucyBcbiAgICBsaWdodDogMCAtNDBweCwgLTIwcHggLTQwcHgsIC00MHB4IC00MHB4LCAtNjBweCAtNDBweCwgMCAtMTEycHgsIC0yMHB4IC0xMTJweCwgLTQwcHggLTExMnB4XG4gICAgZGFyazogLTgwcHggLTQwcHgsIC0xMDBweCAtNDBweCwgLTEyMHB4IC00MHB4LCAtMTQwcHggLTQwcHgsIC04MHB4IC0xMTJweCwgLTEwMHB4IC0xMTJweCwgLTEyMHB4IC0xMTJweFxuICAgICovXG59XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0e1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTU2cHg7XG4gICAgLyogXG4gICAgc3ByaXRlcyBsb2NhdGlvbnMgXG4gICAgbGlnaHQ6IDAgLTU2cHgsIC0yMHB4IC01NnB4LCAtNDBweCAtNTZweCwgLTYwcHggLTU2cHgsIDAgLTEyOHB4LCAtMjBweCAtMTI4cHgsIC00MHB4IC0xMjhweFxuICAgIGRhcms6IC04MHB4IC01NnB4LCAtMTAwcHggLTU2cHgsIC0xMjBweCAtNTZweCwgLTE0MHB4IC01NnB4LCAtODBweCAtMTI4cHgsIC0xMDBweCAtMTI4cHgsIC0xMjBweCAtMTI4cHhcbiAgICAqL1xufVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcDpob3Zlcixcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd246aG92ZXIsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0OmhvdmVyLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQ6aG92ZXJ7IG9wYWNpdHk6IDAuNzU7IGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTc1KVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NzUpXCI7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXA6YWN0aXZlLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bjphY3RpdmUsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0OmFjdGl2ZSxcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0OmFjdGl2ZXsgb3BhY2l0eTogMC45OyBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT05MClcIjsgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTkwKVwiOyB9XG5cblxuLyogdGhlbWU6IFwiZGFya1wiICovXG5cbi5tQ1MtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlseyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMTUpOyB9XG5cbi5tQ1MtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC43NSk7IH1cblxuLm1DUy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjg1KTsgfVxuXG4ubUNTLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjkpOyB9XG5cbi5tQ1MtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVweyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAwOyB9XG5cbi5tQ1MtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0yMHB4OyB9XG5cbi5tQ1MtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnR7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC00MHB4OyB9XG5cbi5tQ1MtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtNTZweDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cblxuXG4vKiB0aGVtZTogXCJsaWdodC0yXCIsIFwiZGFyay0yXCIgKi9cblxuLm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHtcbiAgICB3aWR0aDogNHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC4xKTtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDFweDsgLW1vei1ib3JkZXItcmFkaXVzOiAxcHg7IGJvcmRlci1yYWRpdXM6IDFweDtcbn1cblxuLm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLWRhcmstMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG4gICAgd2lkdGg6IDRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuNzUpO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMXB4OyAtbW96LWJvcmRlci1yYWRpdXM6IDFweDsgYm9yZGVyLXJhZGl1czogMXB4O1xufVxuXG4ubUNTLWxpZ2h0LTIubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLWxpZ2h0LTIubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgbWFyZ2luOiA2cHggYXV0bztcbn1cblxuLm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjg1KTsgfVxuXG4ubUNTLWxpZ2h0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtbGlnaHQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjkpOyB9XG5cbi5tQ1MtbGlnaHQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVweyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAwOyB9XG5cbi5tQ1MtbGlnaHQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMjBweDsgfVxuXG4ubUNTLWxpZ2h0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0e1x0YmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggLTQwcHg7IH1cblxuLm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHR7IGJhY2tncm91bmQtcG9zaXRpb246IC00MHB4IC01NnB4OyB9XG5cblxuLyogdGhlbWU6IFwiZGFyay0yXCIgKi9cblxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMSk7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxcHg7IC1tb3otYm9yZGVyLXJhZGl1czogMXB4OyBib3JkZXItcmFkaXVzOiAxcHg7XG59XG5cbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuNzUpO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMXB4OyAtbW96LWJvcmRlci1yYWRpdXM6IDFweDsgYm9yZGVyLXJhZGl1czogMXB4O1xufVxuXG4ubUNTLWRhcmstMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC44NSk7IH1cblxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuOSk7IH1cblxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IDA7IH1cblxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3dueyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTIwcHg7IH1cblxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTQwcHg7IH1cblxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodHtcdGJhY2tncm91bmQtcG9zaXRpb246IC0xMjBweCAtNTZweDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cblxuXG4vKiB0aGVtZTogXCJsaWdodC10aGlja1wiLCBcImRhcmstdGhpY2tcIiAqL1xuXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7XG4gICAgd2lkdGg6IDRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuMSk7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAycHg7IC1tb3otYm9yZGVyLXJhZGl1czogMnB4OyBib3JkZXItcmFkaXVzOiAycHg7XG59XG5cbi5tQ1MtbGlnaHQtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG4gICAgd2lkdGg6IDZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuNzUpO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMnB4OyAtbW96LWJvcmRlci1yYWRpdXM6IDJweDsgYm9yZGVyLXJhZGl1czogMnB4O1xufVxuXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLWRhcmstdGhpY2subUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlse1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNHB4O1xuICAgIG1hcmdpbjogNnB4IDA7XG59XG5cbi5tQ1MtbGlnaHQtdGhpY2subUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNnB4O1xuICAgIG1hcmdpbjogNXB4IGF1dG87XG59XG5cbi5tQ1MtbGlnaHQtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuODUpOyB9XG5cbi5tQ1MtbGlnaHQtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtbGlnaHQtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC45KTsgfVxuXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IDA7IH1cblxuLm1DUy1saWdodC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtMjBweDsgfVxuXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdHtcdGJhY2tncm91bmQtcG9zaXRpb246IC0yMHB4IC00MHB4OyB9XG5cbi5tQ1MtbGlnaHQtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwcHggLTU2cHg7IH1cblxuXG4vKiB0aGVtZTogXCJkYXJrLXRoaWNrXCIgKi9cblxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjEpO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMnB4OyAtbW96LWJvcmRlci1yYWRpdXM6IDJweDsgYm9yZGVyLXJhZGl1czogMnB4O1xufVxuXG4ubUNTLWRhcmstdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC43NSk7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAycHg7IC1tb3otYm9yZGVyLXJhZGl1czogMnB4OyBib3JkZXItcmFkaXVzOiAycHg7XG59XG5cbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC44NSk7IH1cblxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWRhcmstdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC45KTsgfVxuXG4ubUNTLWRhcmstdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggMDsgfVxuXG4ubUNTLWRhcmstdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3dueyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMjBweDsgfVxuXG4ubUNTLWRhcmstdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTAwcHggLTQwcHg7IH1cblxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHR7XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTAwcHggLTU2cHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cblxuLyogdGhlbWU6IFwibGlnaHQtdGhpblwiLCBcImRhcmstdGhpblwiICovXG5cbi5tQ1MtbGlnaHQtdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlseyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuMSk7IH1cblxuLm1DUy1saWdodC10aGluLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IHdpZHRoOiA0cHg7IH1cblxuLm1DUy1saWdodC10aGluLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWx7IHdpZHRoOiAxMDAlOyB9XG5cbi5tQ1MtbGlnaHQtdGhpbi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcntcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICBtYXJnaW46IDZweCBhdXRvO1xufVxuXG5cbi8qIHRoZW1lIFwiZGFyay10aGluXCIgKi9cblxuLy8ubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlseyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMTUpOyB9XG5cbi8vLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuNzUpOyB9XG5cbi5tQ1MtZGFyay10aGluLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcnsgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0MzQzNDMzsgXG59XG4ubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgICAvKiBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyAqL1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGN0ZBRkE7XG59XG5cbi5tQ1MtZGFyay10aGluLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjg1KTsgfVxuXG4ubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC45KTsgfVxuXG4ubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwe1x0YmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggMDsgfVxuXG4ubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0yMHB4OyB9XG5cbi5tQ1MtZGFyay10aGluLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTQwcHg7IH1cblxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTU2cHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cblxuLyogdGhlbWUgXCJyb3VuZGVkXCIsIFwicm91bmRlZC1kYXJrXCIsIFwicm91bmRlZC1kb3RzXCIsIFwicm91bmRlZC1kb3RzLWRhcmtcIiAqL1xuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjE1KTsgfVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLCBcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciwgXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIsIFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJ7IGhlaWdodDogMTRweDsgfVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG4gICAgd2lkdGg6IDE0cHg7XG4gICAgbWFyZ2luOiAwIDFweDtcbn1cblxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyLCBcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyLCBcbi5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyLCBcbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJ7IHdpZHRoOiAxNHB4OyB9XG5cbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuICAgIGhlaWdodDogMTRweDtcbiAgICBtYXJnaW46IDFweCAwO1xufVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcntcbiAgICB3aWR0aDogMTZweDsgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi9cbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgbWFyZ2luOiAtMXB4IDA7XG59XG5cbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlseyB3aWR0aDogNHB4OyAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqLyB9XG5cbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG4gICAgaGVpZ2h0OiAxNnB4OyAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqL1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIG1hcmdpbjogMCAtMXB4O1xufVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkICsgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlse1xuICAgIGhlaWdodDogNHB4OyAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqL1xuICAgIG1hcmdpbjogNnB4IDA7XG59XG5cbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVweyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC03MnB4OyB9XG5cbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTkycHg7IH1cblxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTEycHg7IH1cblxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHR7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEyOHB4OyB9XG5cblxuLyogdGhlbWUgXCJyb3VuZGVkLWRhcmtcIiwgXCJyb3VuZGVkLWRvdHMtZGFya1wiICovXG5cbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjc1KTsgfVxuXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlseyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMTUpOyB9XG5cbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjg1KTsgfVxuXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjkpOyB9XG5cbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC03MnB4OyB9XG5cbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bnsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTkycHg7IH1cblxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMTEycHg7IH1cblxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTEyOHB4OyB9XG5cblxuLyogdGhlbWUgXCJyb3VuZGVkLWRvdHNcIiwgXCJyb3VuZGVkLWRvdHMtZGFya1wiICovXG5cbi5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsIC5tQ1NCX2RyYWdnZXJSYWlseyB3aWR0aDogNHB4OyB9XG5cbi5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG59XG5cbi5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlse1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQWdBQUFBSUNBWUFBQURFRDc2TEFBQUFORWxFUVZRWVYyTmtJQUFZaVZidy8vOS9ZNkRpTTFBTkpveU1qR2RCYkxnSlFBWC9rVTBES2dETGthUUF2eFc0SEV2UUZ3Q1JjeElKSzFYem5BQUFBQUJKUlU1RXJrSmdnZz09XCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteTtcbiAgICBvcGFjaXR5OiAwLjM7XG4gICAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MzApXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0zMClcIjsgXG59XG5cbi5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbHtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICBtYXJnaW46IDZweCAwO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuLm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTcycHg7IH1cblxuLm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3dueyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtOTJweDsgfVxuXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnR7IGJhY2tncm91bmQtcG9zaXRpb246IC0yMHB4IC0xMTJweDsgfVxuXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjBweCAtMTI4cHg7IH1cblxuXG4vKiB0aGVtZSBcInJvdW5kZWQtZG90cy1kYXJrXCIgKi9cblxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlse1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQWdBQUFBSUNBWUFBQURFRDc2TEFBQUFMRWxFUVZRWVYyTmtJQUFZU1ZGZ0RGUjhCcXJCQkVpZkJiR1JUZmlQWmhwWWppUUZCSzNBNmw2Q3ZnQUFFOWtHQ2QxbXZnRUFBQUFBU1VWT1JLNUNZSUk9XCIpO1xufVxuXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXB7IGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC03MnB4OyB9XG5cbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3dueyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtOTJweDsgfVxuXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMHB4IC0xMTJweDsgfVxuXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHR7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMDBweCAtMTI4cHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cblxuLyogdGhlbWUgXCIzZFwiLCBcIjNkLWRhcmtcIiwgXCIzZC10aGlja1wiLCBcIjNkLXRoaWNrLWRhcmtcIiAqL1xuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMjU1LDI1NSwyNTUsMC41KSAwJSwgcmdiYSgyNTUsMjU1LDI1NSwwKSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgY29sb3Itc3RvcCgwJSxyZ2JhKDI1NSwyNTUsMjU1LDAuNSkpLCBjb2xvci1zdG9wKDEwMCUscmdiYSgyNTUsMjU1LDI1NSwwKSkpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMjU1LDI1NSwyNTUsMC41KSAwJSxyZ2JhKDI1NSwyNTUsMjU1LDApIDEwMCUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDI1NSwyNTUsMjU1LDAuNSkgMCUscmdiYSgyNTUsMjU1LDI1NSwwKSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMjU1LDI1NSwyNTUsMC41KSAwJSxyZ2JhKDI1NSwyNTUsMjU1LDApIDEwMCUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgyNTUsMjU1LDI1NSwwLjUpIDAlLHJnYmEoMjU1LDI1NSwyNTUsMCkgMTAwJSk7XG59XG5cbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LDI1NSwyNTUsMC41KSAwJSwgcmdiYSgyNTUsMjU1LDI1NSwwKSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLHJnYmEoMjU1LDI1NSwyNTUsMC41KSksIGNvbG9yLXN0b3AoMTAwJSxyZ2JhKDI1NSwyNTUsMjU1LDApKSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwyNTUsMjU1LDAuNSkgMCUscmdiYSgyNTUsMjU1LDI1NSwwKSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwyNTUsMjU1LDAuNSkgMCUscmdiYSgyNTUsMjU1LDI1NSwwKSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsMjU1LDI1NSwwLjUpIDAlLHJnYmEoMjU1LDI1NSwyNTUsMCkgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyNTUsMjU1LDI1NSwwLjUpIDAlLHJnYmEoMjU1LDI1NSwyNTUsMCkgMTAwJSk7XG59XG5cblxuLyogdGhlbWUgXCIzZFwiLCBcIjNkLWRhcmtcIiAqL1xuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwgLm1DU0JfZHJhZ2dlciwgXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCAubUNTQl9kcmFnZ2VyeyBoZWlnaHQ6IDcwcHg7IH1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciwgXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJ7IHdpZHRoOiA3MHB4OyB9XG5cbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29scywgXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29sc3tcbiAgICBvcGFjaXR5OiAxO1xuICAgIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTMwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MzApXCI7IFxufVxuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcnsgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxNnB4OyAtbW96LWJvcmRlci1yYWRpdXM6IDE2cHg7IGJvcmRlci1yYWRpdXM6IDE2cHg7IH1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlse1xuICAgIHdpZHRoOiA4cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjIpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDFweCAwIDFweCByZ2JhKDAsMCwwLDAuNSksIGluc2V0IC0xcHggMCAxcHggcmdiYSgyNTUsMjU1LDI1NSwwLjIpO1xufVxuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXHQgXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogIzU1NTsgfVxuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyeyB3aWR0aDogOHB4OyB9XG5cbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWx7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgbWFyZ2luOiA0cHggMDtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwwLjUpLCBpbnNldCAwIC0xcHggMXB4IHJnYmEoMjU1LDI1NSwyNTUsMC4yKTtcbn1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgbWFyZ2luOiA0cHggYXV0bztcbn1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVweyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtNzJweDsgfVxuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bnsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTkycHg7IH1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnR7IGJhY2tncm91bmQtcG9zaXRpb246IC00MHB4IC0xMTJweDsgfVxuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHR7IGJhY2tncm91bmQtcG9zaXRpb246IC00MHB4IC0xMjhweDsgfVxuXG5cbi8qIHRoZW1lIFwiM2QtZGFya1wiICovXG5cbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlse1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC4xKTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAxcHggMCAxcHggcmdiYSgwLDAsMCwwLjEpO1xufVxuXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlseyBib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwwLjEpOyB9XG5cbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVweyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTcycHg7IH1cblxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bnsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC05MnB4OyB9XG5cbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnR7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjBweCAtMTEycHg7IH1cblxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHR7XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTEyOHB4OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXG5cbi8qIHRoZW1lOiBcIjNkLXRoaWNrXCIsIFwiM2QtdGhpY2stZGFya1wiICovXG5cbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scywgXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc3tcbiAgICBvcGFjaXR5OiAxO1xuICAgIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTMwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MzApXCI7IFxufVxuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMsIFxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMsIFxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJDb250YWluZXIsIFxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcnsgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA3cHg7IC1tb3otYm9yZGVyLXJhZGl1czogN3B4OyBib3JkZXItcmFkaXVzOiA3cHg7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcnsgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHg7IC1tb3otYm9yZGVyLXJhZGl1czogNXB4OyBib3JkZXItcmFkaXVzOiA1cHg7IH1cblxuLm1DU0JfaW5zaWRlICsgLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLCBcbi5tQ1NCX2luc2lkZSArIC5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FseyByaWdodDogMXB4OyB9XG5cbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCwgXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbHsgYm94LXNoYWRvdzogaW5zZXQgMXB4IDAgMXB4IHJnYmEoMCwwLDAsMC4xKSwgaW5zZXQgMCAwIDE0cHggcmdiYSgwLDAsMCwwLjUpOyB9XG5cbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLCBcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWx7XG4gICAgYm90dG9tOiAxcHg7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsMC4xKSwgaW5zZXQgMCAwIDE0cHggcmdiYSgwLDAsMCwwLjUpO1xufVxuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDFweCAwIDAgcmdiYSgyNTUsMjU1LDI1NSwwLjQpO1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIG1hcmdpbjogMnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xufVxuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcnsgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LDAuNCk7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsICBcbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICM1NTU7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIHdpZHRoOiBhdXRvO1xufVxuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMDUpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDFweCAxcHggMTZweCByZ2JhKDAsMCwwLDAuMSk7XG59XG5cbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVweyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtNzJweDsgfVxuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bnsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTkycHg7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnR7IGJhY2tncm91bmQtcG9zaXRpb246IC00MHB4IC0xMTJweDsgfVxuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHR7XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtMTI4cHg7IH1cblxuXG4vKiB0aGVtZTogXCIzZC10aGljay1kYXJrXCIgKi9cblxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHN7IGJveC1zaGFkb3c6IGluc2V0IDAgMCAxNHB4IHJnYmEoMCwwLDAsMC4yKTsgfVxuXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFseyBib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwwLjEpLCBpbnNldCAwIDAgMTRweCByZ2JhKDAsMCwwLDAuMik7IH1cblxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcnsgYm94LXNoYWRvdzogaW5zZXQgMXB4IDAgMCByZ2JhKDI1NSwyNTUsMjU1LDAuNCksIGluc2V0IC0xcHggMCAwIHJnYmEoMCwwLDAsMC4yKTsgfVxuIFxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyeyBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsMC40KSwgaW5zZXQgMCAtMXB4IDAgcmdiYSgwLDAsMCwwLjIpOyB9XG5cbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsICBcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICM3Nzc7IH1cblxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMDUpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDFweCAxcHggMTZweCByZ2JhKDAsMCwwLDAuMSk7XG59XG5cbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlseyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC03MnB4OyB9XG5cbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtOTJweDsgfVxuXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTExMnB4OyB9XG5cbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0e1x0YmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC0xMjhweDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cblxuXG4vKiB0aGVtZTogXCJtaW5pbWFsXCIsIFwibWluaW1hbC1kYXJrXCIgKi9cblxuLm1DU0Jfb3V0c2lkZSArIC5tQ1MtbWluaW1hbC5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLCBcbi5tQ1NCX291dHNpZGUgKyAubUNTLW1pbmltYWwtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2Fse1xuICAgIHJpZ2h0OiAwOyBcbiAgICBtYXJnaW46IDEycHggMDsgXG59XG5cbi5tQ3VzdG9tU2Nyb2xsQm94Lm1DUy1taW5pbWFsICsgLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLCBcbi5tQ3VzdG9tU2Nyb2xsQm94Lm1DUy1taW5pbWFsICsgLm1DU0Jfc2Nyb2xsVG9vbHMgKyAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwsIFxuLm1DdXN0b21TY3JvbGxCb3gubUNTLW1pbmltYWwtZGFyayArIC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCwgXG4ubUN1c3RvbVNjcm9sbEJveC5tQ1MtbWluaW1hbC1kYXJrICsgLm1DU0Jfc2Nyb2xsVG9vbHMgKyAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWx7XG4gICAgYm90dG9tOiAwOyBcbiAgICBtYXJnaW46IDAgMTJweDsgXG59XG5cbi8qIFJUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xuLm1DUy1kaXItcnRsID4gLm1DU0Jfb3V0c2lkZSArIC5tQ1MtbWluaW1hbC5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLCBcbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX291dHNpZGUgKyAubUNTLW1pbmltYWwtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2Fse1xuICAgIGxlZnQ6IDA7IFxuICAgIHJpZ2h0OiBhdXRvO1xufVxuXG4ubUNTLW1pbmltYWwubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLW1pbmltYWwtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlseyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4ubUNTLW1pbmltYWwubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCAubUNTQl9kcmFnZ2VyLCBcbi5tQ1MtbWluaW1hbC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwgLm1DU0JfZHJhZ2dlcnsgaGVpZ2h0OiA1MHB4OyB9XG5cbi5tQ1MtbWluaW1hbC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciwgXG4ubUNTLW1pbmltYWwtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlcnsgd2lkdGg6IDUwcHg7IH1cblxuLm1DUy1taW5pbWFsLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuMik7XG4gICAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MjApXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0yMClcIjsgXG59XG5cbi5tQ1MtbWluaW1hbC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1taW5pbWFsLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFye1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC41KTtcbiAgICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT01MClcIjsgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTUwKVwiOyBcbn1cblxuXG4vKiB0aGVtZTogXCJtaW5pbWFsLWRhcmtcIiAqL1xuXG4ubUNTLW1pbmltYWwtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjIpO1xuICAgIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTIwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MjApXCI7IFxufVxuXG4ubUNTLW1pbmltYWwtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1taW5pbWFsLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjUpO1xuICAgIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTUwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NTApXCI7IFxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cblxuXG4vKiB0aGVtZSBcImxpZ2h0LTNcIiwgXCJkYXJrLTNcIiAqL1xuXG4ubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlse1xuICAgIHdpZHRoOiA2cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjIpO1xufVxuXG4ubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcnsgd2lkdGg6IDZweDsgfVxuXG4ubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWx7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA2cHg7XG4gICAgbWFyZ2luOiA1cHggMDtcbn1cblxuLm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCArIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCArIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWx7XG4gICAgd2lkdGg6IDEycHg7XG59XG5cbi5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCArIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWx7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICAgIG1hcmdpbjogMnB4IDA7XG59XG5cbi5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVweyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtNzJweDsgfVxuXG4ubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3dueyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtOTJweDsgfVxuXG4ubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtMTEycHg7IH1cblxuLm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHR7IGJhY2tncm91bmQtcG9zaXRpb246IC00MHB4IC0xMjhweDsgfVxuXG5cbi8qIHRoZW1lIFwiZGFyay0zXCIgKi9cblxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuNzUpOyB9XG5cbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjg1KTsgfVxuXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC45KTsgfVxuXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlseyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMSk7IH1cblxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC03MnB4OyB9XG5cbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bnsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC05MnB4OyB9XG5cbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC0xMTJweDsgfVxuXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0e1x0YmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC0xMjhweDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cblxuXG4vKiB0aGVtZSBcImluc2V0XCIsIFwiaW5zZXQtZGFya1wiLCBcImluc2V0LTJcIiwgXCJpbnNldC0yLWRhcmtcIiwgXCJpbnNldC0zXCIsIFwiaW5zZXQtMy1kYXJrXCIgKi9cblxuLm1DUy1pbnNldC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtaW5zZXQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHtcbiAgICB3aWR0aDogMTJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMik7XG59XG5cbi5tQ1MtaW5zZXQubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1pbnNldC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IFxuICAgIHdpZHRoOiA2cHg7XG4gICAgbWFyZ2luOiAzcHggNXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xufVxuXG4ubUNTLWluc2V0Lm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLWluc2V0LTIubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuICAgIGhlaWdodDogNnB4O1xuICAgIG1hcmdpbjogNXB4IDNweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xufVxuXG4ubUNTLWluc2V0Lm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtaW5zZXQtMi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlse1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTJweDtcbiAgICBtYXJnaW46IDJweCAwO1xufVxuXG4ubUNTLWluc2V0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAsIFxuLm1DUy1pbnNldC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAsIFxuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC03MnB4OyB9XG5cbi5tQ1MtaW5zZXQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duLCBcbi5tQ1MtaW5zZXQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24sIFxuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bnsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTkycHg7IH1cblxuLm1DUy1pbnNldC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQsIFxuLm1DUy1pbnNldC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCwgXG4ubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtMTEycHg7IH1cblxuLm1DUy1pbnNldC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0LCBcbi5tQ1MtaW5zZXQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0LCBcbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtMTI4cHg7IH1cblxuXG4vKiB0aGVtZSBcImluc2V0LWRhcmtcIiwgXCJpbnNldC0yLWRhcmtcIiwgXCJpbnNldC0zLWRhcmtcIiAqL1xuXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC43NSk7IH1cblxuLm1DUy1pbnNldC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuODUpOyB9XG5cbi5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC45KTsgfVxuXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC4xKTsgfVxuXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCwgXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLCBcbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtNzJweDsgfVxuXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duLCBcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biwgXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtOTJweDsgfVxuXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0LCBcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCwgXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnR7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjBweCAtMTEycHg7IH1cblxuLm1DUy1pbnNldC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQsIFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCwgXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0e1x0YmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC0xMjhweDsgfVxuXG5cbi8qIHRoZW1lIFwiaW5zZXQtMlwiLCBcImluc2V0LTItZGFya1wiICovXG5cbi5tQ1MtaW5zZXQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuMik7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94OyAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7IGJvcmRlci1jb2xvcjogIzAwMDsgYm9yZGVyLWNvbG9yOiByZ2JhKDAsMCwwLDAuMik7IH1cblxuXG4vKiB0aGVtZSBcImluc2V0LTNcIiwgXCJpbnNldC0zLWRhcmtcIiAqL1xuXG4ubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjYpOyB9XG5cbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC42KTsgfVxuXG4ubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuNzUpOyB9XG5cbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC44NSk7IH1cblxuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC45KTsgfVxuXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC43NSk7IH1cblxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuODUpOyB9XG5cbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjkpOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8iLCIvKipcbiAqIE93bCBDYXJvdXNlbCB2Mi4zLjRcbiAqIENvcHlyaWdodCAyMDEzLTIwMTggRGF2aWQgRGV1dHNjaFxuICogTGljZW5zZWQgdW5kZXI6IFNFRSBMSUNFTlNFIElOIGh0dHBzOi8vZ2l0aHViLmNvbS9Pd2xDYXJvdXNlbDIvT3dsQ2Fyb3VzZWwyL2Jsb2IvbWFzdGVyL0xJQ0VOU0VcbiAqL1xuIC5vd2wtY2Fyb3VzZWwsLm93bC1jYXJvdXNlbCAub3dsLWl0ZW17LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50O3Bvc2l0aW9uOnJlbGF0aXZlfS5vd2wtY2Fyb3VzZWx7ZGlzcGxheTpub25lO3dpZHRoOjEwMCU7ei1pbmRleDoxfS5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZXtwb3NpdGlvbjpyZWxhdGl2ZTstbXMtdG91Y2gtYWN0aW9uOnBhbi1ZO3RvdWNoLWFjdGlvbjptYW5pcHVsYXRpb247LW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbn0ub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2U6YWZ0ZXJ7Y29udGVudDpcIi5cIjtkaXNwbGF5OmJsb2NrO2NsZWFyOmJvdGg7dmlzaWJpbGl0eTpoaWRkZW47bGluZS1oZWlnaHQ6MDtoZWlnaHQ6MH0ub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2Utb3V0ZXJ7cG9zaXRpb246cmVsYXRpdmU7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMCwwKX0ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSwub3dsLWNhcm91c2VsIC5vd2wtd3JhcHBlcnstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuOy1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW47LW1zLWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZTNkKDAsMCwwKTstbW96LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCl9Lm93bC1jYXJvdXNlbCAub3dsLWl0ZW17bWluLWhlaWdodDoxcHg7ZmxvYXQ6bGVmdDstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuOy13ZWJraXQtdG91Y2gtY2FsbG91dDpub25lfS5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIGltZ3tkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMCV9Lm93bC1jYXJvdXNlbCAub3dsLWRvdHMuZGlzYWJsZWQsLm93bC1jYXJvdXNlbCAub3dsLW5hdi5kaXNhYmxlZHtkaXNwbGF5Om5vbmV9Lm5vLWpzIC5vd2wtY2Fyb3VzZWwsLm93bC1jYXJvdXNlbC5vd2wtbG9hZGVke2Rpc3BsYXk6YmxvY2t9Lm93bC1jYXJvdXNlbCAub3dsLWRvdCwub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtbmV4dCwub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtcHJldntjdXJzb3I6cG9pbnRlcjstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LWtodG1sLXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9Lm93bC1jYXJvdXNlbCAub3dsLW5hdiBidXR0b24ub3dsLW5leHQsLm93bC1jYXJvdXNlbCAub3dsLW5hdiBidXR0b24ub3dsLXByZXYsLm93bC1jYXJvdXNlbCBidXR0b24ub3dsLWRvdHtiYWNrZ3JvdW5kOjAgMDtjb2xvcjppbmhlcml0O2JvcmRlcjpub25lO3BhZGRpbmc6MCFpbXBvcnRhbnQ7Zm9udDppbmhlcml0fS5vd2wtY2Fyb3VzZWwub3dsLWxvYWRpbmd7b3BhY2l0eTowO2Rpc3BsYXk6YmxvY2t9Lm93bC1jYXJvdXNlbC5vd2wtaGlkZGVue29wYWNpdHk6MH0ub3dsLWNhcm91c2VsLm93bC1yZWZyZXNoIC5vd2wtaXRlbXt2aXNpYmlsaXR5OmhpZGRlbn0ub3dsLWNhcm91c2VsLm93bC1kcmFnIC5vd2wtaXRlbXstbXMtdG91Y2gtYWN0aW9uOnBhbi15O3RvdWNoLWFjdGlvbjpwYW4teTstd2Via2l0LXVzZXItc2VsZWN0Om5vbmU7LW1vei11c2VyLXNlbGVjdDpub25lOy1tcy11c2VyLXNlbGVjdDpub25lO3VzZXItc2VsZWN0Om5vbmV9Lm93bC1jYXJvdXNlbC5vd2wtZ3JhYntjdXJzb3I6bW92ZTtjdXJzb3I6Z3JhYn0ub3dsLWNhcm91c2VsLm93bC1ydGx7ZGlyZWN0aW9uOnJ0bH0ub3dsLWNhcm91c2VsLm93bC1ydGwgLm93bC1pdGVte2Zsb2F0OnJpZ2h0fS5vd2wtY2Fyb3VzZWwgLmFuaW1hdGVke2FuaW1hdGlvbi1kdXJhdGlvbjoxczthbmltYXRpb24tZmlsbC1tb2RlOmJvdGh9Lm93bC1jYXJvdXNlbCAub3dsLWFuaW1hdGVkLWlue3otaW5kZXg6MH0ub3dsLWNhcm91c2VsIC5vd2wtYW5pbWF0ZWQtb3V0e3otaW5kZXg6MX0ub3dsLWNhcm91c2VsIC5mYWRlT3V0e2FuaW1hdGlvbi1uYW1lOmZhZGVPdXR9QGtleWZyYW1lcyBmYWRlT3V0ezAle29wYWNpdHk6MX0xMDAle29wYWNpdHk6MH19Lm93bC1oZWlnaHR7dHJhbnNpdGlvbjpoZWlnaHQgLjVzIGVhc2UtaW4tb3V0fS5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIC5vd2wtbGF6eXtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC40cyBlYXNlfS5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIC5vd2wtbGF6eTpub3QoW3NyY10pLC5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIC5vd2wtbGF6eVtzcmNePVwiXCJde21heC1oZWlnaHQ6MH0ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSBpbWcub3dsLWxhenl7dHJhbnNmb3JtLXN0eWxlOnByZXNlcnZlLTNkfS5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby13cmFwcGVye3Bvc2l0aW9uOnJlbGF0aXZlO2hlaWdodDoxMDAlO2JhY2tncm91bmQ6IzAwMH0ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheS1pY29ue3Bvc2l0aW9uOmFic29sdXRlO2hlaWdodDo4MHB4O3dpZHRoOjgwcHg7bGVmdDo1MCU7dG9wOjUwJTttYXJnaW4tbGVmdDotNDBweDttYXJnaW4tdG9wOi00MHB4O2JhY2tncm91bmQ6dXJsKG93bC52aWRlby5wbGF5LnBuZykgbm8tcmVwZWF0O2N1cnNvcjpwb2ludGVyO3otaW5kZXg6MTstd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xcyBlYXNlfS5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5LWljb246aG92ZXJ7LW1zLXRyYW5zZm9ybTpzY2FsZSgxLjMsMS4zKTt0cmFuc2Zvcm06c2NhbGUoMS4zLDEuMyl9Lm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby1wbGF5LWljb24sLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby10bntkaXNwbGF5Om5vbmV9Lm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXRue29wYWNpdHk6MDtoZWlnaHQ6MTAwJTtiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlciBjZW50ZXI7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZTpjb250YWluO3RyYW5zaXRpb246b3BhY2l0eSAuNHMgZWFzZX0ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tZnJhbWV7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxO2hlaWdodDoxMDAlO3dpZHRoOjEwMCV9IiwiLyoqXG4gKiBPd2wgQ2Fyb3VzZWwgdjIuMy40XG4gKiBDb3B5cmlnaHQgMjAxMy0yMDE4IERhdmlkIERldXRzY2hcbiAqIExpY2Vuc2VkIHVuZGVyOiBTRUUgTElDRU5TRSBJTiBodHRwczovL2dpdGh1Yi5jb20vT3dsQ2Fyb3VzZWwyL093bENhcm91c2VsMi9ibG9iL21hc3Rlci9MSUNFTlNFXG4gKi9cbiAub3dsLXRoZW1lIC5vd2wtZG90cywub3dsLXRoZW1lIC5vd2wtbmF2e3RleHQtYWxpZ246Y2VudGVyOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudH0ub3dsLXRoZW1lIC5vd2wtbmF2e21hcmdpbi10b3A6MTBweH0ub3dsLXRoZW1lIC5vd2wtbmF2IFtjbGFzcyo9b3dsLV17Y29sb3I6I0ZGRjtmb250LXNpemU6MTRweDttYXJnaW46NXB4O3BhZGRpbmc6NHB4IDdweDtiYWNrZ3JvdW5kOiNENkQ2RDY7ZGlzcGxheTppbmxpbmUtYmxvY2s7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyLXJhZGl1czozcHh9Lm93bC10aGVtZSAub3dsLW5hdiBbY2xhc3MqPW93bC1dOmhvdmVye2JhY2tncm91bmQ6Izg2OTc5MTtjb2xvcjojRkZGO3RleHQtZGVjb3JhdGlvbjpub25lfS5vd2wtdGhlbWUgLm93bC1uYXYgLmRpc2FibGVke29wYWNpdHk6LjU7Y3Vyc29yOmRlZmF1bHR9Lm93bC10aGVtZSAub3dsLW5hdi5kaXNhYmxlZCsub3dsLWRvdHN7bWFyZ2luLXRvcDoxMHB4fS5vd2wtdGhlbWUgLm93bC1kb3RzIC5vd2wtZG90e2Rpc3BsYXk6aW5saW5lLWJsb2NrO3pvb206MX0ub3dsLXRoZW1lIC5vd2wtZG90cyAub3dsLWRvdCBzcGFue3dpZHRoOjEwcHg7aGVpZ2h0OjEwcHg7bWFyZ2luOjVweCA3cHg7YmFja2dyb3VuZDojRDZENkQ2O2Rpc3BsYXk6YmxvY2s7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OnZpc2libGU7dHJhbnNpdGlvbjpvcGFjaXR5IC4ycyBlYXNlO2JvcmRlci1yYWRpdXM6MzBweH0ub3dsLXRoZW1lIC5vd2wtZG90cyAub3dsLWRvdC5hY3RpdmUgc3Bhbiwub3dsLXRoZW1lIC5vd2wtZG90cyAub3dsLWRvdDpob3ZlciBzcGFue2JhY2tncm91bmQ6Izg2OTc5MX0iLCIvKlxuICogU21hclRpY2tlciBWZXJzaW9uIDEuNVxuICogaHR0cDovL3Bvd2VydXAuaXIvcHJvamVjdHMvc21hcnRpY2tlclxuICogQ29weSN7JG9wcG9zaXRlLWRpcmVjdGlvbn0gKGMpIDIwMTQgTWVnaGRhZCBIYWRpZGlcbiAqL1xuIC5zbWFydGlja2VyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBkaXJlY3Rpb246IGx0cjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLy9ib3JkZXItYm90dG9tOiAxcHggc29saWQgJHByaW1hcnktY29sb3I7XG4gIH1cbiAgXG4gIC5ib3gge1xuICAgIG1pbi1oZWlnaHQ6IDMwcHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuICBcbiAgLmJvcmRlciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgfVxuICBcbiAgLnJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIH1cbiAgXG4gIC5zaGFkb3cge1xuICAgIGJveC1zaGFkb3c6IDBweCAwcHggNXB4ICM5OTk7XG4gIH1cbiAgXG4gIC5zaXplMSB7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgXG4gIC5zbWFydGlja2VyIC5zZWMxLCAuc21hcnRpY2tlciAuc2VjMS0yLCAuc21hcnRpY2tlciAuc2VjMiwgLnNtYXJ0aWNrZXIgLnNlYzMsIC5zbWFydGlja2VyIC5zZWM0LCAuc21hcnRpY2tlciAuc2VjNSwgLnNtYXJ0aWNrZXIgLnNlYzYsIC5zbWFydGlja2VyIC5zZWM3IHtcbiAgICBmbG9hdDogI3skZGVmYXVsdC1kaXJlY3Rpb259O1xuICB9XG4gIFxuICAuc21hcnRpY2tlciAuc2VjMSB7XG4gICAgbWluLXdpZHRoOiAxMCU7XG4gIH1cbiAgXG4gIC5zbWFydGlja2VyIC5zZWMxLTIge1xuICAgIC8vbWluLXdpZHRoOiAxMCU7XG4gIH1cbiAgXG4gIC5zbWFydGlja2VyIC5zZWMyIHtcbiAgICBtaW4td2lkdGg6IDIwJTtcbiAgfVxuICBcbiAgLnNtYXJ0aWNrZXIgLnNlYzMge1xuICAgIG1pbi13aWR0aDogMzMuMzMzJTtcbiAgfVxuICBcbiAgLnNtYXJ0aWNrZXIgLnNlYzQge1xuICAgIG1pbi13aWR0aDogMjUlO1xuICB9XG4gIFxuICAuc21hcnRpY2tlciAuc2VjNSB7XG4gICAgbWluLXdpZHRoOiA1MCU7XG4gIH1cbiAgXG4gIC5zbWFydGlja2VyIC5zZWM2IHtcbiAgICBtaW4td2lkdGg6IDYwJTtcbiAgfVxuICBcbiAgLnNtYXJ0aWNrZXIgLnNlYzcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICBcbiAgLnNtYXJ0aWNrZXIgLm5ld3Nob2xkZXIsIC5zLXJ0bC5zbWFydGlja2VyIC5uZXdzaG9sZGVyIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICBcbiAgLnNtYXJ0aWNrZXIgdWwge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIH1cbiAgXG4gIC5zbWFydGlja2VyIC5zbWFydGlja2VyLWNhdHMsIC5zbWFydGlja2VyLWNhdHMgLmNhdGxpc3QsIC5zbWFydGlja2VyIC5zbWFydGlja2VyLWNhdGVnb3J5LCAuc21hcnRpY2tlciAuc21hcnRpY2tlci1uZXdzIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICBcbiAgLnNtYXJ0aWNrZXIgLnNtYXJ0aWNrZXItY2F0cywgLnNtYXJ0aWNrZXIgLnNtYXJ0aWNrZXItY2F0ZWdvcnkge1xuICAgIHRleHQtYWxpZ246ICN7JGRlZmF1bHQtZGlyZWN0aW9ufTtcbiAgfVxuICBcbiAgLnNtYXJ0aWNrZXIgbGkge1xuICAgIGhlaWdodDogMzBweDtcbiAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgfVxuICBcbiAgLnNtYXJ0aWNrZXIgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG4gIFxuICAuc21hcnRpY2tlciAuc21hcnRpY2tlci1uZXdzIHtcbiAgICB0ZXh0LWFsaWduOiAjeyRkZWZhdWx0LWRpcmVjdGlvbn07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIFxuICAuc21hcnRpY2tlciAuc21hcnRpY2tlci1uZXdzIHVsIHtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgXG4gIC5zbWFydGlja2VyIC5zbWFydGlja2VyLW5ld3MgdWwgbGkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDBweDtcbiAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IGF1dG87XG4gICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogYXV0bztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG4gIFxuICAuc21hcnRpY2tlciAuc21hcnRpY2tlci1uZXdzIHVsIGxpIGEge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cbiAgXG4gIC5zbWFydGlja2VyLWNhdGVnb3J5IGEge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgXG4gIC5jb3ZlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDBweDtcbiAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDBweDtcbiAgICB6LWluZGV4OiAyO1xuICAgIGZsb2F0OiAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259O1xuICB9XG4gIFxuICAubHRyIC5mbGFzaGVyIHtcbiAgICB3aWR0aDogMTBweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMTVweDtcbiAgICBmbG9hdDogI3skZGVmYXVsdC1kaXJlY3Rpb259O1xuICB9XG4gIFxuICAucnRsIC5mbGFzaGVyIHtcbiAgICB3aWR0aDogMTBweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDVweDtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgIGZsb2F0OiAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259O1xuICB9XG4gIFxuICAuc21hcnQtY29udHJvbGxlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDBweDtcbiAgICB0b3A6IDBweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgei1pbmRleDogMztcbiAgICBkaXNwbGF5OiBub25lOyAvL2hpZGUgY29udHJvbGxlclxuICB9XG4gIFxuICAucy1ydGwgLnNtYXJ0LWNvbnRyb2xsZXIge1xuICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMHB4O1xuICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IGF1dG87XG4gIH1cbiAgXG4gIC5zbWFydGlja2VyLW5ld3MgYSB7XG4gICAgY29sb3I6ICM2NjY7IFxuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgfVxuICBcbiAgLnNtYXJ0aWNrZXItY2F0cyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQ6ICM5OTk7XG4gIH1cbiAgXG4gIC5zbWFydGlja2VyLWNhdHMgYSB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIFxuICAuc21hcnRpY2tlci1jYXRlZ29yeSBhIHtcbiAgICBjb2xvcjogIzk5OTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgXG4gIC8qIC0tLS0tLS0tLS0gVGhlbWUgMSAtLS0tLS0tLS0tLSAqL1xuICAudGhlbWUxIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB9XG4gIFxuICAudGhlbWUxIC5zbWFydGlja2VyLWNhdHMgLiN7JGRlZmF1bHQtZGlyZWN0aW9ufSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMHB4O1xuICAgIC8vYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvc21hcnRpY2tlci8jeyRkZWZhdWx0LWRpcmVjdGlvbn0tZmxjLXcucG5nJykgbm8tcmVwZWF0ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn0gY2VudGVyO1xuICAgIHdpZHRoOiAyMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG4gIFxuICAudGhlbWUxIC5zbWFydGlja2VyLWNhdHMgLiN7JG9wcG9zaXRlLWRpcmVjdGlvbn0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwcHg7XG4gICAgdG9wOiAwcHg7XG4gICAgei1pbmRleDogMTtcbiAgICAvL2JhY2tncm91bmQ6IHVybCgnLi4vaW1nL3NtYXJ0aWNrZXIvI3skb3Bwb3NpdGUtZGlyZWN0aW9ufS1mbGMtdy5wbmcnKSBuby1yZXBlYXQgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufSBjZW50ZXI7XG4gICAgd2lkdGg6IDIwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbiAgXG4gIC5uby1jYXRlZ29yeSAuc21hcnRpY2tlci1jYXRzIC4jeyRkZWZhdWx0LWRpcmVjdGlvbn0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgXG4gIC50aGVtZTEgLmZsYXNoZXIge1xuICAgIGNvbG9yOiAjNjY2O1xuICB9XG4gIFxuICAuc21hcnRpY2tlci1jYXRzIGxpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICBcbiAgLnRoZW1lMSAuc21hcnRpY2tlci1jYXRzIHVsIGEgaW1nIHtcbiAgICBtYXJnaW46IDAgNXB4IDAgMjBweDtcbiAgfVxuICBcbiAgLyogLS0tLS0tLS0tLS0tLSBUaGVtZSAyIC0tLS0tLS0tLS0tLSAqL1xuICAudGhlbWUyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxuICBcbiAgLnRoZW1lMiAuc21hcnRpY2tlci1uZXdzIGEge1xuICAgIGNvbG9yOiAjMWExYTFhO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxuICBcbiAgLnRoZW1lMiAuc21hcnRpY2tlci1jYXRzIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMTZweDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6ICd8JztcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogOHB4O1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICBtYXJnaW46IGF1dG8gYXV0bztcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICB9XG4gIFxuICAudGhlbWUyIC5zbWFydGlja2VyLWNhdHMgLiN7JGRlZmF1bHQtZGlyZWN0aW9ufSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMHB4O1xuICAgIC8vYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvc21hcnRpY2tlci8jeyRkZWZhdWx0LWRpcmVjdGlvbn0tZmxjLWIucG5nJykgbm8tcmVwZWF0ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn0gY2VudGVyO1xuICAgIHdpZHRoOiAyMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG4gIFxuICAudGhlbWUyIC5zbWFydGlja2VyLWNhdHMgLiN7JG9wcG9zaXRlLWRpcmVjdGlvbn0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwcHg7XG4gICAgdG9wOiAwcHg7XG4gICAgei1pbmRleDogMTtcbiAgICAvL2JhY2tncm91bmQ6IHVybCgnLi4vaW1nL3NtYXJ0aWNrZXIvI3skb3Bwb3NpdGUtZGlyZWN0aW9ufS1mbGMtYi5wbmcnKSBuby1yZXBlYXQgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufSBjZW50ZXI7XG4gICAgLy9iYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9zbWFydGlja2VyLyN7JG9wcG9zaXRlLWRpcmVjdGlvbn0tZmxjLXcucG5nJykgbm8tcmVwZWF0ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn0gY2VudGVyO1xuICAgIHdpZHRoOiAyMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgXG4gIC5uby1jYXRlZ29yeSAuc21hcnRpY2tlci1jYXRzIC4jeyRkZWZhdWx0LWRpcmVjdGlvbn0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgXG4gIC50aGVtZTIgLnNtYXJ0aWNrZXItY2F0cyB1bCBhIHtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgXG4gIC50aGVtZTIgLnNtYXJ0aWNrZXItY2F0ZWdvcnkgYSB7XG4gICAgY29sb3I6ICM2NjY2NjY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG4gIFxuICAudGhlbWUyIC5mbGFzaGVyIHtcbiAgICBjb2xvcjogIzZjNmM2YztcbiAgfVxuICBcbiAgLnRoZW1lMiAudGlja2VydGl0bGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0NTc1ZDQ7XG4gIH1cbiAgXG4gIC50aGVtZTIgLnNtYXJ0aWNrZXItY2F0cyB1bCBhIGltZyB7XG4gICAgbWFyZ2luOiAwIDVweCAwIDIwcHg7XG4gIH1cbiAgXG4gIC8qIC0tLS0tLS0tLS0tLS0gVGhlbWUgMyAtLS0tLS0tLS0tLS0gKi9cbiAgLnRoZW1lMyB7XG4gICAgYmFja2dyb3VuZDogIzMzMztcbiAgfVxuICBcbiAgLnRoZW1lMyAuc21hcnRpY2tlci1uZXdzIGEge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gIFxuICAudGhlbWUzIC5zbWFydGlja2VyLWNhdHMge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gIH1cbiAgXG4gIC50aGVtZTMgLnNtYXJ0aWNrZXItY2F0cyAuI3skZGVmYXVsdC1kaXJlY3Rpb259LCAudGhlbWUzIC5zbWFydGlja2VyLWNhdHMgLiN7JG9wcG9zaXRlLWRpcmVjdGlvbn0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgXG4gIC50aGVtZTMgLnNtYXJ0aWNrZXItY2F0cyBhIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbiAgXG4gIC50aGVtZTMgLnNtYXJ0aWNrZXItY2F0ZWdvcnkgYSB7XG4gICAgY29sb3I6ICNjY2M7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG4gIFxuICAudGhlbWUzIC5mbGFzaGVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuICBcbiAgLnRoZW1lMyAudGlja2VydGl0bGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZDAwNzQ7XG4gIH1cbiAgXG4gIC8qIC0tLS0tLS0tLS0tLS0gVGhlbWUgNCAtLS0tLS0tLS0tLS0gKi9cbiAgLnRoZW1lNCB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgfVxuICBcbiAgLnRoZW1lNCAuc21hcnRpY2tlci1uZXdzIGEge1xuICAgIGNvbG9yOiAjNjY2O1xuICB9XG4gIFxuICAudGhlbWU0IC5zbWFydGlja2VyLWNhdHMge1xuICAgIGJhY2tncm91bmQ6ICM5OTk7XG4gIH1cbiAgXG4gIC50aGVtZTQgLnNtYXJ0aWNrZXItY2F0cyAuI3skZGVmYXVsdC1kaXJlY3Rpb259LCAudGhlbWU0IC5zbWFydGlja2VyLWNhdHMgLiN7JG9wcG9zaXRlLWRpcmVjdGlvbn0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgXG4gIC50aGVtZTQgLnNtYXJ0aWNrZXItY2F0cyBhIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbiAgXG4gIC50aGVtZTQgLnNtYXJ0aWNrZXItY2F0ZWdvcnkgYSB7XG4gICAgY29sb3I6ICM5OTk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG4gIFxuICAudGhlbWU0IC5mbGFzaGVyIHtcbiAgICBjb2xvcjogIzY2NjtcbiAgfVxuICBcbiAgLnRoZW1lNCAudGlja2VydGl0bGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGI2NGY7XG4gIH1cbiAgXG4gIC8qIC0tLS0tLS0tLS0tIFRleHQgQ29udHJvbGxlciAtLS0tLS0tLS0tLS0gKi9cbiAgLmMxIC5zbWFydC1jb250cm9sbGVyIHNwYW4ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGNvbG9yOiAjY2NjO1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwcHggOXB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICBmbG9hdDogI3skZGVmYXVsdC1kaXJlY3Rpb259O1xuICAgIGJvcmRlci0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDFweCBzb2xpZCAjZWVlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgMHM7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgMHM7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgMHM7XG4gIH1cbiAgXG4gIC5jMSAuc21hcnQtY29udHJvbGxlciBzcGFuOmhvdmVyIHtcbiAgICBjb2xvcjogI2JiYjtcbiAgICBiYWNrZ3JvdW5kOiAjZWZlZmVmO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgfVxuICBcbiAgLmMxIC5zbWFydC1jb250cm9sbGVyIHNwYW46YWN0aXZlIHtcbiAgICBjb2xvcjogIzk5OTtcbiAgICBiYWNrZ3JvdW5kOiAjZGZkZmRmO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dCAwcztcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dCAwcztcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dCAwcztcbiAgfVxuICBcbiAgLyogLS0tLS0tLS0tLS0gQzIgQ29udHJvbGxlciA9IEljb25zIC0tLS0tLS0tLS0tLSAqL1xuICAuYzIgLnNtYXJ0LWNvbnRyb2xsZXIgc3BhbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLy9iYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICM5OTk5OTk7XG4gICAgdGV4dC1pbmRlbnQ6IC0xMDAwMDBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDVweDtcbiAgICBmbG9hdDogI3skZGVmYXVsdC1kaXJlY3Rpb259O1xuICAgIGJvcmRlci0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgfVxuICBcbiAgLnMtcnRsLmMyIC5zbWFydC1jb250cm9sbGVyIHNwYW4ge1xuICAgIGJvcmRlci0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFweCBzb2xpZCAjZWVlO1xuICAgIGRpcmVjdGlvbjogbHRyO1xuICB9XG4gIFxuICAudGhlbWUzLmMyIC5zbWFydC1jb250cm9sbGVyIHNwYW4sIC50aGVtZTIuYzIgLnNtYXJ0LWNvbnRyb2xsZXIgc3BhbiB7XG4gICAgYm9yZGVyLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAvL3BhZGRpbmctdG9wOiAwO1xuICAgIC8vcGFkZGluZy1ib3R0b206IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICY6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDRweDtcbiAgICB9XG4gIH1cbiAgXG4gIC50aGVtZTEuYzIgLnNtYXJ0LWNvbnRyb2xsZXIgc3BhbiwgLnRoZW1lNC5jMiAuc21hcnQtY29udHJvbGxlciBzcGFuIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgLy9wYWRkaW5nLXRvcDogMDtcbiAgICAvL3BhZGRpbmctYm90dG9tOiAwO1xuICB9XG4gIFxuICAuYzIgLnNtYXJ0LWNvbnRyb2xsZXIgc3Bhbjpob3ZlciB7XG4gICAgY29sb3I6ICNiYmI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzO1xuICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzO1xuICB9XG4gIFxuICAuYzIgLnNtYXJ0LWNvbnRyb2xsZXIgc3BhbjphY3RpdmUge1xuICAgIGNvbG9yOiAjOTk5O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dCAwcztcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dCAwcztcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dCAwcztcbiAgfVxuICBcbiAgLmMyIC5uZXh0LW5ld3MsIC5jMiAubmV4dC1uZXdzOmFjdGl2ZSwgLmMyIC5uZXh0LW5ld3M6aG92ZXIge1xuICAgIC8qYmFja2dyb3VuZC1wb3NpdGlvbjogI3skb3Bwb3NpdGUtZGlyZWN0aW9ufSBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvc21hcnRpY2tlci9jb250cm9sbGVyLnBuZycpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7Ki9cbiAgfVxuICBcbiAgLmMyIC5wcmV2LW5ld3MsIC5jMiAucHJldi1uZXdzOmFjdGl2ZSwgLmMyIC5wcmV2LW5ld3M6aG92ZXIge1xuICAgIC8vYmFja2dyb3VuZC1wb3NpdGlvbjogI3skZGVmYXVsdC1kaXJlY3Rpb259IGNlbnRlcjtcbiAgICAvL2JhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL3NtYXJ0aWNrZXIvY29udHJvbGxlci5wbmcnKTtcbiAgICAvL2JhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIFxuICB9XG4gIFxuICAuYzIgLnBhdXNlLW5ld3MsIC5jMiAucGF1c2UtbmV3czphY3RpdmUsIC5jMiAucGF1c2UtbmV3czpob3ZlciB7XG4gICAgLypiYWNrZ3JvdW5kLXBvc2l0aW9uOiAjeyRkZWZhdWx0LWRpcmVjdGlvbn0gY2VudGVyO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL3NtYXJ0aWNrZXIvY29udHJvbGxlcjEucG5nJyk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsqL1xuICB9XG4gIFxuICAuYzIgLnBsYXktbmV3cywgLmMyIC5wbGF5LW5ld3M6YWN0aXZlLCAuYzIgLnBsYXktbmV3czpob3ZlciB7XG4gICAgLypiYWNrZ3JvdW5kLXBvc2l0aW9uOiAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9zbWFydGlja2VyL2NvbnRyb2xsZXIxLnBuZycpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7Ki9cbiAgfVxuICBcbiAgLmMyIC5wYXVzZS1uZXdzIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnfHwnO1xuICAgICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgICBmbG9hdDogI3skZGVmYXVsdC1kaXJlY3Rpb259O1xuICAgIH1cbiAgfVxuICBcbiAgLmMyIC5wbGF5LW5ld3Mge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXGU5MWEnO1xuICAgICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgICBmbG9hdDogI3skZGVmYXVsdC1kaXJlY3Rpb259O1xuICAgIH1cbiAgfVxuICBcbiAgLmMyIC5wcmV2LW5ld3Mge1xuICAgIC8vYmFja2dyb3VuZC1wb3NpdGlvbjogI3skZGVmYXVsdC1kaXJlY3Rpb259IGNlbnRlcjtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFxlOTE3JztcbiAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgZmxvYXQ6ICN7JGRlZmF1bHQtZGlyZWN0aW9ufTtcbiAgICB9XG4gIH1cbiAgXG4gIC5jMiAubmV4dC1uZXdzIHtcbiAgICAvL2JhY2tncm91bmQtcG9zaXRpb246ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn0gY2VudGVyO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXGU5MTYnO1xuICAgICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgICBmbG9hdDogI3skZGVmYXVsdC1kaXJlY3Rpb259O1xuICAgIH1cbiAgfVxuICBcbiAgLnByb2dyZXNzLWJhciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwcHg7XG4gICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwcHg7XG4gICAgei1pbmRleDogMztcbiAgfVxuICBcbiAgLm5vLXN1YmNhdGVnb3J5IC5zbWFydGlja2VyLWNhdGVnb3J5IHtcbiAgICBib3JkZXItI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXB4IHNvbGlkICNjY2M7XG4gICAgYmFja2dyb3VuZDogI2VlZTtcbiAgfVxuICBcbiAgLnRpY2tlcnRpdGxlIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlMjAwNDg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICB9XG4gIFxuICAudGhlbWUyLmMyIC5zbWFydC1jb250cm9sbGVyIHNwYW46aG92ZXIsIC50aGVtZTMuYzIgLnNtYXJ0LWNvbnRyb2xsZXIgc3Bhbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTtcbiAgfVxuICBcbiAgLnRoZW1lMi5jMiAuc21hcnQtY29udHJvbGxlciBzcGFuOmFjdGl2ZSwgLnRoZW1lMy5jMiAuc21hcnQtY29udHJvbGxlciBzcGFuOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzc3NztcbiAgfVxuICBcbiAgLnNtYXJ0aWNrZXIgLml0ZW0tZGF0ZSB7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIG1hcmdpbjogMCA1cHg7XG4gICAgY29sb3I6ICM5OTk7XG4gIH1cbiAgXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAvKi0tLS0tLS0tLS0tICBSVEwgU3VwcG9ydCAtLS0tLS0tLS0tKi9cbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC5zLXJ0bCB7XG4gICAgZGlyZWN0aW9uOiBydGw7XG4gIH1cbiAgXG4gIC5zLXJ0bCAuc2VjMSwgLnMtcnRsIC5zZWMxLTIsIC5zLXJ0bCAuc2VjMiwgLnMtcnRsIC5zZWMzLCAucy1ydGwgLnNlYzQsIC5zLXJ0bCAuc2VjNSwgLnMtcnRsIC5zZWM2LCAucy1ydGwgLnNlYzcge1xuICAgIGZsb2F0OiAjeyRkZWZhdWx0LWRpcmVjdGlvbn07XG4gIH1cbiAgXG4gIC5zLXJ0bCAuc21hcnRpY2tlci1uZXdzIHVsIHtcbiAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxNXB4O1xuICB9XG4gIFxuICAucy1ydGwgLnNtYXJ0aWNrZXItY2F0cyBhIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgfVxuICBcbiAgLnMtcnRsIC5zbWFydGlja2VyLWNhdGVnb3J5IGEge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgZm9udC1zaXplOiAxNnB4OyBcbiAgICBwYWRkaW5nOiAwIDVweDtcbiAgICBjb2xvcjogIzI1M0MzQTtcbiAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgfVxuICBcbiAgLnMtcnRsIC5zbWFydGlja2VyLW5ld3MgYSB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gIH1cbiAgXG4gIC5zLXJ0bC50aGVtZTIgLnNtYXJ0aWNrZXItY2F0cyAuI3skb3Bwb3NpdGUtZGlyZWN0aW9ufSB7XG4gICAgLy9iYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9zbWFydGlja2VyLyN7JGRlZmF1bHQtZGlyZWN0aW9ufS1mbGMtYi1ydGwucG5nJykgbm8tcmVwZWF0ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn0gY2VudGVyO1xuICB9XG4gIFxuICAucy1ydGwudGhlbWUyIC5zbWFydGlja2VyLWNhdHMgLiN7JGRlZmF1bHQtZGlyZWN0aW9ufSB7XG4gICAgLy9iYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9zbWFydGlja2VyLyN7JG9wcG9zaXRlLWRpcmVjdGlvbn0tZmxjLWItcnRsLnBuZycpIG5vLXJlcGVhdCAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259IGNlbnRlcjtcbiAgfVxuICBcbiAgLnMtcnRsLnRoZW1lMSAuc21hcnRpY2tlci1jYXRzIC4jeyRvcHBvc2l0ZS1kaXJlY3Rpb259IHtcbiAgICAvL2JhY2tncm91bmQ6IHVybCgnLi4vaW1nL3NtYXJ0aWNrZXIvI3skZGVmYXVsdC1kaXJlY3Rpb259LWZsYy13LXJ0bC5wbmcnKSBuby1yZXBlYXQgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufSBjZW50ZXI7XG4gIH1cbiAgXG4gIC5zLXJ0bC50aGVtZTEgLnNtYXJ0aWNrZXItY2F0cyAuI3skZGVmYXVsdC1kaXJlY3Rpb259IHtcbiAgICAvL2JhY2tncm91bmQ6IHVybCgnLi4vaW1nL3NtYXJ0aWNrZXIvI3skb3Bwb3NpdGUtZGlyZWN0aW9ufS1mbGMtdy1ydGwucG5nJykgbm8tcmVwZWF0ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn0gY2VudGVyO1xuICB9XG4gIFxuICBcbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIC8qLS0tLS0tLS0gIFJlc3BvbnNpdmUgU3VwcG9ydCAtLS0tLS0qL1xuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODUwcHgpIHtcbiAgICAuI3skb3Bwb3NpdGUtZGlyZWN0aW9ufSwgLiN7JGRlZmF1bHQtZGlyZWN0aW9ufSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfSIsIi8qIC0tLS0tLSBuYXZpZ2F0aW9uLCBwYW5lbCBhbmQgc3RpY2t5IGhlYWRlciAtLS0tLS0gU1RBUlQgLS0tLS0tICovXG5cbmhlYWRlciB7XG4gICAgLnNvY2lhbHMtYXJlYSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgbWFyZ2luOiAwLjVyZW0gMCAwO1xuICAgIH1cbiAgICAjc3RpY2t5LWhlYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgbWFyZ2luOiAwLjVyZW0gMCAxLjVyZW07XG4gICAgfVxufVxuXG4ubmF2LWNvbnRhaW5lciB7XG4gICAgLy8gW2Rpcj1sdHJdICZ7XG4gICAgLy8gICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIC8vIH1cbiAgICA+IHVsIHtcbiAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAuNjI1cmVtO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDEwNjApIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAuODVyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoMTE1MCkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMC44cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuOHJlbSAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuXG4gICAgICAgICAgICAgICAgW2Rpcj1cImx0clwiXSAmIHtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgPiAuc3VibWVudSB7XG4gICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnN1Ym1lbnUge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBib3gtc2hhZG93OiAwcHggMHB4IDIwcHggLTFweCByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAyMHB4IC0xcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAgICAgICAtbW96LWJveC1zaGFkb3c6IDBweCAwcHggMjBweCAtMXB4IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogNDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgLy8jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICBwYWRkaW5nOiAzNXB4IDUwcHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgLnN1Ym1lbnUtbGlzdCB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAxLjVyZW0gYXV0byAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb3VyLWl0ZW0tY29sdW1uO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxNDBweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjdmNjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMC43NXJlbTtcblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWRhcms7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgICAgICYuYWN0aXZlID4gYSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgjMWExYTFhLCAwLjgpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE0cHggMjBweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tZW51IHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgLnN0aWNreSAmIHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogI3skZGVmYXVsdC1kaXJlY3Rpb259O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc3VibWVudSB7XG4gICAgJi5zdHlsZS0xIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogLTVweDtcbiAgICAgICAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMnJlbTtcbiAgICAgICAgICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItI3skZGVmYXVsdC1kaXJlY3Rpb259OiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgJHdoaXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJyZW0pO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgICAgICAgICAgdG9wOiAycmVtO1xuICAgICAgICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IC00NXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMC41cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubWVudS1jYXRlZ29yeSB7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLm1lbnUtaGlnaGxpZ2h0cyB7XG4gICAgLm1lZGlhLW9iamVjdC1pbWcge1xuICAgICAgICB3aWR0aDogMzZweDtcbiAgICAgICAgaGVpZ2h0OiAzNnB4O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDYge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcblxuICAgICAgICBbZGlyPVwibHRyXCJdICYge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgICAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm9iamVjdHMtbGlzdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBAaW5jbHVkZSBmb3VyLWl0ZW0tY29sdW1uO1xuICAgIH1cblxuICAgIC5vYmplY3QtaXRlbSB7XG4gICAgICAgIG1pbi13aWR0aDogMTEwcHg7XG4gICAgICAgIC8vbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IC43cmVtO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAub2JqZWN0cy1saXN0Lmhhcy1zZXBhcmF0b3Ige1xuICAgICAgICAub2JqZWN0LWl0ZW0ge1xuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmhpZ2hsaWdodHMtdGl0bGUge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBmb250LXNpemU6ICRoaWdobGlnaHRzLXRpdGxlLXNpemU7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5tYWluLWhlYWRlci1iZWZvcmUge1xuICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWRhcms7XG4gICAgLy8gY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXNpemU6ICRtYWluLWhlYWRlci1iZWZvcmUtc2l6ZTtcbiAgICAvL3BhZGRpbmc6IDIuNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvL292ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRoZWFkZXItYm9yZGVyLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICB6LWluZGV4OiA5OTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBjb2xvcjogJHByaW1hcnktZGFyaztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIH1cblxuICAgIFtsYW5nPVwiZW5cIl0gJiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgfVxuXG4gICAgLnRvcC1sYW5ndWFnZXMge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktZm9udC1tZWRpdW07XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIG1hcmdpbjogMC41cmVtO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBuYm9vayB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiA3cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuYWN0aXZlLFxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWxlZnQge1xuICAgICAgICB0ZXh0LWFsaWduOiAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLndlYXRoZXItYXJlYSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWZvbnQtbWVkaXVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgICAgcGFkZGluZzogMCAzcHg7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZzogMC41cmVtIDNweDtcbiAgICAgICAgfVxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgPiBzcGFuIHtcbiAgICAgICAgLy9ib3JkZXItI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMC41cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC53ZWF0aGVyIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnd0ZW1wIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGNvbG9yOiAjNzliZmI5O1xuICAgIH1cbn1cblxuLm1haW4taGVhZGVyLWFmdGVyLFxuLm1haW4taGVhZGVyLWlubmVyIHtcbiAgICAvL21hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGhlYWRlci1ib3JkZXItY29sb3I7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC5kYXJrLXRoZW1lICYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbn1cblxuLm1haW4taGVhZGVyLWlubmVyLmhlYWRlci1zdGlja3kge1xuICAgIC8vYmFja2dyb3VuZC1jb2xvcjogI0Y3RkFGQTtcbiAgICB6LWluZGV4OiA5O1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluLW91dDtcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7XG5cbiAgICAvKiBNb2JpbGUgUG9ydHJhdGUgLSBMYW5kc2NhcGUgKi9cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA4OTZweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIHtcbiAgICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgICBib3JkZXI6IHRyYW5zcGFyZW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgfVxuXG4gICAgLmxvZ28td2hpdGUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5sb2dvIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5mb3Itc3RpY2t5IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IGRpdiA+IGEge1xuICAgICAgICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0aWNreSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgYm9yZGVyLXRvcDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHRyYW5zcGFyZW50O1xuXG4gICAgICAgIC5sb2dvIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAmOm5vdCgubG9nby0tZGFyay1tb2RlKSB7XG4gICAgICAgICAgICAgICAgLmF1dG8tZGFyay10aGVtZSAmIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAgICAgJi0tZGFyay1tb2RlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIC5hdXRvLWRhcmstdGhlbWUgJiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pY28tc2VhcmNoIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5sb2dvLXdoaXRlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuZm9yLXN0aWNreSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB9XG5cbiAgICAgICAgPiBhIHtcbiAgICAgICAgICAgIC8vY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1kYXJrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2VhcmNoLWJ0biB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgfVxufVxuXG4uaG9sZGVyLXdyYXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5pY28tdXNlciB7XG4gICAgICAgIC8vIC5zdGlja3kgJntcbiAgICAgICAgLy8gICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIC8vIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmhlYWRlciNtYWluLWhlYWRlciB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICB6LWluZGV4OiA5OTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgLy9tYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAuZnJvbnQgJixcbiAgICAgICAgLmRhcmstdGhlbWUgJiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubG9nbyxcbi5sb2dvLXdoaXRlIHtcbiAgICAvL3BhZGRpbmc6IDFyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC8vei1pbmRleDogOTk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICB9XG5cbiAgICAubWFpbi1oZWFkZXItaW5uZXIgJiB7XG4gICAgICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgIC8vIGltZ3tcbiAgICAgICAgLy8gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgLy8gICAgIHdpZHRoOiAxNzBweDtcbiAgICAgICAgLy8gICAgIH1cbiAgICAgICAgLy8gfVxuICAgIH1cblxuICAgIC8vICNhcmVhLXRvLXN0aWNrICYsIC5oZWFkZXItc3RpY2t5ICZcbiAgICAuc3RpY2t5ICYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIC8vIG1heC13aWR0aDogMTI1cHg7XG4gICAgICAgICAgICAvLyBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCl7XG4gICAgICAgICAgICB3aWR0aDogMTM0cHg7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlO1xuICAgICAgICAgICAgLy99XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5cbi5sb2dvIHtcbiAgICBpbWcge1xuICAgICAgICBjb2xvci1zY2hlbWU6IG9ubHkgbGlnaHQ7XG4gICAgICAgIHdpZHRoOiAxNjZweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDEycHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHdpZHRoOiAyOTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIC5hdXRvLWRhcmstdGhlbWUgJiB7XG4gICAgICAgIC8vICAgICBmaWx0ZXI6IGludmVydCgxKSBjb250cmFzdCgyKTtcbiAgICAgICAgLy8gfVxuICAgIH0gXG5cbiAgICAmOm5vdCgubG9nby0tZGFyay1tb2RlKSB7XG4gICAgICAgIC5hdXRvLWRhcmstdGhlbWUgJiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tZGFyay1tb2RlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgLmF1dG8tZGFyay10aGVtZSAmIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaG9sZGVyLWFyZWEge1xuICAgIC8vIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgLy8gYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgfVxuXG4gICAgaGVhZGVyICYsXG4gICAgI3N0aWNreS1hcmVhICYsXG4gICAgLmhlYWRlci1zdGlja3kge1xuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wZGYtYnRuIHtcbiAgICBzcGFuIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMjAwJSkgY29udHJhc3QoMTQwJSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5sb2dpbi1idG4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuXG4gICAgQGluY2x1ZGUgbmJvb2sge1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBjb2xvcjogJHByaW1hcnktZGFyaztcbiAgICAgICAgcGFkZGluZzogMCAxcmVtO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIEBpbmNsdWRlIG5ib29rIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktZGFyaztcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpIHtcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuXG4gICAgICAgIEBpbmNsdWRlIG5ib29rIHtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubWFpbi1oZWFkZXItYWZ0ZXIgLnNob3ctc3VibWVudSB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcblxuICAgIGxpLmFjdGl2ZSB7XG4gICAgICAgIC5zdWJtZW51IHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJGR1c3R5LWdyYXksIDAuMik7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tZW51LXBhbmVsIHtcbiAgICB1bCB7XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwLjJyZW0gMXJlbTtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGxpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgID4gYSxcbiAgICAgICAgICAgIHNwYW4gYSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudFthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSA+IGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuODVyZW0gMCAxcmVtIDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDAuNjI1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucGFuZWwtbGFuZ3VhZ2VzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgIH1cbn1cblxuLm1lbnUtcGFuZWwgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCB7XG4gICAgPiBhOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICA+IGEge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBib3JkZXItI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU5MTZcIjtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDM4cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTtcbiAgICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5MTdcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBrZXlmcmFtZXMgZmFkZW91dCB7XG4gICAgICAgIDAlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cblxuICAgICAgICA0MCUge1xuICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICB9XG5cbiAgICAgICAgMTAwJSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVvdXQge1xuICAgICAgICAwJSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgNDAlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgfVxuXG4gICAgICAgIDEwMCUge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zdWJtZW51IHtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcblxuICAgICAgICAmW2FyaWEtaGlkZGVuPVwidHJ1ZVwiXSB7XG4gICAgICAgICAgICBhbmltYXRpb246IDAuNXMgZWFzZS1vdXQgbm9ybWFsIGZvcndhcmRzIDEgZmFkZW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjYjNjN2M1O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc3VibWVudSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubWVudS5zdWJtZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgYTo6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogMTBweDtcbiAgICB9XG59XG5cbi5zdGlja3ktaGVhZGVyLXNwYWNlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubG9nby13aGl0ZSxcbi5pY28tcGRmLFxuLmljby1zZWFyY2gge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNhcmVhLXRvLXN0aWNrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogOTk5OTk5OTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAuZ3JpZC14IHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLm9wZW5lZCB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuXG4gICAgI2FyZWEtdG8tc3RpY2ssXG4gICAgLm1haW4taGVhZGVyLWlubmVyLmhlYWRlci1zdGlja3kge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgei1pbmRleDogOTk5O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAzcmVtO1xuICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAubG9nbyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgJjpub3QoLmxvZ28tLWRhcmstbW9kZSkge1xuICAgICAgICAgICAgICAgIC5hdXRvLWRhcmstdGhlbWUgJiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgICAgICYtLWRhcmstbW9kZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAuYXV0by1kYXJrLXRoZW1lICYge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubG9nby13aGl0ZSB7XG4gICAgICAgICAgICAvL3RleHQtYWxpZ246ICN7JGRlZmF1bHQtZGlyZWN0aW9ufTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlIDBzO1xuICAgICAgICAgICAgd2lkdGg6IDE0MHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAubG9nby13aGl0ZSxcbiAgICAgICAgLmljby1wZGYge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvLXBkZiB7XG4gICAgICAgICAgICAvL21hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAyLjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAudG9nZ2xlLW5hdi1wYW5lbCB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmljby11c2VyLFxuICAgICAgICAuYWNjb3VudC1tZW51LFxuICAgICAgICAuaWNvLXNlYXJjaCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1haW4taGVhZGVyLWlubmVyLmhlYWRlci1zdGlja3kge1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gM3JlbSAwLjVyZW07XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNjQ3ZTdjO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2cGFuZWwtY29sb3I7XG4gICAgfVxufVxuXG5odG1sLm9wZW5lZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnRvZ2dsZS1uYXYtcGFuZWwsXG4udG9nZ2xlLXNlYXJjaC1wYW5lbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgLy92ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgfVxuXG4gICAgLnN0dWNrLWhlYWRlciAmIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi50b2dnbGUtbmF2LXBhbmVsIHtcbiAgICBbZGlyPVwibHRyXCJdICYge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gICAgfVxufVxuXG4uY2FudmFzLXBhbmVsIHtcbiAgICBwYWRkaW5nOiA1MHB4IDYwcHg7XG4gICAgdG9wOiA1MHB4O1xuICAgIGJvdHRvbTogMDtcbiAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICAmLnNlYXJjaC1jYW52YXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNvY2lhbHMtYXJlYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAxLjI1cmVtIDAgMnJlbTtcbiAgICB9XG59XG5cbi5jbG9zZS1wYW5lbCB7XG4gICAgaGVpZ2h0OiA0cmVtO1xuXG4gICAgc3BhbiB7XG4gICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnByaW50LWVkaXRpb24tYXJlYSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICBwYWRkaW5nOiAycmVtIDA7XG4gICAgYm9yZGVyLWJvdHRvbTogM3B4IGRvdWJsZSAjZDZkNmQ2O1xuXG4gICAgaDYge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogIzQ2NDY0NjtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgY29sb3I6ICNhYmFiYWI7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNzY3JvbGwtY2F0IHtcbiAgICBvdmVyZmxvdzogc2Nyb2xsO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgICAvKiBJbnRlcm5ldCBFeHBsb3JlciAxMCsgKi9cbiAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG4gICAgLyogRmlyZWZveCAqL1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgfVxuXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAvKiBTYWZhcmkgYW5kIENocm9tZSAqL1xuICAgIH1cblxuICAgIC5tQ3VzdG9tU2Nyb2xsQm94IHtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgJi5oZWFkZXItdGFnLXdyYXAge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5oZWFkZXItdGFnLXdyYXAge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XG59XG5cbi5oZWFkZXItdGFnIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcblxuICAgIGEge1xuICAgICAgICBjb2xvcjogIzcxNzE3MTtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMC44cmVtO1xuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblxuICAgICAgICAgICAgLmRhcmstdGhlbWUgJiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRhcmstdGhlbWUgJiB7XG4gICAgICAgICAgICBjb2xvcjogIzcxNzE3MTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIE1vYmlsZSBQb3J0cmF0ZSAtIExhbmRzY2FwZSAqL1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDMyMHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDg5NnB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMikge1xuICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4ubmF2cGFuZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdnBhbmVsLWNvbG9yO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogOTk7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgfVxuXG4gICAgJl9fd3JhcCB7XG4gICAgICAgIC8vIGhlaWdodDogMTAwJTtcbiAgICAgICAgLy8gZGlzcGxheTogZmxleDtcbiAgICAgICAgLy8gZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG5cbiAgICAmX19mb290ZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgIH1cbn1cblxuLnRvZ2dsZS1tZWdhLW1lbnUge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxufVxuXG4ubWVnYS1tZW51IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxNzJmMmY7XG4gICAgcGFkZGluZzogMTVweCAxNXB4IDY4cHg7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogOTtcbiAgICAvLyBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogNjAxcHgpIGFuZCAobWluLWhlaWdodDogNjAwcHgpIHtcbiAgICAvLyAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgLy8gICAgIGhlaWdodDogNDUwcHg7XG4gICAgLy8gfVxuICAgIEBtZWRpYSAobWF4LWhlaWdodDogODAwcHgpIHtcbiAgICAgICAgLnN0aWNreSAmIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsgXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7IFxuICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2Nsb3NlIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBmb250LXNpemU6IDIzcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQycHg7XG4gICAgfVxuICAgIC5tZW51IHtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRsaWdodC1ncmVlbjE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLm1lbnVfX21haW4tY2F0ZWdvcnkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodC1ncmVlbjE7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5tZW51X19zdWItY2F0ZWdvcnkge1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLm1lbnVfX2NoaWxkLWNhdGVnb3J5IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNnB4O1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2FlZDdjNjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmdyb3VwLW1lbnUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICByb3ctZ2FwOiAzMHB4O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAwIDEuNXJlbTtcbiAgICB9XG4gICAgJl9faXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZ2FwOiAzMHB4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxuXG4gICAgLm1lbnUudmVydGljYWwge1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyM3B4KSBhbmQgKG1heC13aWR0aDogMTAzMHB4KSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygzOTBweCAvIDUpICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoNDkwcHggLyA1KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogLS0tLS0tIG5hdmlnYXRpb24sIHBhbmVsIGFuZCBzdGlja3kgaGVhZGVyIC0tLS0tLSBFTkQgLS0tLS0tICovXG4iLCJAbWl4aW4gZm91ci1pdGVtLWNvbHVtbiB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCg0LCBhdXRvKTtcbiAgICBncmlkLWF1dG8tY29sdW1uczogMWZyO1xuICAgIGdyaWQtYXV0by1mbG93OiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuQG1peGluIHRocmVlLWl0ZW0tY29sdW1uIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDMsIGF1dG8pO1xuICAgIGdyaWQtYXV0by1jb2x1bW5zOiAxZnI7XG4gICAgZ3JpZC1hdXRvLWZsb3c6IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG5AbWl4aW4gdHdvLWl0ZW0tY29sdW1uIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDIsIGF1dG8pO1xuICAgIGdyaWQtYXV0by1jb2x1bW5zOiAxZnI7XG4gICAgZ3JpZC1hdXRvLWZsb3c6IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG5AbWl4aW4gbGVmdFRodW1iSW1nIHsgXG4gICAgZmxvYXQ6ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn07XG4gICAgd2lkdGg6IDUwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcblxuICAgID4gYSA+IGltZyB7XG4gICAgICAgIGFzcGVjdC1yYXRpbzogNC8zO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxufVxuXG5AbWl4aW4gc21hbGxUaHVtYkltZyB7XG4gICAgd2lkdGg6IDEwMHB4O1xuICAgIC8vIGhlaWdodDogNzVweDtcbiAgICBtYXJnaW46IDAuMjVyZW0gMXJlbSAwIDA7XG4gICAgZmxvYXQ6ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn07XG5cbiAgICA+IGEgPiBpbWcge1xuICAgICAgICBhc3BlY3QtcmF0aW86IDQvMztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIH1cbn1cbiIsIi8qIEZvb3RlciBBcmVhIFN0eWxlcyAtLS0tLS0tIFNUQVJUIC0tLS0tICovXG4jbWFpbi1mb290ZXIge1xuICAgIHBhZGRpbmc6IDEuMjVyZW0gMCAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAyLjVyZW0gMCAwO1xuICAgIH1cblxuICAgIC5hYm91dC1wYWdlICYge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG4gICAgLm5vdC1mb3VuZCAmLFxuICAgIC5wYXRoLWpvdXJuZXkgJiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbiAgICAubXVsdGltZWRpYS1nYWxsZXJ5ICYge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgICAuc29jaWFsLWxibCB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuZGFyay10aGVtZSAmIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxufVxuXG4ubWFpbi1mb290ZXItY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxufVxuLm1haW4tZm9vdGVyLWNvbnRlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxMDFmMWQ7XG4gICAgcGFkZGluZzogNDBweCAwIDIwcHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cbiAgICBociB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRmb290ZXItYm9yZGVyLWNvbG9yO1xuICAgIH1cbn1cblxuLm1haW4tZm9vdGVyLWJlZm9yZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBvcmRlcjogMjtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGZvb3Rlci1ib3JkZXItY29sb3I7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIH1cbn1cblxuLm1haW4tZm9vdGVyLWFmdGVyLWlubmVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICB9XG5cbiAgICAubWVudSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICB3aWR0aDogMzgwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzdjOWE5NDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tYWluLWZvb3Rlci1pbm5lciB7XG4gICAgcGFkZGluZzogMCAyLjVyZW0gMDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBvcmRlcjogMztcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgLnNvY2lhbC1sYmwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xuICAgIH1cbn1cblxuLm1haW4tZm9vdGVyLWFmdGVyIHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxMDFmMWQ7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWRhcms7XG4gICAgfVxuICAgICYuc3R5bGUtdjIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgLmdyaWQtY29udGFpbmVyIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgICAuZ3JpZC14IHtcbiAgICAgICAgICAgICAgICAuY2VsbDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNvcHlyaWdodCB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktZGFyaztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgfVxuICAgICAgICAubWVudSB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxvZ28tZm9vdGVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgbWF4LXdpZHRoOiAxOTBweDtcbiAgICAgICAgY29sb3Itc2NoZW1lOiBvbmx5IGxpZ2h0O1xuICAgIH1cbn1cblxuLmNvcHlyaWdodCB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgfVxuICAgIC5jYW52YXMtcGFuZWwgJiB7XG4gICAgICAgIHBhZGRpbmc6IDAgMS41cmVtIDJyZW07XG4gICAgfVxuICAgIC5tYWluLWZvb3Rlci1hZnRlciAmIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBjb2xvcjogIzgwOTA4ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG5cbi5mb290ZXItbWVudSB7XG4gICAgLm1lbnUge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBbbGFuZz1cInRyXCJdICYge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgID4gLmdyaWQteCB7XG4gICAgICAgIC8qIG5ldGJvb2sgb25seSAqL1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgIGdhcDogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGdhcDogMjBweDtcbiAgICAgICAgICAgID4gLmNlbGx7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZG93bmxvYWQtYXBwIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luOiAxLjVyZW0gLTAuNXJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1kYXJrO1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgIH1cbiAgICBhIHtcbiAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMC4ycmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMzBweDtcbiAgICAgICAgY29sb3Itc2NoZW1lOiBvbmx5IGxpZ2h0O1xuICAgIH1cbn1cblxuLmZvb3Rlci1zb2NpYWxzIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgLnNvY2lhbHMtYnRucyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxufVxuXG4vKiBGb290ZXIgQXJlYSBTdHlsZXMgLS0tLS0tLSBFTkQgLS0tLS0gKi9cbiIsIi8qKipcbipodHRwczovL3d3dy5qcXVlcnlzY3JpcHQubmV0L2FuaW1hdGlvbi9uZXdzLXRpY2tlci1jb250cm9scy1hY21lLmh0bWxcbipodHRwczovL3d3dy5qcXVlcnlzY3JpcHQubmV0L2RlbW8vbmV3cy10aWNrZXItY29udHJvbHMtYWNtZS9cbioqL1xuXG4vKkVESVRFRCBUTyBGSVQgQUFXU0FUIExBWU9VVCovXG5cbioge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuKixcbjo6YWZ0ZXIsXG46OmJlZm9yZSB7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbmEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQgMHM7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0IDBzO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dCAwczsgfVxuICBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHROZXdzIFRpY2tlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5hY21lLW5ld3MtdGlja2VyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDQ1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxOTc0ZDI7XG4gIG1hcmdpbi10b3A6IDQ1cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmFjbWUtbmV3cy10aWNrZXIge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG4gIC5hY21lLW5ld3MtdGlja2VyLWxhYmVsIHtcbiAgICBiYWNrZ3JvdW5kOiAjMTk3NGQyO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgZmxvYXQ6ICN7JGRlZmF1bHQtZGlyZWN0aW9ufTtcbiAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTVweDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLmFjbWUtbmV3cy10aWNrZXItbGFiZWwge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTQ1cHg7IH0gfVxuICAuYWNtZS1uZXdzLXRpY2tlci1ib3gge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gICAgICAuYWNtZS1uZXdzLXRpY2tlci1ib3gge1xuICAgICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMTBweDtcbiAgICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMjBweDsgfSB9XG4gICAgLmFjbWUtbmV3cy10aWNrZXItYm94IHVsIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAuYWNtZS1uZXdzLXRpY2tlci1ib3ggdWwgbGkgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAuYWNtZS1uZXdzLXRpY2tlci1jb250cm9scyB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgdG9wOiAwOyB9XG4gICAgLmFjbWUtbmV3cy10aWNrZXItY29udHJvbHMgYnV0dG9uIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6ICNmNmY2ZjY7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICBib3JkZXItY29sb3I6ICNlZWVlZWU7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwIDAgMCAxcHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgIC5hY21lLW5ld3MtdGlja2VyLWNvbnRyb2xzIGJ1dHRvbjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlZWVlZWU7IH1cbiAgICAgIC5hY21lLW5ld3MtdGlja2VyLWNvbnRyb2xzIGJ1dHRvbi5hY21lLW5ld3MtdGlja2VyLWFycm93IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICAuYWNtZS1uZXdzLXRpY2tlci1jb250cm9scyBidXR0b24uYWNtZS1uZXdzLXRpY2tlci1hcnJvdzphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjOTk5O1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcbiAgICAgICAgICBib3JkZXItI3skb3Bwb3NpdGUtZGlyZWN0aW9ufS1zdHlsZTogc29saWQ7XG4gICAgICAgICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn0td2lkdGg6IDJweDtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiA1MCU7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIHdpZHRoOiA4cHg7IH1cbiAgICAgIC5hY21lLW5ld3MtdGlja2VyLWNvbnRyb2xzIGJ1dHRvbi5hY21lLW5ld3MtdGlja2VyLXBhdXNlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgICAgLmFjbWUtbmV3cy10aWNrZXItY29udHJvbHMgYnV0dG9uLmFjbWUtbmV3cy10aWNrZXItcGF1c2U6YmVmb3JlIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjOTk5O1xuICAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDJweCAwO1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogNTAlO1xuICAgICAgICAgIHRvcDogNTAlOyB9XG4gICAgLmFjbWUtbmV3cy10aWNrZXItY29udHJvbHMuYWNtZS1uZXdzLXRpY2tlci1ob3Jpem9udGFsLWNvbnRyb2xzIGJ1dHRvbi5hY21lLW5ld3MtdGlja2VyLXByZXY6YWZ0ZXIge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMTM1ZGVnKTtcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDEzNWRlZyk7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgxMzVkZWcpOyB9XG4gICAgLmFjbWUtbmV3cy10aWNrZXItY29udHJvbHMuYWNtZS1uZXdzLXRpY2tlci1ob3Jpem9udGFsLWNvbnRyb2xzIGJ1dHRvbi5hY21lLW5ld3MtdGlja2VyLW5leHQ6YWZ0ZXIge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMzE1ZGVnKTtcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDMxNWRlZyk7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgzMTVkZWcpOyB9XG4gICAgLmFjbWUtbmV3cy10aWNrZXItY29udHJvbHMuYWNtZS1uZXdzLXRpY2tlci12ZXJ0aWNhbC1jb250cm9scyBidXR0b24uYWNtZS1uZXdzLXRpY2tlci1wcmV2OmFmdGVyIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDIyNWRlZyk7XG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgyMjVkZWcpO1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMjI1ZGVnKTsgfVxuICAgIC5hY21lLW5ld3MtdGlja2VyLWNvbnRyb2xzLmFjbWUtbmV3cy10aWNrZXItdmVydGljYWwtY29udHJvbHMgYnV0dG9uLmFjbWUtbmV3cy10aWNrZXItbmV4dDphZnRlciB7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSg0MDVkZWcpO1xuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoNDA1ZGVnKTtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDQwNWRlZyk7IH1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGUuY3NzLm1hcCAqLyIsIi8qIC0tLS0tLS0gQVVESU8gUExBWUVSIFdJREdFVCAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG4uYXVkaW8tcGxheWVyIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgIC5vcGluaW9uLWF1dGhvcnMtbGlzdCAmIHtcbiAgICAgICAgICAgIC5wb2RjYXN0LWxhYmVsIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5qdy1yaWdodGNsaWNrIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAub3Bpbmlvbi1hdXRob3JzLWxpc3QgJixcbiAgICAub3Bpbmlvbi13cmFwICYge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgIC5ibG9jay13cmFwcGVyICYge1xuICAgICAgICAucG9kY2FzdC1sYWJlbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5qdy13cmFwcGVyLmp3LXJlc2V0LFxuICAgIC5qdy1jb250cm9scy5qdy1yZXNldCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAub3Bpbmlvbi1hdXRob3JzLWxpc3QgJixcbiAgICAgICAgLm9waW5pb24td3JhcCAmIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmp3cGxheWVyLmp3LXN0YXRlLWNvbXBsZXRlIC5qdy1jb250cm9scy5qdy1yZXNldCB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC5qdy1jb250cm9scy1iYWNrZHJvcC5qdy1yZXNldCB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC5qd3BsYXllci5qdy1yZXNldCB7XG4gICAgICAgIC8vd2lkdGg6IDE1MCUgIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiAzNXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgIC5vcGluaW9uLWF1dGhvcnMtbGlzdCAmLFxuICAgICAgICAub3Bpbmlvbi13cmFwICYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAucG9kY2FzdC1mbG9hdGVyICYge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuanctY29udHJvbHMuanctYnVmZmVyLmp3LXJlc2V0LFxuICAgIC5qdy1jb250cm9scy5qdy1yZXNldCB7XG4gICAgICAgIC5wb2RjYXN0LWZsb2F0ZXIgJiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5qdy1zbGlkZXItdGltZS5qdy1yZXNldCB7XG4gICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICAvL2Rpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuanctY29udHJvbGJhci5qdy1yZXNldCAuanctcmVzZXQuanctaWNvbi12b2x1bWUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAvLyAuandwbGF5ZXI6bm90KC5qdy1mbGFnLWFkcyk6bm90KC5qdy1mbGFnLWxpdmUpLmp3LWJyZWFrcG9pbnQtMCAuanctdGV4dC1jb3VudGRvd24uanctcmVzZXR7fVxuICAgIC5qdy1mbGFnLWF1ZGlvLXBsYXllciAuanctY29udHJvbGJhciAuanctaWNvbi1pbmxpbmUuanctdGV4dC1jb3VudGRvd24uanctcmVzZXQge1xuICAgICAgICBjb2xvcjogIzkyOTg5ODtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMWVtO1xuICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLnBvZGNhc3QtZmxvYXRlciAmIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIGxlZnQ6IC00cmVtO1xuICAgICAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5hdWRpby1wb2RjYXN0LS1uby1iYXIgJiB7XG4gICAgICAgICAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuanctaWNvbi5qdy1pY29uLWlubGluZS5qdy1idXR0b24tY29sb3IuanctcmVzZXQuanctaWNvbi1yZXdpbmQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuanctaWNvbi5qdy1pY29uLXRvb2x0aXAuanctaWNvbi12b2x1bWUuanctYnV0dG9uLWNvbG9yLmp3LXJlc2V0Lmp3LWZsYWctaG9yaXpvbnRhbC1zbGlkZXIuanctZnVsbCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5qdy1pY29uLmp3LWljb24tdG9vbHRpcC5qdy1pY29uLXZvbHVtZS5qdy1idXR0b24tY29sb3IuanctcmVzZXQuanctZmxhZy1ob3Jpem9udGFsLXNsaWRlci5qdy1vZmYge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuanctaWNvbi5qdy1pY29uLWlubGluZS5qdy10ZXh0Lmp3LXJlc2V0Lmp3LXRleHQtZWxhcHNlZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5qdy1pY29uLmp3LWljb24taW5saW5lLmp3LXRleHQuanctcmVzZXQuanctdGV4dC1kdXJhdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmp3cGxheWVyOm5vdCguanctYnJlYWtwb2ludC0tMSkgLmp3LXRleHQtZHVyYXRpb246YmVmb3JlLFxuICAgIC5qd3BsYXllcjpub3QoLmp3LWJyZWFrcG9pbnQtMCkgLmp3LXRleHQtZHVyYXRpb246YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuanctc3ZnLWljb24uanctc3ZnLWljb24tcGxheSB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gICAgLmp3LWJ1ZmZlci5qdy1yZXNldCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgICAuanctaWNvbi5qdy1pY29uLWlubGluZS5qdy1idXR0b24tY29sb3IuanctcmVzZXQuanctaWNvbi1wbGF5YmFjayB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgYmFja2dyb3VuZDogI2VjZjRmMztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gICAgICAgIC5vcGluaW9uLWF1dGhvcnMtbGlzdCAmLFxuICAgICAgICAub3Bpbmlvbi13cmFwICYge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2VjZjRmMztcbiAgICAgICAgfVxuXG4gICAgICAgIC5hdWRpby1wb2RjYXN0LS1uby1iYXIgJiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmp3LXByb2dyZXNzLmp3LXJlc2V0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gICAgfVxuICAgIC5qdy1zbGlkZXItY29udGFpbmVyLmp3LXJlc2V0IHtcbiAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogI2VjZjRmMztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAzLjVweDtcbiAgICB9XG5cbiAgICAuanctc2xpZGVyLWhvcml6b250YWwuanctY2hhcHRlci1zbGlkZXItdGltZSAuanctc2xpZGVyLWNvbnRhaW5lciAuanctdGltZXNlZ21lbnQuanctcmVzZXQge1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgfSBcblxuICAgIC5qdy10aW1lc2VnbWVudC1iYXIuanctcmFpbC5qdy10aW1lc2VnbWVudC1iYWNrZ3JvdW5kLmp3LXJlc2V0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWZlZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5qdy10aW1lc2VnbWVudC1iYXIuanctcHJvZ3Jlc3MuanctdGltZXNlZ21lbnQtcHJvZ3Jlc3MuanctcmVzZXQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmM4OTgxO1xuICAgIH1cbiAgICAuanctcmVzZXQuanctYnV0dG9uLWNvbnRhaW5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgIC5vcGluaW9uLWF1dGhvcnMtbGlzdCAmLFxuICAgICAgICAub3Bpbmlvbi13cmFwICYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuancta25vYi5qdy1yZXNldCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgwLjgpO1xuICAgICAgICBib3gtc2hhZG93OiBpbmhlcml0O1xuICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICAucG9kY2FzdC1mbG9hdGVyICYge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuanctaG9yaXpvbnRhbC12b2x1bWUtY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5ibG9jay13cmFwcGVyICYge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wb2RjYXN0LWZsb2F0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICB6LWluZGV4OiA5O1xuICAgIHBhZGRpbmc6IDAgMCAyLjE1cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvKiBNb2JpbGUgTGFuZHNjYXBlICovXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aDogMzIwcHgpIGFuZCAobWF4LWRldmljZS13aWR0aDogODk2cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAgICAgcGFkZGluZzogMXJlbSAwIDJyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogMXJlbSA0cmVtO1xuICAgIH1cbiAgICAuYnRuLXNoYXJlLXdyYXAge1xuICAgICAgICAuYnRuLXNoYXJlIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5qd3BsYXllci5qdy1yZXNldCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgaGVpZ2h0OiA3MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNsb3NlLWJ0biB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgICAgICAgICBjb2xvcjogIzkwYTNhMjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuanctc2xpZGVyLXRpbWUuanctcmVzZXQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgICAgIHotaW5kZXg6IDk5OTk5O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogLTQuODVyZW07XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDVweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuandwbGF5ZXI6bm90KC5qdy1mbGFnLWFkcyk6bm90KC5qdy1mbGFnLWxpdmUpLmp3LWJyZWFrcG9pbnQtMCAuanctdGV4dC1jb3VudGRvd24uanctcmVzZXQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgIGxlZnQ6IC00cmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5qdy1mbGFnLWF1ZGlvLXBsYXllci5qdy1mbGFnLXNtYWxsLXBsYXllciAuanctcmVzZXQuanctdGV4dC1kdXJhdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiAjOTI5ODk4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgbGVmdDogaW5pdGlhbDtcbiAgICAgICAgICAgIHJpZ2h0OiAtMjByZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmp3LWljb24uanctaWNvbi1pbmxpbmUuanctYnV0dG9uLWNvbG9yLmp3LXJlc2V0Lmp3LWljb24tcGxheWJhY2sge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMi4ycmVtO1xuICAgICAgICAgICAgbGVmdDogLTEuM3JlbTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucG9kY2FzdC1mbG9hdGVyLWl0ZW0ge1xuICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIH1cbiAgICBoNiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG4ucGxheWVyIHtcbiAgICAjcG9kY2FzdFRvZGF5IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyLjNyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnBsYXllci1zb25nIHtcbiAgICAgICAgLnRpbWVzdGFtcHMge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgICAgICAgIGNvbG9yOiAjYmZiZmJmO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGRpcmVjdGlvbjogbHRyO1xuICAgICAgICAgICAgaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcbiAgICAgICAgICAgICAgICAvL21hcmdpbjogMCAxMHB4O1xuXG4gICAgICAgICAgICAgICAgLnBvZGNhc3QtZmxvYXRlciAmIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiA5OTk5OTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucG9kY2FzdC1mbG9hdGVyICYge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA3cHggMXJlbSAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRpbWUtbm93IHtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDFyZW07XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDU1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudGltZS1maW5pc2gge1xuICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuYWN0aW9ucyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgICAgICAgICAmLmljb24tcGF1c2Uge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5uZXh0LFxuICAgICAgICAgICAgLnByZXYge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBsYXkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAxcmVtO1xuICAgICAgICAgICAgICAgIC5wb2RjYXN0LWZsb2F0ZXIgJiB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IC0wLjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXVkaW8tcGxheWVyLWZsb2F0ZXIuYXVkaW8tcGxheWVyIHtcbiAgICAvKiBNb2JpbGUgTGFuZHNjYXBlICovXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aDogMzIwcHgpIGFuZCAobWF4LWRldmljZS13aWR0aDogODk2cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAgICAgd2lkdGg6IDM0MHB4O1xuICAgIH1cbiAgICBpbnB1dFt0eXBlPVwicmFuZ2VcIl0ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzJjOGE4MiAwJSwgI2RjZWJlOSAwJSk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgYm90dG9tOiB1bnNldDtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgdG9wIDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInJhbmdlXCJdOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgY3Vyc29yOiBldy1yZXNpemU7XG4gICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAucG9kY2FzdC1mbG9hdGVyICYge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5vdC1wbGF5aW5nIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuLmF1ZGlvLXBsYXllci1wbGF5IHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uYXVkaW8tcGxheWVyLXRpbWUge1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDE1cHg7XG5cbiAgICAuaWNvbi1wbGF5LWdyZWVuIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDEwcHg7XG4gICAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIC5wbGF5aW5nICYge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5MjNcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICB0aW1lIHtcbiAgICAgICAgY29sb3I6ICM5Mjk4OTg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgLmF1ZGlvLXBvZGNhc3QtLW5vLWJhciB7XG4gICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hdWRpby1wb2RjYXN0LS1uby1iYXIge1xuICAgIC5hdWRpby1wbGF5ZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDI4cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuandwbGF5ZXIuanctcmVzZXQge1xuICAgICAgICAgICAgd2lkdGg6IDY1cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLmp3LXdyYXBwZXIuanctcmVzZXQge1xuICAgICAgICAgICAgd2lkdGg6IDg1cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmF1ZGlvLXBsYXllciAuanctc2xpZGVyLXRpbWUuanctcmVzZXQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuYmxvY2std3JhcHBlciAmIHtcbiAgICAgICAgLnBvZGNhc3QtbGFiZWwge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmF1dGhvci1uYW1lIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjOTY5Njk2O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgICBbbGFuZz1cImFyXCJdICYsXG4gICAgICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zbGljay1kb3RzIHtcbiAgICAgICAgYm90dG9tOiAtMzVweDtcbiAgICB9XG5cbiAgICAmLm9iamVjdHMtbGlzdCB7XG4gICAgICAgICYuaGFzLXNlcGFyYXRvciB7XG4gICAgICAgICAgICAub2JqZWN0LWl0ZW0ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJsb2NrLXdyYXBwZXIgJiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hdWRpby1wb2RjYXN0IHtcbiAgICAkc2VsZjogJjtcbiAgICAucm91bmQge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDc5cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDc5cHg7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIGNvbG9yLXNjaGVtZTogb25seSBsaWdodDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLS1uby1iYXIge1xuICAgICAgICAucm91bmQge1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTguMzNweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDU4LjMzcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi0tYm90dG9tIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICAgICAgaGVpZ2h0OiAyOHB4O1xuICAgICAgICB9XG4gICAgICAgIC5hdWRpby1wb2RjYXN0LS1uby1iYXIgJiB7XG4gICAgICAgICAgICAuYXVkaW8tcGxheWVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogLS0tLS0tLSBBVURJTyBQTEFZRVIgV0lER0VUIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG4iLCIudG90YWwtaXRlbXMge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi50b3RhbC1pdGVtIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAyMHB4O1xuICAgIH1cbiAgICBwIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbn1cbi50b3RhbC1jb3VudCB7XG4gICAgZm9udC1zaXplOiAzOS4wNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNjEuMDRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDY2cHg7XG4gICAgfVxufVxuXG4uZmlndXJlcy1jb250ZW50IHtcbiAgICB1bCB7XG4gICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mYWN0cyB7XG4gICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAuZmFjdC1sYmwge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgbWluLXdpZHRoOiAxMjBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZpZWxkcyB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAyO1xuICAgIC1tb3otY29sdW1uLWNvdW50OiAyO1xuICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAzO1xuICAgICAgICAtbW96LWNvbHVtbi1jb3VudDogMztcbiAgICAgICAgY29sdW1uLWNvdW50OiAzO1xuICAgIH1cbiAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEuNXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbWluLXdpZHRoOiAyMHJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmhlcm8tYWJvdXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhYm91dDE7XG4gICAgcGFkZGluZzogMzlweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5hYm91dC1lbnRyeSB7XG4gICAgbWFyZ2luLXRvcDogNTNweDtcbiAgICAmX19zZWN0aW9uIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZ2FwOiAyM3B4O1xuICAgICAgICB9XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJEEzMDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLXBhcnRuZXJzIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtLW1haW4ge1xuICAgICAgICAgICAgLmFib3V0LWVudHJ5X190aXRsZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJl9fdGl0bGUge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICAgICAgICB3aWR0aDogMjMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IDMzMHB4O1xuICAgICAgICB9XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzVweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMS4yNXB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0M3B4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgfVxuICAgICAgICAmLWlubmVyIHtcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYWJvdXQtc2VjdGlvbiB7XG4gICAgcGFkZGluZzogNjBweCAwO1xuICAgICYuYWJvdXQtZWRpdG9ycyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFib3V0MjtcbiAgICB9XG5cbiAgICAmLmFib3V0LXNpdGVzIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgICYuYWJvdXQtcHJvZHVjdHMsXG4gICAgJi5hYm91dC1hZHMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWJvdXQyO1xuICAgIH1cblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAzMS4yNXB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDM3cHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNDguODNweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNTNweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDg5MHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19kZXNjIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IDg5MHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzVweDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jaGllZi1pdGVtcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDIwcHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgZ2FwOiA0NXB4OyBcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGZsZXgtZmxvdzogbm93cmFwO1xuICAgICAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgICAgIHNjcm9sbC1zbmFwLXR5cGU6IHggbWFuZGF0b3J5O1xuICAgICAgICBtYXJnaW4tbGVmdDogLTFyZW0gIWltcG9ydGFudDsgXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxMHB4O1xuICAgICAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDIwcHg7XG5cbiAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuXG4gICAgICAgID4gLmNoaWVmLWl0ZW0ge1xuICAgICAgICAgICAgd2lkdGg6IDEyOHB4O1xuICAgICAgICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgICB9XG4gICAgfSBcbn1cblxuLmNoaWVmLWl0ZW0ge1xuICAgICZfX2ltZyB7XG4gICAgICAgIHdpZHRoOiAxOTBweDtcbiAgICAgICAgaGVpZ2h0OiAxOTBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICB3aWR0aDogMTI4cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEyOHB4O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgIH1cbiAgICB9IFxufVxuXG4uYWJvdXQtcHJvZHVjdHMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG4gICAgJl9fY29udGVudCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZ2FwOiAyNnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IDExMThweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZGVzYyB7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIHJvdy1nYXA6IDIwcHg7XG4gICAgICAgICAgICAgICAgY29sdW1uLWdhcDogNDBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMzcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYWJvdXQtcGFydG5lcnMge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDUycHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG59XG5cbi5hYm91dC1hZHMge1xuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGdhcDogODJweDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbWcge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICAgICAgICBmbGV4OiAxIDAgNTAlO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZGVzYyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAuaWNvbW9vbi1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJEEzMDA7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJEE4MDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDM2cHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGdhcDogMzBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIud3JpdGVycy1saXN0LnNsaWRlci12MSB7XG4gICAgLm1lZGlhLW9iamVjdC1pbWcge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDU4LjMzcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDU4LjMzcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi53cml0ZXJzLWxpc3RzIHtcbiAgICAud3JpdGVycy1saXN0IHtcbiAgICAgICAgJl9faXRlbSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgICAgICAubWVkaWEtb2JqZWN0IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAgICAgJi1pbWcge1xuICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDc1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDc1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIGFuZCAobWF4LXdpZHRoOiAxMTgxcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5jb29raWUtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkQTMwMDsgXG4gICAgJi0tc21hbGwge1xuICAgICAgICB3aWR0aDogMzk2cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHggMjBweCAwcHggMHB4O1xuICAgICAgICBwYWRkaW5nOiAyNHB4O1xuICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAyOXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tbGFyZ2Uge1xuICAgICAgICB6LWluZGV4OiA5OTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwOyBcbiAgICAgICAgcGFkZGluZzogMjRweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4IDIwcHggMHB4IDBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHg7IFxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvb2tpZS1jbG9zZSB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMjBweDtcbiAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNXB4OyBcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYWN0aW9ucyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgLmNvb2tpZS1vdmVybGF5LS1zbWFsbCAmIHtcbiAgICAgICAgICAgIGdhcDogMTZweDtcbiAgICAgICAgfVxuICAgICAgICAuY29va2llLW92ZXJsYXktLWxhcmdlICYge1xuICAgICAgICAgICAgZ2FwOiAxNnB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgICAgICAgICBnYXA6IDIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDsgXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICB3aWR0aDogMTYycHg7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG5cbiAgICAgICAgICAgICYuYnRuLWRpc2FncmVlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIC0tLS0tIExpdmUgYmxvZyBsaXN0IHN0eWxlcyAtLS0tLS0gU1RBUlQgLS0tLS0tICovXG4ubGl2ZS10aWNrZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIzcHg7XG4gICAgfVxuICAgIC5saXZlLXRpY2tlci10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxNXB4O1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTVweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgdG9wOiA4cHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgIGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmxpdmUtdGlja2VyLXRpbWUge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA1cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4ubGl2ZS1ibG9nIHtcbiAgICAuQ2FwdGlvbixcbiAgICAuY29udGVudCB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgLlZvdGUge1xuICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2NyYmJsLXNpdGVQcmV2aWV3IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgIH1cblxuICAgIC5sYWJlbC5icmVha2luZy1uZXdzIHtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogNC8zO1xuICAgICAgICAgICAgLW8tb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hcnRpY2xlLWl0ZW0tdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICBoMSxcbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzMCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzOCk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFydGljbGUtaXRlbS1jb250ZW50IHAge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1ib2R5OyAgXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmVudHJ5LWhpZ2hsaWdodCB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGNkZmRmO1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDE1cHg7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgICAgIHRvcDogOXB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVyby10b3Age1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmFydGljbGUtaXRlbSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYXJ0aWNsZS1pdGVtLWluZm8ge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuYXJ0aWNsZS1pdGVtLXRpdGxlIHtcbiAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMyKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNDgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi5saXZlLWFydGljbGUtbWV0YSB7XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIC5hcnRpY2xlLWl0ZW0tbWV0YSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuLmxpdmVibG9nLWNhcHN1bGUge1xuICAgIC8vbWFyZ2luOiAwIGF1dG8gMC41cmVtO1xuICAgIC8vcGFkZGluZzogMCAxcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXIoKTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59XG5cbi5saXZlYmxvZy1jYXBzdWxlIC5pbm5lciB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMjBweCAxNnB4O1xuICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG59XG5cbi5saXZlYmxvZy1jYXBzdWxlLmFjdGl2ZSAuaW5uZXIge1xuICAgIGJhY2tncm91bmQ6ICNmZmZkMzg7XG59XG5cbi5saXZlYmxvZy1jYXBzdWxlIHNwYW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogOHB4O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxNnB4O1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9pY29uLWxpdmUtYmxvZy5wbmcpIG5vLXJlcGVhdCA1MCU7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA4cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmJvZHkuYXJ0aWNsZS1saXZlYmxvZyB7XG4gICAgLmVudHJ5LWFydGljbGUtbGl2ZWJsb2cge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2RhZGZlMTtcbiAgICAgICAgcGFkZGluZy10b3A6IDE4cHg7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDEycHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5saXZlYmxvZyAuY29udGVudCB7XG4gICAgcGFkZGluZzogMjBweCAxLjhyZW0gMjBweCAyMHB4O1xuICAgIGJvcmRlci0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDRyZW0gMjBweCAyMHB4O1xuICAgIH1cblxuICAgIGRpdiB7XG4gICAgICAgIC8vZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBjb2xvcjogIzE3MkYyRjtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWJvZHk7ICBcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCk6bm90KDpvbmx5LWNoaWxkKTpub3QoOmVtcHR5KTpub3QoLkxpbmtJbWFnZSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHAge1xuICAgICAgICA+IGltZyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIH1cblxuICAgIC50d2l0dGVyLXdpZGdldCB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbiAgICBoMSxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLkxpbmtEZXNjcmlwdGlvbiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB9XG5cbiAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nOiAyLjI1cmVtIDMuNXJlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgY29udGVudDogXCLigJxcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIGxlZnQ6IDVweDtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNjYpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwi4oCcXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNjYpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5yb3cge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLTFyZW07XG4gICAgICAgIH1cbiAgICAgICAgLmNvbC1tZC0zIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICAuY29sLW1kLTkge1xuICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgIH1cbiAgICAueW91dHViZS1wb3N0IHtcbiAgICAgICAgaWZyYW1lIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAzODBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpZnJhbWUsXG4gICAgb2JqZWN0LFxuICAgIGVtYmVkIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5qd3BsYXllciB7XG4gICAgICAgIGhlaWdodDogMTczcHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDM4MHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubGl2ZWJsb2cgLmxpdmVibG9nLWNvbnRlbnQgLmNvbnRlbnQsXG4ubGItaXRlbXMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmxiLWl0ZW1zIHtcbiAgICB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59XG5cbi5sYi1pdGVtIHtcbiAgICBjb2xvcjogJGJsYWNrO1xufVxuXG4uUmVjZW50UG9zdHNXaWRnZXQge1xuICAgIGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgLnBvc3QtZGF0ZSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDIwcHggMCAwO1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxpdmVibG9nIC5saXZlYmxvZy1jb250ZW50OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiA2OHB4O1xuICAgIG1hcmdpbjogMDtcbn1cblxuLmxpdmVibG9nIC5wb3N0LWRhdGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAyMHB4IDIwcHggMTVweCAwO1xuICAgIGNvbG9yOiAjODg4O1xufVxuXG4ubGl2ZWJsb2cgLnBvc3QtZGF0ZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyNXB4O1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IC0xLjVyZW07XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xufVxuXG4ubGl2ZWJsb2cgLnBvc3QtZGF0ZSB0aW1lIHtcbiAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogOHB4O1xufVxuXG4ubGl2ZWJsb2cgLnBvc3QtZm9vdGVyIHtcbiAgICBwYWRkaW5nOiAxNnB4IDIwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICBib3JkZXItd2lkdGg6IDAgMXB4IDFweDtcbn1cblxuLmxpdmVibG9nIC5wb3N0LWZvb3RlciB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5saXZlYmxvZyAucG9zdC1mb290ZXIgdWwgbGkuYXV0aG9yLW5hbWUge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmxpdmVibG9nIC5wb3N0LWZvb3RlciB1bCBsaTpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG59XG5cbi5saXZlYmxvZyAucG9zdC1mb290ZXIgdWwgbGkge1xuICAgIHBhZGRpbmc6IDAgOHB4O1xuXG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG4ubGl2ZWJsb2cgLnBvc3QtZm9vdGVyIHVsIGxpOmxhc3QtY2hpbGQge1xuICAgIGNvbG9yOiAjODg4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmxpdmVibG9nIC5wb3N0LWZvb3RlciB1bCBsaTpsYXN0LWNoaWxkOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJ8XCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogLTFweDtcbn1cblxuI2xpdmUtbGlzdC11cGRhdGUtYnV0dG9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDIwcHggYXV0bztcbiAgICBiYWNrZ3JvdW5kOiAjZmZjZDUwO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAzcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6IDUxOHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZlMTk1O1xuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG5cbiAgICAjbGl2ZS1saXN0LXVwZGF0ZS1idXR0b24gLnVwZGF0ZS10ZXh0IHtcbiAgICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICB9XG5cbiAgICAuaWNvbi1yZWZyZXNoIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwcHg7XG4gICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICBzdmcge1xuICAgICAgICAgICAgZmlsbDogJGJsYWNrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubGl2ZWJsb2cgLnBhZ2luYXRpb24td3JhcHBlciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIC5wYWdpbmF0aW9uIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgICAgbWFyZ2luOiAzMHB4IDAgMDtcbiAgICAgICAgLy8gYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAucHJldiB7XG4gICAgICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5uZXh0IHtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAuc2hvcnRjdXQge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgICAgICAgPiAqIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMTBweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuI3N0YXJ0LWxpdmUge1xuICAgIG92ZXJmbG93OiBjbGlwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xufVxuXG4jaGVyby1zaWRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgcGFkZGluZzogMzBweDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgdG9wOiA1MHB4O1xuICAgIH1cbiAgICAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gICAgLmFydGljbGUtaXRlbS10aXRsZSB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuYXJ0aWNsZS1pdGVtLWNvbnRlbnQge1xuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIC0tLS0tIExpdmUgYmxvZyBsaXN0IHN0eWxlcyAtLS0tLS0gRU5EIC0tLS0tLSAqL1xuIiwiLmFkdmVydG9yaWFsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbiAgJl9faW1nIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICB3aWR0aDogNDglO1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmX19pbmZvIHtcbiAgICBmbGV4OiBhdXRvO1xuICAgIGJhY2tncm91bmQ6ICNhZWQ3YzY7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMjBweDtcbiAgICBwYWRkaW5nOiAyNnB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiA3MnB4IDQ0cHg7XG4gICAgfVxuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMzFweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzN3B4O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gICAgcCB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtYm9keTtcbiAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19sb2dvIHtcbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMHB4O1xuICAgIH1cbiAgfVxuXG4gICZfX3RhZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG5cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgcGFkZGluZzogNXB4IDIwcHg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBnYXA6IDEwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmJlNTViO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LWJvZHk7XG4gICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICB9XG4gIH1cbn1cbiIsIi5mbGV4LWVxdWFsIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIC5oZXJvLW1haW4gJiB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAmLmFydGljbGVzLWdyaWQge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgICAgICAgLy8gZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIC8vIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIC8vIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIC8vIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICAuaGVyby1tYWluICYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmFydGljbGUtaXRlbS1jb250ZW50IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICAuYXJ0aWNsZS1pdGVtLWluZm8ge1xuICAgICAgICAgICAgLy8gZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIC8vIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIC8vIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAvLyBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAvLyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgLmFydGljbGUtaXRlbS1tZXRhIHtcbiAgICAgICAgICAgICAgICAvL21hcmdpbi10b3A6IGF1dG87XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5hcnRpY2xlLWl0ZW0tdGl0bGUge1xuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vbGFyZ2UgaXRlbSB3aXRoIGdyaWRzXG4ubGctdy1ncmlkLWJvcmRlciB7XG4gICAgPiBkaXYge1xuICAgICAgICAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkMWQ1ZDU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZ3JpZC1pdGVtcyB7XG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDFkNWQ1O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgICAgICAgICAmOm50aC1sYXN0LWNoaWxkKDIpIC5hcnRpY2xlLWl0ZW0sXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyB2ZXJ0aWNhbCBsaW5lIG9uIGl0ZW1zXG4gICAgICAgICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjYWNhO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMSU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxLjNweDtcbiAgICAgICAgICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogLTIwLjVweDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hcnRpY2xlcy1pdGVtLWxpc3Qge1xuICAgID4gZGl2IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIC8vZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsZWZ0VGh1bWJJbWc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmxvY2std3JhcHBlciAmIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICAgICAgLmFydGljbGUtaXRlbSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG5cbiAgICAgICAgICAgICAgICAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGFiZWwge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaGFzLXNlcGFyYXRvci1ncmlkIHtcbiAgICAmLmdyaWQtaXRlbXMge1xuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gZGl2IC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAgICAgICA+IGRpdjpudGgtbGFzdC1jaGlsZCgyKSAuYXJ0aWNsZS1pdGVtLFxuICAgICAgICAgICAgPiBkaXY6bGFzdC1jaGlsZCAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi52ZXJ0aWNhbC1zZXBhcmF0b3Ige1xuICAgID4gZGl2IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjYWNhO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IC0yMC41cHg7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuXG4gICAgICAgICAgICAgICAgLm1haW4tY29udGFpbmVyID4gJiB7XG4gICAgICAgICAgICAgICAgICAgIC8vIHRvcDogM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuc21hbGwtZ3JpZC1jb2xsYXBzZSA+ICYge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaGFzLXNlcGFyYXRvci1ncmlkIHtcbiAgICAgICAgPiBkaXY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5ncmlkLWNvbHVtbi0yIHtcbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuZ3JpZC1jb2x1bW4tNCB7XG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDRuKSB7XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaGVyby13cmFwLFxuICAgICYuZ3JpZC1jb2x1bW4sXG4gICAgJi52aWRlby1zZWN0aW9uLFxuICAgICYubWFpbixcbiAgICAmLmxnLXctZ3JpZC1ib3JkZXIge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIGFydGljbGUgZ3JpZCBzdWNoIGFzIGNhdGVnb3J5Lmh0bWxcbiAgICAmLmFydGljbGVzLWdyaWQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICAgICAgLy8gJjpudGgtY2hpbGQoZXZlbil7XG4gICAgICAgICAgICAgICAgLy8gICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICAgICAgLy8gICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAvLyAgICAgfVxuICAgICAgICAgICAgICAgIC8vIH1cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259IGlzIG9uZSBhcnRpY2xlIGl0ZW0gd2hpbGUgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufSBpcyBsaXN0IG9mIGFydGljbGUgaXRlbSB0aXRsZVxuLmdyaWQtc3R5bGUtdjIge1xuICAgID4gZGl2IHtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NhY2FjYTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEuM3B4O1xuICAgICAgICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IC0xcmVtO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmdyaWQtaXRlbXMge1xuICAgICAgICA+IC5jZWxsOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZ3JpZC1pdGVtcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICAgICAvLyBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgICAgICAgICAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuMjVyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMS41cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgZmxvYXQ6ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn07XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZ3JpZC1jb2x1bW4ge1xuICAgID4gLmNlbGw6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1haW4taXRlbSB7XG4gICAgICAgIC5hcnRpY2xlLWl0ZW0tY29udGVudCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5ncmlkLWNvbHVtbi0yIHtcbiAgICAvLyAuc2VjdGlvbi13cmFwcGVyIHtcbiAgICAvLyAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgLy8gICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgLy8gICAgIH1cbiAgICAvLyB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZ2FwOiAxLjVyZW07XG4gICAgfVxuXG4gICAgPiAuY2VsbDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgLnNlY3Rpb24td3JhcHBlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHNlcGFyYXRvci1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tZWRpYS1hcnRpY2xlLWxpc3Qge1xuICAgICAgICA+IC5hcnRpY2xlLWxpc3QtaXRlbTpudGgtY2hpbGQoMSkgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkLFxuICAgICAgICA+IC5hcnRpY2xlLWxpc3QtaXRlbTpudGgtY2hpbGQoMikgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIC8vbWluLWhlaWdodDogMTA5cHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNtLXNlcGFyYXRvciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgIH1cbn1cblxuLmFydGljbGVzLWdyaWQge1xuICAgIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaGFzLXNlcGFyYXRvciB7XG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuXG4gICAgICAgICAgICAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHNlcGFyYXRvci1jb2xvcjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgICAgICAgICAgICAgICRjb2x1bW5zOiAxO1xuICAgICAgICAgICAgICAgICRmaXJzdC1jaGlsZC1pbi1hbnktcm93OiBcIjpudGgtY2hpbGQoI3skY29sdW1uc31uICsgMSlcIjtcblxuICAgICAgICAgICAgICAgICRhbnktY2hpbGQtaW4tdGhlLWxhc3Qtcm93OiBcIjpudGgtbGFzdC1jaGlsZCgtbiArICN7JGNvbHVtbnN9KVwiO1xuXG4gICAgICAgICAgICAgICAgJGZpcnN0LWNoaWxkLWluLWxhc3Qtcm93OiBcIiYjeyRmaXJzdC1jaGlsZC1pbi1hbnktcm93fSN7JGFueS1jaGlsZC1pbi10aGUtbGFzdC1yb3d9XCI7XG5cbiAgICAgICAgICAgICAgICAjeyRmaXJzdC1jaGlsZC1pbi1sYXN0LXJvd306bm90KC5oaWRlLWZvci1sYXJnZSksXG4gICAgICAgICAgICAgICAgI3skZmlyc3QtY2hpbGQtaW4tbGFzdC1yb3d9Om5vdCguaGlkZS1mb3ItbGFyZ2UpIH4gLmNlbGwge1xuICAgICAgICAgICAgICAgICAgICAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICRjb2x1bW5zOiAyO1xuICAgICAgICAgICAgICAgICRmaXJzdC1jaGlsZC1pbi1hbnktcm93OiBcIjpudGgtY2hpbGQoI3skY29sdW1uc31uICsgMSlcIjtcblxuICAgICAgICAgICAgICAgICRhbnktY2hpbGQtaW4tdGhlLWxhc3Qtcm93OiBcIjpudGgtbGFzdC1jaGlsZCgtbiArICN7JGNvbHVtbnN9KVwiO1xuXG4gICAgICAgICAgICAgICAgJGZpcnN0LWNoaWxkLWluLWxhc3Qtcm93OiBcIiYjeyRmaXJzdC1jaGlsZC1pbi1hbnktcm93fSN7JGFueS1jaGlsZC1pbi10aGUtbGFzdC1yb3d9XCI7XG5cbiAgICAgICAgICAgICAgICAjeyRmaXJzdC1jaGlsZC1pbi1sYXN0LXJvd306bm90KC5oaWRlLWZvci1sYXJnZSksXG4gICAgICAgICAgICAgICAgI3skZmlyc3QtY2hpbGQtaW4tbGFzdC1yb3d9Om5vdCguaGlkZS1mb3ItbGFyZ2UpIH4gLmNlbGwge1xuICAgICAgICAgICAgICAgICAgICAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgJGNvbHVtbnM6IDM7XG4gICAgICAgICAgICAgICAgJGZpcnN0LWNoaWxkLWluLWFueS1yb3c6IFwiOm50aC1jaGlsZCgjeyRjb2x1bW5zfW4gKyAxKVwiO1xuXG4gICAgICAgICAgICAgICAgJGFueS1jaGlsZC1pbi10aGUtbGFzdC1yb3c6IFwiOm50aC1sYXN0LWNoaWxkKC1uICsgI3skY29sdW1uc30pXCI7XG5cbiAgICAgICAgICAgICAgICAkZmlyc3QtY2hpbGQtaW4tbGFzdC1yb3c6IFwiJiN7JGZpcnN0LWNoaWxkLWluLWFueS1yb3d9I3skYW55LWNoaWxkLWluLXRoZS1sYXN0LXJvd31cIjtcblxuICAgICAgICAgICAgICAgICN7JGZpcnN0LWNoaWxkLWluLWxhc3Qtcm93fTpub3QoLmhpZGUtZm9yLWxhcmdlKSxcbiAgICAgICAgICAgICAgICAjeyRmaXJzdC1jaGlsZC1pbi1sYXN0LXJvd306bm90KC5oaWRlLWZvci1sYXJnZSkgfiAuY2VsbCB7XG4gICAgICAgICAgICAgICAgICAgIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vaWYgYXJ0aWNsZXMtZ3JpZCBoYXMgNCBjb2x1bW5zIGluIGEgcm93XG4uYXJ0aWNsZXMtZ3JpZC5sYXJnZS11cC00IHtcbiAgICAmLmhhcy1zZXBhcmF0b3Ige1xuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgJGNvbHVtbnM6IDQ7XG4gICAgICAgICAgICAgICAgJGZpcnN0LWNoaWxkLWluLWFueS1yb3c6IFwiOm50aC1jaGlsZCgjeyRjb2x1bW5zfW4gKyAxKVwiO1xuXG4gICAgICAgICAgICAgICAgJGFueS1jaGlsZC1pbi10aGUtbGFzdC1yb3c6IFwiOm50aC1sYXN0LWNoaWxkKC1uICsgI3skY29sdW1uc30pXCI7XG5cbiAgICAgICAgICAgICAgICAkZmlyc3QtY2hpbGQtaW4tbGFzdC1yb3c6IFwiJiN7JGZpcnN0LWNoaWxkLWluLWFueS1yb3d9I3skYW55LWNoaWxkLWluLXRoZS1sYXN0LXJvd31cIjtcblxuICAgICAgICAgICAgICAgICN7JGZpcnN0LWNoaWxkLWluLWxhc3Qtcm93fTpub3QoLmhpZGUtZm9yLWxhcmdlKSxcbiAgICAgICAgICAgICAgICAjeyRmaXJzdC1jaGlsZC1pbi1sYXN0LXJvd306bm90KC5oaWRlLWZvci1sYXJnZSkgfiAuY2VsbCB7XG4gICAgICAgICAgICAgICAgICAgIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5oYXMtdG9wLXNlcGFyYXRvciB7XG4gICAgPiAuY2VsbCB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICB9XG59XG5cbi8vYWxsIGdyaWQgaXRlbXMgd2l0aCBib3JkZXItYm90dG9tXG4uYm90dG9tLWJvcmRlciB7XG4gICAgJi5ncmlkLWl0ZW1zIHtcbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgPiAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRvcC1ib3JkZXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG59XG4iLCIvKiBEcnVwYWwgYWRtaW4gc3R5bGVzIC0tLS0tIFNUQVJUIC0tLS0tKi9cblxuYm9keSB7XG4gICYudXNlci1sb2dnZWQtaW4ge1xuICAgIHVsLnRhYnMucHJpbWFyeSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuXG4gICAgICBsaSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY4Zjg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW46IDAgNXB4IDhweDtcbiAgICAgICAgcGFkZGluZzogNXB4IDE1cHg7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYudXNlci1vcGVuIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluO1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluIDAuMnM7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uYWpheC1wcm9ncmVzcy1mdWxsc2NyZWVuIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9sb2FkaW5nLnN2Zyk7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5cbi8qIERydXBhbCBhZG1pbiBzdHlsZXMgLS0tLS0gRU5EIC0tLS0tKi9cblxuLmFqYXgtcHJvZ3Jlc3Mge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBoZWlnaHQ6IDUwcHg7XG4gIHdpZHRoOiA1MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgbWFyZ2luOiAxMHB4IGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4qIHtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG46Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG59XG5cbi5zaG93LWZvci1wcmludGFibGUtYXJlYSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbmlucHV0IHtcbiAgJi5yYWRpdXMsXG4gIC5pbnB1dC1ncm91cCA+ICY6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgfVxuXG4gIC5zZWFyY2gtZm9ybSAmIHtcbiAgICAmLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogMTByZW07XG59XG5cbmEge1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyBlYXNlIDBzLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2UgMHMsXG4gICAgb3BhY2l0eSAwLjI1cyBlYXNlIDBzO1xuXG4gICYuaG92ZXJlZCB7XG4gICAgY29sb3I6ICRuZXZhZGE7XG4gIH1cblxuICAmLmNsYXNzaWMge1xuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5vZmYtY2FudmFzIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG5idXR0b24sXG4uYnV0dG9uIHtcbiAgJi5ncmF5LmhvbGxvdyB7XG4gICAgY29sb3I6ICRncmF5O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gICYubGlnaHQtZ3JlZW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlY2Y0ZjM7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gICYucmFkaXVzIHtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIH1cbiAgJi5wcmltYXJ5IHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59XG5cbi5idXR0b24ucHJpbWFyeTpob3Zlcixcbi5idXR0b24ucHJpbWFyeTpmb2N1cyB7XG4gIGNvbG9yOiAkd2hpdGU7XG59XG5cbi5idXR0b24ucHJpbWFyeS1saWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWxpZ2h0O1xuICBjb2xvcjogIzRkOGE4ODtcbiAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxufVxuXG4vKklDT05TKi9cblxuLmljb24tdXNlci1jaXJjbGUtbzpiZWZvcmUsXG4uaWNvbi1jaGVjay1ncmVlbjpiZWZvcmUsXG4uaWNvbi1uZXdzOmJlZm9yZSxcbi5pY29uLWVudmVsb3AxOmJlZm9yZSxcbi5pY29uLXBsdXMtZ3JlZW46YmVmb3JlLFxuLmljb24tYm9va21hcmstb3V0bGluZTpiZWZvcmUsXG4uaWNvbi10ZWxlZ3JhbTpiZWZvcmUsXG4uaWNvbi1zaGFyZTpiZWZvcmUsXG4uaWNvbi1lbnZlbG9wMjpiZWZvcmUsXG4uaWNvbi1wbGF5LWdyZWVuOmJlZm9yZSxcbi5pY29uLWNhbGVuZGFyOmJlZm9yZSxcbi5pY29uLWxpdmU6YmVmb3JlLFxuLmljb24tc2hhcmUyOmJlZm9yZSxcbi5pY29uLW1lbnU6YmVmb3JlIHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi5tZXRhLWljbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwcHg7XG5cbiAgaSB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICB9XG4gIGEge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICB9XG59XG5cbi5yZWQtYnVsbGV0cyB7XG4gIGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxcmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcZTkxNFwiOyAvKiBBZGQgY29udGVudDogXFwyMDIyIGlzIHRoZSBDU1MgQ29kZS91bmljb2RlIGZvciBhIGJ1bGxldCAqL1xuICAgICAgY29sb3I6ICNjZTQyNDI7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGZvbnQtc2l6ZTogOHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAgIHRvcDogMTBweDtcbiAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgICAgIHRvcDogN3B4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZGFyay10aGVtZSB7XG4gIG1haW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGEge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cblxuICBociB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzM4MzgzODtcbiAgfVxufVxuXG4vKiBTZWFyY2ggQXJlYSBTdHlsZXMgLS0tLS0gU1RBUlQgLS0tLS0gKi9cblxuLnNlYXJjaC1mcmFtZSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gIH1cbiAgaWZyYW1lIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogNDAwcHg7XG4gIH1cbn1cbi5zZWFyY2gtYXJlYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgZm9udC1zaXplOiAxOHB4O1xuICAuc2VhcmNoLWlucHV0IHtcbiAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEuNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItI3skZGVmYXVsdC1kaXJlY3Rpb259OiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5NTk1OTU7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBib3gtc2hhZG93OiAwIDAgNXB4IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuICBpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHBhZGRpbmc6IDAuN3JlbSAwO1xuICB9XG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIiAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcGFkZGluZzogNXB4IDA7XG4gICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgLmNhbnZhcy1wYW5lbCAmIHtcbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICAuc2VhcmNoLWFyZWEtLWlucHV0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjNjQ3ZTdjO1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiAjNjQ3ZTdjO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG4gICAgLnNlYXJjaC1hcmVhLS1zdWJtaXQge1xuICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFyZW07XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgcGFkZGluZzogN3B4IDA7XG4gICAgfVxuICB9XG59XG5cbi5zZWFyY2gtYXJlYS0taW5wdXQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMi43Mzc1cmVtO1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTU5MjkyO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBsaW5lLWhlaWdodDogMS44O1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6ICM2NDdlN2M7XG59XG5cbi5zZWFyY2gtYXJlYS0tc3VibWl0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDIycHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IDIycHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnNlYXJjaC1oZWFkaW5nIHtcbiAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xufVxuLnNlYXJjaC1zZWN0aW9uIHtcbiAgY29sb3I6ICM1NTU1NTU7XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIHVsIHtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgIGxpIHtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICYuaG90IHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU5MjBcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAtMS41cmVtO1xuICAgICAgICAgICAgY29sb3I6ICNjZTQyNDI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zZWFyY2gtYnRuIHtcbiAgLm1haW4taGVhZGVyLWlubmVyICYge1xuICAgIGEge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBpIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWRhcms7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA2cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zZWFyY2gtcmVzdWx0cyB7XG4gIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuYXJ0aWNsZS1pdGVtLWluZm8ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLnJlc3VsdC1jb3VudCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6ICM5Mjk4OTg7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICBtYXJnaW4tdG9wOiAwLjNyZW07XG59XG5cbi8qIFNlYXJjaCBBcmVhIFN0eWxlcyAtLS0tLSBFTkQgLS0tLS0gKi9cblxuLmNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG5cbiAgLy8gZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIC8vIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLmxpdmUtbmV3czEgJiB7XG4gICAgb3ZlcmZsb3cteDogY2xpcDtcbiAgfVxufVxuXG5tYWluLFxuaGVhZGVyLFxuZm9vdGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5odG1sIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbn1cblxubWFpbiB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgIC8vICBtYXgtd2lkdGg6IDcwMHB4O1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAvLyBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTI2cHggLSA1NHB4KTtcbiAgfVxuXG4gIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgLy9wYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAvL3BhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAvL21heC13aWR0aDogODFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIC8vcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDEuNXJlbTtcbiAgICAgIC8vcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxLjVyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIC8vcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDFyZW07XG4gICAgICAvL3BhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgxNDQwKSB7XG4gICAgICAvL3BhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxLjVyZW07XG4gICAgICAvL3BhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMS41cmVtO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIC8vIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIC8vIC5wYXRoLWZyb250cGFnZSAmLFxuICAgIC8vIC5teS1wcm9maWxlICYsXG4gICAgLy8gLnBhdGgtam91cm5leSAmLFxuICAgIC8vIC52aWRlby1kb2N1bWVudGFyeSAmLFxuICAgIC8vIC5kYXJrLXRoZW1lICYsXG4gICAgLy8gLnBhdGgtZmF2b3JpdGV0YWdzcGFnZSAmLFxuICAgIC8vIC5hYm91dC1wYWdlICYge1xuICAgIC8vICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAvLyB9XG4gICAgLmdyaWQtY29udGFpbmVyIHtcbiAgICAgIC8vbWF4LXdpZHRoOiA0ODBweDtcbiAgICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXJlbTtcbiAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxcmVtO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgLmdyaWQtY29udGFpbmVyIHtcbiAgICAgIC8vcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjc1cmVtO1xuICAgICAgLy9wYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMC43NXJlbTtcbiAgICAgIC8vbWF4LXdpZHRoOiA3MDBweDtcbiAgICB9XG4gIH1cbiAgYm9keTpub3QoLmFib3V0LXVzKTpub3QoLmFib3V0LXBhZ2UpOm5vdCguZGFyay10aGVtZSk6bm90KC5wYXRoLWpvdXJuZXkpOm5vdChcbiAgICAgIC5wYWdlLW5vZGUtdHlwZS1wb2RjYXN0XG4gICAgKVxuICAgICYge1xuICAgID4gZGl2OmZpcnN0LWNoaWxkOm5vdCgubmV3cy10aWNrZXItYXJlYSkge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uY29udGVudC13cmFwIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgfVxufVxuXG4uZGFyay1iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgY29sb3I6ICR3aGl0ZTtcbiAgJi5mdWxsIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlO1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC01MHZ3O1xuICAgIG1hcmdpbi1yaWdodDogLTUwdnc7XG4gIH1cbiAgLmVudHJ5LWNvbnRlbnQge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cblxuICAuZW50cnktZGF0ZSB7XG4gICAgY29sb3I6ICNkZmRmZGY7XG4gIH1cbn1cblxuLnNpZGViYXItd3JhcCxcbi5zdGF0aWMtY29sdW1uLXdyYXAge1xuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKG1heC13aWR0aDogMTAzMHB4KSB7XG4gICAgd2lkdGg6IDI1MHB4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgd2lkdGg6IDMwOXB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5ibG9jay13cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICAuaGVyby1tYWluICYge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5ibG9jay13cmFwcGVyOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIC8vIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgIC8vIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICB9XG59XG5cbi5zdGF0aWMtY29sdW1uLXdyYXAge1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHNlcGFyYXRvci1jb2xvcjtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG59XG5cbi5ibG9jay13cmFwcGVyIHtcbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMnB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgfVxuXG4gICAgLmhlcm8tbWFpbiAmIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgLy9wYWRkaW5nOiAxLjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgJiNzdGlja3ktYmxvY2sge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAmLS1ib3JkZXItdG9wIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHNlcGFyYXRvci1jb2xvcjtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgfVxuXG4gICYtLWFkdmVydG9yaWFsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgcGFkZGluZzogOHB4O1xuICAgIGNvbG9yOiAjOGE4YThhO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA3MnB4O1xuICAgIH1cbiAgfVxufVxuXG4uaGVyby1tYWluIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgLm1lZGl1bS0xMi5zbWFsbC1vcmRlci0zIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgfVxuICB9XG4gIC5tYWluLWl0ZW0ge1xuICAgIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogLTFyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTFyZW07XG4gICAgICAgIGhlaWdodDogMjkycHg7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmFydGljbGUtaXRlbS10aXRsZSB7XG4gICAgaDIge1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjYpO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzNSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICB9XG5cbiAgICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBpbml0aWFsO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzNik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZW50cnktaGlnaHRsaWdodCB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuICAgIHVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgW2Rpcj1cImx0clwiXSAmIHtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICB0aW1lIHtcbiAgICAgIGNvbG9yOiAjOTI5ODk4O1xuICAgICAgLy8gYm9yZGVyLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXB4IHNvbGlkICM5Mjk4OTg7XG4gICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiA1cHg7XG4gICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogNXB4O1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5Mjk4OTg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAtMXB4O1xuICAgICAgICB0b3A6IDNweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uaGVyby1hZnRlciB7XG4gIG1hcmdpbi10b3A6IDIuNXJlbTtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xufVxuXG4uc2VjdGlvbi13cmFwcGVyIHtcbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG59XG5cbi5ibG9jay10aXRsZSxcbi5zZWN0aW9uLXRpdGxlLFxuLnBhZ2UtdGl0bGUsXG4udGl0bGUge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblxuICAmLnRpdGxlLWl0YWxpYyBhIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIH1cblxuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuc2VwYXJhdG9yLWNlbnRlci1hYm92ZSB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgIC13ZWJraXQtZmxleC1iYXNpczogMDtcbiAgICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiAwO1xuICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDI7XG4gICAgICAtd2Via2l0LW9yZGVyOiAxO1xuICAgICAgLW1zLWZsZXgtb3JkZXI6IDE7XG4gICAgICBvcmRlcjogMTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgICAgdG9wOiAtMTBweDtcbiAgICAgIHdpZHRoOiA1cmVtO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMC4xMjVyZW0gc29saWQgJGJsYWNrO1xuICAgICAgbWFyZ2luOiAxcmVtIGF1dG8gMDtcbiAgICB9XG4gIH1cblxuICAmLnNlcGFyYXRvci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259LWFib3ZlIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAwO1xuICAgICAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6IDA7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMjtcbiAgICAgIC13ZWJraXQtb3JkZXI6IDE7XG4gICAgICAtbXMtZmxleC1vcmRlcjogMTtcbiAgICAgIG9yZGVyOiAxO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgICB0b3A6IC0xMHB4O1xuICAgICAgd2lkdGg6IDhyZW07XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJsYWNrO1xuICAgICAgbWFyZ2luOiAxcmVtIDAgMDtcbiAgICB9XG4gIH1cblxuICAmLnN0eWxlLXYyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgJi5zdHlsZS12MyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAuaGVhZC10YWJzIHtcbiAgICAgIC50YWJzIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgbGkge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC50YWJzLXRpdGxlIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmF5O1xuICAgICAgICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXB4IHNvbGlkICRncmF5O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmF5O1xuICAgICAgICAgICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFweCBzb2xpZCAkZ3JheTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA+IGEge1xuICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIGNvbG9yOiAkZ3JheTtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDExKTtcbiAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICZbYXJpYS1zZWxlY3RlZD1cInRydWVcIl0sXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuc3R5bGUtdjQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZmUzZTM7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nOiAxcmVtIDFyZW0gMC41cmVtO1xuICB9XG59XG5cbi5lZGl0b3ItZW50cmllcyB7XG4gIC5tYWluLWVkaXRvcnMge1xuICAgIC5zZWN0aW9uLXRpdGxlIHtcbiAgICAgIHRleHQtYWxpZ246IGluaGVyaXQ7XG4gICAgfVxuICB9XG4gIC50aXRsZSxcbiAgLnNlY3Rpb24tdGl0bGUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG59XG5cbi5zZWN0aW9uLXRpdGxlLFxuLnBhZ2UtdGl0bGUge1xuICAmLnN0eWxlLXYzIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDJweDtcbiAgICB9XG5cbiAgICBoMSxcbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCxcbiAgICBoNSxcbiAgICBoNiB7XG4gICAgICBmb250LXdlaWdodDogODAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgLy90ZXh0LWFsaWduOiAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259O1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICAvKnNwYW4ge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9Ki9cbiAgICB9XG4gIH1cbn1cblxuLnNlY3Rpb24tdGl0bGUsXG4uYmxvY2stdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGgyLFxuICBoMyB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICB9XG4gIH1cbiAgLy8gJi5oYy1zdGlja3kge1xuICAvLyAgIHotaW5kZXg6IDI7XG4gIC8vICAgYmFja2dyb3VuZDogI2VjZjBlNztcbiAgLy8gICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgLy8gICBtYXJnaW4tYm90dG9tOiAwO1xuICAvLyAgIGJveC1zaGFkb3c6IDBweCA0cHggMnB4IC0ycHggJGdyYXk7XG4gIC8vIH1cblxuICAuaW4tZm9jdXMgJiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNik7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuICAgICAgfVxuICAgIH1cbiAgICAuYnV0dG9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gICAgfVxuICB9XG59XG5cbi5ibG9jay10aXRsZSB7XG4gIGkuaWNvbi1hcmNoaXZlIHtcbiAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTBweDtcbiAgfVxufVxuXG4ucGFnZS10aXRsZSB7XG4gIGgxIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgcGFkZGluZzogMTBweCA1cHg7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgYmFja2dyb3VuZDogI2NkMmMyNDtcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIHNwYW4ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc3ViaGVhZGVyIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgfVxufVxuXG4uc2VjdGlvbi1jb250ZW50IHtcbiAgLmMtdGFiLWNvbnRlbnRfanMgJiB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gIH1cbn1cblxuLm9iamVjdHMtbGlzdCB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgLmJsb2NrLXdyYXBwZXIgJiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAvKi5vYmplY3QtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAubWVkaWEtb2JqZWN0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9Ki9cbiAgfVxuXG4gICYucGFkZGluZy1ob3Jpem9udGFsLTEge1xuICAgIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogcmVtLWNhbGMoMTApO1xuICAgIH1cbiAgfVxuXG4gICYuaGFzLXNlcGFyYXRvciB7XG4gICAgLm1lZGlhLW9iamVjdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5vYmplY3QtaXRlbSB7XG4gICAgICAvLyY6bm90KDpmaXJzdC1jaGlsZCl7XG4gICAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgICAvL31cblxuICAgICAgJi5pbmNyZWFzZWQtc3BhY2Uge1xuICAgICAgICBwYWRkaW5nOiAxLjVyZW0gMDtcbiAgICAgIH1cblxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAvL3BhZGRpbmctdG9wOiAwO1xuICAgICAgfVxuXG4gICAgICAmLmluY3JlYXNlZC1zcGFjZSB7XG4gICAgICAgIGgzIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gICY6b25seS1jaGlsZDpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICB9XG4gICY6bGFzdC1jaGlsZDpub3QoOm50aC1jaGlsZCgyKSkge1xuICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICB9XG59XG5cbi5zbGljay1kb3RzIHtcbiAgYm90dG9tOiAtMjBweDtcbiAgbGkge1xuICAgIHdpZHRoOiA0N3B4O1xuICAgIGhlaWdodDogNHB4O1xuICAgIGJ1dHRvbiB7XG4gICAgICB3aWR0aDogNDdweDtcbiAgICAgIGhlaWdodDogNHB4O1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICB3aWR0aDogNDdweDtcbiAgICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlY2Y0ZjM7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAmLnNsaWNrLWFjdGl2ZSB7XG4gICAgICBidXR0b24ge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc2xpZGVyLXYxIHtcbiAgbWFyZ2luLXRvcDogLTEuNXJlbTtcbiAgLnNsaWNrLWxpc3Qge1xuICAgIC8vIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbiAgLy8gQGluY2x1ZGUgY3VzdG9tLWRvdHM7XG59XG5cbi5tZWRpYS1hcnRpY2xlLWxpc3Qge1xuICBoMyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgW2xhbmc9XCJmYVwiXSAmLFxuICAgIFtsYW5nPVwidXJcIl0gJiB7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgaDQge1xuICAgIFtsYW5nPVwiZmFcIl0gJixcbiAgICBbbGFuZz1cInVyXCJdICYge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG4gIH1cbiAgLm1lZGlhLW9iamVjdC1pbWcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsb2F0OiAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259O1xuICAgICAgPiBhID4gaW1nIHtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiA0LzM7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgQGluY2x1ZGUgc21hbGxUaHVtYkltZztcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB3aWR0aDogMTI1cHg7XG4gICAgICB9XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWVkaWEtb2JqZWN0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIGdhcDogMjBweDtcbiAgICB9XG4gIH1cblxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb246bm90KDpvbmx5LWNoaWxkKSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgIH1cbiAgfVxuXG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpvbmx5LWNoaWxkOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gIH1cblxuICAuYXJ0aWNsZS1saXN0LWl0ZW0uaGlkZS1pbWcge1xuICAgIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgfVxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmFydGljbGVzLWxpc3Qge1xuICAmLmhhcy1zZXBhcmF0b3Ige1xuICAgIC5tZWRpYS1vYmplY3Qge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgPiBkaXYge1xuICAgICAgcGFkZGluZzogMXJlbSAwO1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgfVxuXG4gICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHNlcGFyYXRvci1jb2xvcjtcbiAgICAgIH1cbiAgICAgIC5hcnRpY2xlLWl0ZW0sXG4gICAgICAuYXJ0aWNsZS1saXN0LWl0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgICAgLmFydGljbGUtaXRlbSB7XG4gICAgICAgIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYXJ0aWNsZS1pdGVtLWluZm8ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgIC8vanVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLnNtLXNob3ctb25lLmhhcy1zZXBhcmF0b3Ige1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgPiBkaXYge1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHNlcGFyYXRvci1jb2xvcjtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLnNtLWhhcy1zZXBhcmF0b3Ige1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgPiBkaXYge1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmFydGljbGUtbGlzdC1pdGVtIHtcbiAgaDYge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG59XG5cbi5hdXRob3ItbmFtZSxcbi5hcnRpY2xlLWVwaXNvZGUge1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuXG4gIC5vYmplY3QtaXRlbS5pbmNyZWFzZWQtc3BhY2UgJiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgfVxuXG4gIGEge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgLmJsb2NrLXdyYXBwZXItdjIgJiB7XG4gICAgICBjb2xvcjogIzVlOTA5NjtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uY2F0ZWdvcnktZmllbGQge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG5cbiAgYSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIHBhZGRpbmc6IDVweCAwO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHByaW1hcnktZGFyaztcbiAgICB9XG4gIH1cbiAgc3BhbiB7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXJlbTtcbiAgfVxufVxuXG4ubWV0YS1hcmVhIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xufVxuXG4ubGluay1ob2xkZXIge1xuICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgbWFyZ2luOiAwIDAgMC41cmVtO1xuICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICBhIHtcbiAgICBjb2xvcjogJGdyYXk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG5cbiAgaSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYyg4KTtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gIH1cblxuICAmLnByaW1hcnktY29sb3Ige1xuICAgIGEge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5hcnRpY2xlLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIH1cblxuICAvLyBoaWRlIGltZyBvbiBsYXJnZSAsIHNob3cgaW1nIG9uIG1vYmlsZVxuICAmLnN0eWxlLXYyIHtcbiAgICAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmbG9hdDogI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTtcbiAgICAgICAgLy8gbWFyZ2luOiAwLjI1cmVtIDFyZW0gMCAxLjJyZW07XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgYXNwZWN0LXJhdGlvOiA0LzM7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgLW8tb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5oZXJvLXdyYXAge1xuICAgIC8vICYuaGVyby1tYWluIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG5cbiAgJi52aWRlby1pdGVtIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICB9XG4gIH1cblxuICAvLyAuaGVyby1tYWluICYge1xuICAvLyAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgLy8gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAvLyAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAvLyAgICAgfVxuICAvLyAgICAgPiAuY2VsbCB7XG4gIC8vICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gIC8vICAgICB9XG4gIC8vIH1cblxuICAuZ3JpZC1jb2x1bW4tMiAmIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLmVkaXRvcmlhbC1saXN0ICYge1xuICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbiAgfVxuXG4gIC5ncmlkLWl0ZW1zICYge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIC8vIG1heC13aWR0aDogMzYwcHg7XG4gICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogYXV0bztcbiAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLmFydGljbGVzLWxpc3QgJiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgLy8gbWF4LXdpZHRoOiAzNjBweDtcbiAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBhdXRvO1xuICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLmFydGljbGUtaXRlbS1hdWRpbyB7XG4gIC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAvLyAgICAgb3JkZXI6IDM7XG4gIC8vIH1cblxuICAuYXJ0aWNsZS1pdGVtLXRpdGxlIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXgtd2lkdGg6IDcwJTtcbiAgICB9XG4gIH1cbn1cblxuLmFydGljbGUtaXRlbS1jb250ZW50IHtcbiAgcCB7XG4gICAgY29sb3I6ICM0ZDRkNGQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uYXJ0aWNsZS1pdGVtLWRlc2Mge1xuICBwIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgfVxufVxuXG4uYXJ0aWNsZS1pdGVtLWltZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICBpbWcge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gID4gYSB7XG4gICAgPiBpbWcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGFzcGVjdC1yYXRpbzogNC8zO1xuICAgICAgICAtby1vYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB9XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgZWFzZSAwcywgYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlIDBzLFxuICAgICAgICBvcGFjaXR5IDAuMjVzIGVhc2UgMHM7XG4gICAgfVxuXG4gICAgJjpob3ZlcjphZnRlcixcbiAgICAmLmhvdmVyZWQtaW1nOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICB9XG4gIH1cblxuICAuc2lnbi1pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogLTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAtMjBweDtcbiAgfVxuXG4gIC5lcXVhbGl6ZS1jb2x1bW5zICYge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gIH1cblxuICAuYmxvY2std3JhcHBlciAmIHtcbiAgICBpbWcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZ2FtZXMtaXRlbSAmIHtcbiAgICBpbWcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaGFzLW92ZXJsYXkgJiB7XG4gICAgYTphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3ZDcwO1xuICAgICAgb3BhY2l0eTogMC4zO1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIGZpbHRlcjogZ3JheTsgLyogSUU2LTkgKi9cbiAgICAgIC13ZWJraXQtZmlsdGVyOiBncmF5c2NhbGUoMSk7IC8qIEdvb2dsZSBDaHJvbWUsIFNhZmFyaSA2KyAmIE9wZXJhIDE1KyAqL1xuICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMSk7IC8qIE1pY3Jvc29mdCBFZGdlIGFuZCBGaXJlZm94IDM1KyAqL1xuICAgIH1cbiAgfVxufVxuXG4vLyAubWFpbi1pdGVtIHtcbi8vICAgICAuYXJ0aWNsZS1pdGVtLWltZyB7XG4vLyAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuLy8gICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xcmVtO1xuLy8gICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMXJlbTtcbi8vICAgICAgICAgICAgIC5oZXJvLW1haW4gJiB7XG4vLyAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyOTJweDtcbi8vICAgICAgICAgICAgICAgICBpbWcge1xuLy8gICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4vLyAgICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuLy8gICAgICAgICAgICAgICAgIH1cbi8vICAgICAgICAgICAgIH1cbi8vICAgICAgICAgfVxuLy8gICAgIH1cbi8vIH1cblxuLmFydGljbGUtaXRlbS1hdXRob3Ige1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBpbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBtYXgtd2lkdGg6IDIycHg7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwcHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgbWF4LXdpZHRoOiAzNHB4O1xuICAgIH1cbiAgfVxufVxuXG4uYXJ0aWNsZS1pdGVtLXRpdGxlIHtcbiAgLy9tYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuXG4gIC8vIC5tYWluQ29udGFpbmVyNDUgJiB7XG4gIC8vICAgbWluLWhlaWdodDogMjVweDtcbiAgLy8gfVxuXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNiB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgW2Rpcj1cImx0clwiXSAmIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuICB9XG5cbiAgLnRpdGxlLW5vcm1hbCAmIHtcbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCxcbiAgICBoNSxcbiAgICBoNiB7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIH1cbiAgfVxuXG4gIGgyIHtcbiAgICAvLyAuaGVyby1tYWluICYge1xuICAgIC8vICAgICBmb250LXdlaWdodDogOTAwO1xuICAgIC8vICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI2KTtcbiAgICAvLyAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgLy8gICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIC8vICAgICB9XG4gICAgLy8gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAvLyAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzUpO1xuICAgIC8vICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAvLyAgICAgfVxuXG4gICAgLy8gICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgLy8gICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIC8vICAgICAgICAgbGluZS1oZWlnaHQ6IGluaXRpYWw7XG4gICAgLy8gICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgLy8gICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzNik7XG4gICAgLy8gICAgICAgICB9XG4gICAgLy8gICAgIH1cbiAgICAvLyB9XG5cbiAgICAuaGVyby1zbGlkZXIgJiB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQ0KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDUwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBoNSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBsaW5lLWhlaWdodDogMS43O1xuICAgIH1cbiAgfVxuXG4gIGEge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgJjpob3ZlcixcbiAgICAmLmhvdmVyZWQge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxuICAmLnN0eWxlLXYyIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgaDYge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiAgICB9XG4gICAgc3BhbiB7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLmdhbWUtaXRlbS1pbmZvICYge1xuICAgIGgyIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzMyk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgfVxuICAgIH1cbiAgICAucGF0aC1mcm9udHBhZ2UgJiB7XG4gICAgICBoMyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYmFja2dyb3VuZDogI2RjZWJkODtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNXJlbTtcbiAgICBjb2xvcjogIzBhMWEwZjtcbiAgfVxuXG4gIC5ncmlkLWNvbHVtbi0yICYge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDU1cHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgW2Rpcj1cImx0clwiXSAmIHtcbiAgICAgICAgbWluLWhlaWdodDogNjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmFuY2hvciB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgaSB7XG4gICAgZm9udC1zaXplOiA5cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cblxuLmFydGljbGUtaXRlbS1jYXRlZ29yeSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luOiAwO1xuICAuYXJ0aWNsZS1pdGVtLXRpdGxlICYge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNHJlbTtcbiAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNHJlbTtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIHdpZHRoOiAxLjVweDtcbiAgICAgIGhlaWdodDogMTNweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNnB4O1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICB9XG4gICAgYSB7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmFydGljbGVzLWxpc3QgJiB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmFydGljbGUtaXRlbS1oaWdobGlnaHQge1xuICB1bCB7XG4gICAgLy9saXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgIGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgIGNvbG9yOiAkZW1wZXJvcjtcbiAgICB9XG4gIH1cblxuICAuYXJ0aWNsZS1pdGVtLWZvb3RlciAmIHtcbiAgICB1bCB7XG4gICAgICBsaSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmFydGljbGVzLWxpc3QgJiB7XG4gICAgdWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLmFydGljbGUtaXRlbS1tZXRhIHtcbiAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gIGNvbG9yOiAjM2IzYjNiO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gIC5ncmlkLWl0ZW1zICYge1xuICAgIC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIC8vICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgLy8gICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgLy8gfVxuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gIH1cbiAgaSB7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNXJlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgYSB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgfVxuXG4gICYgPiBzcGFuOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcHggc29saWQgIzkyOTg5ODtcbiAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMC41cmVtO1xuICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMC41cmVtO1xuICB9XG5cbiAgLm1ldGEtYXV0aG9yIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICB9XG5cbiAgLm1ldGEtdmlld3Mge1xuICAgIHNwYW4ge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5zZWFyY2gtcmVzdWx0cyAmIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuZGFyay10aGVtZSAmIHtcbiAgICBjb2xvcjogI2FmYWZhZjtcbiAgfVxuICAmLmJyZWFraW5nIHtcbiAgICB0aW1lIHtcbiAgICAgIGNvbG9yOiAjY2U0MjQyO1xuICAgIH1cbiAgfVxufVxuXG4udmlld3MtY291bnQtcGxhY2Vob2xkZXIge1xuICBkaXNwbGF5OiBub25lO1xuXG4gICYuc2hvd3ZpZXdzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLnZpZXdzLWNvdW50LFxuLnZpZGVvLXN0YW1wIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgZm9udC1zaXplOiByZW0tY2FsYygxMCk7XG4gIGNvbG9yOiAjODk4ZjkzO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBsaW5lLWhlaWdodDogMjtcbiAgfVxuICAmLnZpZXdzLWNvdW50LXBsYWNlaG9sZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi5zaG93dmlld3Mge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIGkge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG5cbi52aWV3cy1jb3VudC5hYnMtZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogNXB4O1xuICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDEwcHg7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIHotaW5kZXg6IDE7XG59XG5cbi52aWRlby1zdGFtcC5hYnMtZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkcHJpbWFyeS1kYXJrLCAwLjU5KTtcbiAgcGFkZGluZzogMnB4IDVweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHotaW5kZXg6IDE7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xufVxuXG4ubWVkaWEtbGFiZWwge1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgaSB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwLjM1cmVtO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gIH1cblxuICAuYXJ0aWNsZS1pdGVtLW1ldGEgJiB7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXJlbTtcbiAgfVxufVxuXG4ubWVkaWEtbGFiZWwuYWJzLWVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDAuNzVyZW07XG4gICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNzVyZW07XG4gIGNvbG9yOiAkd2hpdGU7XG5cbiAgLmdyaWQtaXRlbXMgJixcbiAgLm9iamVjdC1pdGVtICYge1xuICAgIGJvdHRvbTogMC42cmVtO1xuICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNnJlbTtcbiAgfVxuXG4gIC5vYmplY3QtaXRlbSAmIHtcbiAgICBwYWRkaW5nOiAwLjI1cmVtO1xuXG4gICAgaSB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgfVxuICB9XG5cbiAgLmFydGljbGUtaXRlbS1vdmVyYm94LWlubmVyICYge1xuICAgIGJvdHRvbTogMS4yNXJlbTtcbiAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAycmVtO1xuICB9XG59XG4ucGxheS1pY29uLFxuLmFicy1vdmVyLWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgdG9wOiAwLjVyZW07XG4gICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNXJlbTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHotaW5kZXg6IDE7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAvL2ZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIHRvcDogMXJlbTtcbiAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xuICAgIC8vIHdpZHRoOiA2NXB4O1xuICAgIC8vIGhlaWdodDogNjVweDtcbiAgICBmb250LXNpemU6IDM1cHg7XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiAzMHB4O1xuICB9XG5cbiAgaTpub3QoLmljb24tcGxheS1hcnJvdykge1xuICAgIC8vY29sb3I6ICRncmF5O1xuICAgIC8vIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAvLyBwYWRkaW5nOiAxMHB4IDlweCAxMHB4IDEycHg7XG4gICAgLy8gYm9yZGVyLXJhZGl1czogMTAwMHB4O1xuICAgIC8vIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLy9tYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMnB4O1xuICB9XG4gIC5lbnRyeS1yZWxhdGVkICYge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNDUpO1xuICAgIGltZyB7XG4gICAgICB3aWR0aDogNTVweDtcbiAgICB9XG4gIH1cbiAgaS5pY29uLXBsYXktYXJyb3cge1xuICAgIGZvbnQtc2l6ZTogOHJlbTtcbiAgICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuOCk7XG4gICAgLmFydGljbGVzLWxpc3QuaGFzLXNlcGFyYXRvciAmIHtcbiAgICAgIGZvbnQtc2l6ZTogMy41cmVtO1xuICAgIH1cbiAgICAuZ3JpZC1pdGVtcyAmIHtcbiAgICAgIGZvbnQtc2l6ZTogMy41cmVtO1xuICAgIH1cbiAgfVxuXG4gIC5zaWRlYmFyLXdyYXAgJiB7XG4gICAgLy9mb250LXNpemU6IDJyZW07XG4gICAgdG9wOiAwLjVyZW07XG4gICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMC41cmVtO1xuICAgIGltZyB7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICB9XG4gIH1cblxuICAuZ3JpZC1pdGVtcyAmIHtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICB0b3A6IGF1dG87XG4gICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMC43NXJlbTtcbiAgICBib3R0b206IDAuNzVyZW07XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC52aWRlby1saXN0ICYge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB0b3A6IDAuNXJlbTtcbiAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjVyZW07XG4gICAgLy8gd2lkdGg6IDM1cHg7XG4gICAgLy8gaGVpZ2h0OiAzNXB4O1xuICB9XG59XG5cbi5hbGJ1bS1pY29uIHtcbiAgQGV4dGVuZCAucGxheS1pY29uO1xuICAubWVkaWEtYXJ0aWNsZS1saXN0ICYsXG4gIC5zdGF0aWMtY29sdW1uLXdyYXAgJiB7XG4gICAgdG9wOiA3cHg7XG4gICAgbGVmdDogN3B4O1xuICAgIGltZyB7XG4gICAgICB3aWR0aDogMThweDtcbiAgICB9XG4gIH1cbn1cbi5sYWJlbC1saXZlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBiYWNrZ3JvdW5kOiAjMmM4YTgyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoNDQsIDEzOCwgMTMwKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDQ0LCAxMzgsIDEzMCk7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuLmxhYmVsLFxuLmxhYmVsLWxpdmUge1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBhIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG4gIGkge1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAzcHg7XG4gIH1cbiAgJi5hYnMtZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgcGFkZGluZzogN3B4IDdweCA1cHg7XG4gIH1cbiAgJi5sYWJlbC1jZW50ZXIge1xuICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogaW5pdGlhbDtcbiAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgW2Rpcj1cImx0clwiXSAmIHtcbiAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogNTAlO1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogaW5pdGlhbDtcbiAgICB9XG4gIH1cbiAgJi5sYWJlbC1ib3R0b20ge1xuICAgIGJvdHRvbTogMDtcbiAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IGF1dG87XG4gICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICB0b3A6IGF1dG87XG4gIH1cblxuICAmLmxpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBpIHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmJyZWFraW5nLW5ld3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gIH1cblxuICAmLmFuYWx5c2lzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmM4YTgyO1xuICB9XG5cbiAgJi5zcGVjaWFsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGU0NTQwO1xuICB9XG5cbiAgJi5saXZlY292ZXJhZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gIH1cblxuICAmLmJyZWFraW5nIHtcbiAgICAvL2JhY2tncm91bmQtY29sb3I6ICNkNTBhMGE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgfVxuXG4gIC5hcnRpY2xlLWl0ZW0tdGl0bGUgJixcbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uIGgzICYsXG4gIC5lbnRyeS1oaWdobGlnaHQgbGkgJiB7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNHJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHBhZGRpbmc6IDZweCA1cHggNXB4O1xuXG4gICAgaSB7XG4gICAgICBmb250LXNpemU6IDExcHg7XG4gICAgfVxuICAgIC5sb3R0aWUtaWNvIHtcbiAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgLy8gbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cblxuICAubWVkaWEtb2JqZWN0LWltZyAmIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgcGFkZGluZzogNnB4IDVweCA1cHg7XG4gICAgaSB7XG4gICAgICBmb250LXNpemU6IDExcHg7XG4gICAgfVxuICAgIC5sb3R0aWUtaWNvIHtcbiAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgLy9tYXJnaW4tdG9wOiAtM3B4O1xuICAgIH1cbiAgfVxufVxuXG4ubG90dGllLWljbyB7XG4gIC8vIHdpZHRoOiA0MHB4O1xuICAvLyBoZWlnaHQ6IDQwcHg7XG4gIC8vIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLy8gLmxhYmVsLWxpdmUgJntcbiAgLy8gICB3aWR0aDogNDBweDtcbiAgLy8gICBoZWlnaHQ6IDIwcHg7XG4gIC8vICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvLyAgIG1hcmdpbi1yaWdodDogLTEwcHg7XG4gIC8vICAgbWFyZ2luLXRvcDogLTNweDtcbiAgLy8gfVxuICBoZWlnaHQ6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICAubGFiZWwtbGl2ZSAmLFxuICAubGFiZWwgJiB7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDVweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLmxpdmUtdGlja2VyLXRpdGxlICYge1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4uY2FsbG91dC5hbGVydCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMDQsIDAsIDApO1xufVxuXG4uYnJlYWtpbmctbmV3cy1hcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgaDYsXG4gIC5sYWJlbCB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICB9XG4gIC5sYWJlbC5saXZlIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTIwZGVnLCAjY2MwMDAwIDI1JSwgd2hpdGUgMjUlKTtcbiAgICBjb2xvcjogI2NjMDAwMDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMC41cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAycmVtO1xuXG4gICAgW2Rpcj1cImx0clwiXSAmIHtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyMzhkZWcsICNjYzAwMDAgMjUlLCB3aGl0ZSAyNSUpO1xuICAgIH1cbiAgfVxuICBhIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG4gIHNwYW46bm90KC5sYWJlbCkge1xuICAgIHBhZGRpbmc6IDAgMS4zcmVtO1xuICB9XG4gIHNwYW46bm90KC5sYWJlbCk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIvXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgdG9wOiAwO1xuICAgIH1cbiAgfVxuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiBpbmhlcml0O1xuICB9XG59XG5cbi8vIGJyZWFraW5nIG5ld3Ncbi5icmVha2luZy1oZXJvIHtcbiAgaDEge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgfVxuICB9XG4gIC5oZXJvLWl0ZW0ge1xuICAgIC5hcnRpY2xlLWl0ZW0tdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIGgyIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMzNweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5sYWJlbC5hYnMtZWwge1xuICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgfVxufVxuXG4uZW50cnktYXJ0aWNsZS1pbm5lciB7XG4gIC8vQGluY2x1ZGUgeHktZ3V0dGVycygzMCwgJ21hcmdpbicsICRuZWdhdGl2ZTogZmFsc2UpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgQGluY2x1ZGUgeHktZ3V0dGVycyg2MCwgXCJtYXJnaW5cIiwgJG5lZ2F0aXZlOiB0cnVlKTtcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoNjAsIFwicGFkZGluZ1wiLCAkbmVnYXRpdmU6IGZhbHNlKTtcbiAgICB9XG4gIH1cbn1cblxuLmVudHJ5LW1lZGlhIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG5cbiAgLnNsaWNrLWFycm93IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODIpO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgaGVpZ2h0OiA0MnB4O1xuICAgIHdpZHRoOiA0MnB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGhlaWdodDogNTlweDtcbiAgICAgIHdpZHRoOiA1OXB4O1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgICAmLnNsaWNrLW5leHQge1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMC41cmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxLjVyZW07XG4gICAgICB9XG4gICAgfVxuICAgICYuc2xpY2stcHJldiB7XG4gICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDAuNXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxLjVyZW07XG4gICAgICB9XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgJi5zbGljay1wcmV2IHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xuICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZSAwcztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5zbGljay1uZXh0IHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDFyZW07XG4gICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlIDBzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5lbnRyeS10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGgxIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDM4KTtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIC8vbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIG1hcmdpbjogMC44cmVtIDA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICBtYXJnaW46IDAuOHJlbSAwIDFyZW07XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgLy9wYWRkaW5nOiAwIDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBoMSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgfVxuICB9XG5cbiAgKyAuZW50cnktZnVsbC1tZXRhIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICB9XG59XG5cbi5lbnRyeS1jYXRlZ29yeSB7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgfVxuICBhIHtcbiAgICBjb2xvcjogIzRkNGQ0ZDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDQwcHg7XG4gICAgZmxvYXQ6ICN7JGRlZmF1bHQtZGlyZWN0aW9ufTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFyZW07XG4gICAgfVxuICAgICY6aG92ZXIsXG4gICAgJi5hY3RpdmUge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cblxuICAgICY6bm90KC5zdWItY2F0ZWdvcnkpIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdWItY2F0ZWdvcnkge1xuICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDIwcHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1kYXJrO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMnJlbTtcbiAgICAgIH1cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZTkwMlwiO1xuICAgICAgICAgIC8vcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICAgICAgICAgIGZvbnQtc2l6ZTogOXB4O1xuICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgIH1cbiAgfVxufVxuXG4ucGFnZS1pbmRpY2F0b3Ige1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gIH1cbn1cblxuLnBhZ2UtY2F0ZWdvcnkge1xuICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMjBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDJyZW07XG4gIH1cbiAgYSxcbiAgaDIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyOCk7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAvLyBsaW5lLWhlaWdodDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIC8vICY6Zmlyc3QtY2hpbGR7XG4gICAgLy8gICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAvLyAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuICAgIC8vICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgLy8gICBjb2xvcjogJGJsYWNrO1xuICAgIC8vICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAyMHB4O1xuICAgIC8vICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwcHg7XG4gICAgLy8gICAmOmFmdGVyIHtcbiAgICAvLyAgICAgY29udGVudDogXCJcXGU5MDJcIjtcbiAgICAvLyAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8vICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgIC8vICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgLy8gICAgIGZvbnQtc2l6ZTogOXB4O1xuICAgIC8vICAgICB0b3A6IDlweDtcbiAgICAvLyAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIC8vICAgfVxuICAgIC8vIH1cbiAgfVxufVxuXG4uZW50cnktaGlnaGxpZ2h0IHtcbiAgY29sb3I6ICM1NTU1NTU7XG4gIHVsIHtcbiAgICAvL2xpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcbiAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAmLnJlZC1idWxsZXRzIHtcbiAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG5cbiAgICAgIHRpbWUge1xuICAgICAgICAubWFpbi1pdGVtICYge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgICBjb2xvcjogIzNiM2IzYjtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIH1cbiAgfVxuXG4gICYuYnJlYWtpbmcge1xuICAgIGxpIHtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgfVxuICAgIH1cbiAgICB0aW1lIHtcbiAgICAgIGNvbG9yOiAjY2U0MjQyO1xuICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZTkxNFwiO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBmb250LXNpemU6IDRweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgIHRvcDogM3B4O1xuICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAtM3B4O1xuICAgICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmJyZWFraW5nLWhlcm8gJiB7XG4gICAgdWwge1xuICAgICAgbGkge1xuICAgICAgICAmOjptYXJrZXIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZ3JpZC1oaWdobGlnaHRzIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gIHVsIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgIH1cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcHggc29saWQgJHNlcGFyYXRvci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmVudHJ5LWNvbnRlbnQge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgY29sb3I6ICMzNDM0MzQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gIH1cbiAgPiAqIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG4gIC50d2l0dGVyLXR3ZWV0IHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnBhcmFncmFwaC0tdHlwZS0tZGVzY3JpcHRpb24ge1xuICAgIGRpdltkYXRhLW9lbWJlZC11cmwqPVwidHdpdHRlci5jb21cIl0ge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuICB9XG4gIHAge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1ib2R5OyBcbiAgICBjb2xvcjogIzE3MkYyRjtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI5cHg7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgXG4gXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgaGVpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBkaXNwbGF5OiBpbmhlcml0O1xuICAgIH1cblxuICAgIC8vIGZiIGluc2VydHNcbiAgICA+IGlmcmFtZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbiAgZGl2W2NvbnRlbnRlZGl0YWJsZT1cImZhbHNlXCJdIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuICBmaWd1cmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvIDIwcHg7XG4gICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICB9XG5cbiAgYnIge1xuICAgIG1hcmdpbjogMCAwIDFyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIHAgYnIge1xuICAgIG1hcmdpbjogMCAwIDFyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIGEge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiBzY2FsZS1jb2xvcigkcHJpbWFyeS1jb2xvciwgJGxpZ2h0bmVzczogLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgYmxvY2txdW90ZTpub3QoLnRpa3Rvay1lbWJlZCkge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuICAgIGNvbG9yOiAkcHJpbWFyeS1kYXJrO1xuICAgIGJhY2tncm91bmQ6ICNlY2Y0ZjM7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBwYWRkaW5nOiAycmVtIDNyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXItI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6IDNyZW0gNXJlbTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwcmVtO1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTVweDtcbiAgICAgIC8vY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgLy9mb250LXNpemU6IDRyZW07XG4gICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuXG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvaWNvbi9sb3dlci1xdW90ZS5wbmdcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgICB3aWR0aDogMjVweDtcbiAgICAgIGhlaWdodDogMjVweDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgYm90dG9tOiAxcmVtO1xuICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA0MHB4O1xuICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwcmVtO1xuICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAyNXB4O1xuICAgICAgLy8gY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgLy9mb250LXNpemU6IDRyZW07XG4gICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuXG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvaWNvbi91cHBlci1xdW90ZS5wbmdcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgICB3aWR0aDogMjVweDtcbiAgICAgIGhlaWdodDogMjVweDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgdG9wOiAxcmVtO1xuICAgICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDQ1cHg7XG4gICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1kYXJrO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjcpO1xuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50aWt0b2stZW1iZWQge1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgaWZyYW1lIHtcbiAgICAvLyB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIC8vIGFzcGVjdC1yYXRpbzogMTYgLyA5O1xuXG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuXG4gIC50d2l0dGVyLXR3ZWV0LFxuICAuaW5zdGFncmFtLW1lZGlhIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC5tdWx0aW1lZGlhLWVudHJpZXMgJiB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbiAgJi5zdHlsZS12MSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDJyZW07XG4gICAgfVxuICB9XG5cbiAgcCArIGgzLFxuICBwICsgaDIge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICB9XG59XG5cbi5lbnRyeS1hZGRyZXNzIHtcbiAgbWFyZ2luLXRvcDogMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIGgzIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuICB1bCB7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uZW50cnktc3BvdGxpZ2h0IHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGJvcmRlci0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAycmVtO1xuICAgIC5zdHlsZS12MSAmIHtcbiAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IC0ycmVtO1xuICAgIH1cbiAgfVxuICBoMiB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgfVxuICB9XG59XG5cbi5lbnRyeS1zdWJzY3JpYmUge1xuICBtYXJnaW46IDAgYXV0bztcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHdpZHRoOiA0MDBweDtcbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4uZW50cnktcmVsYXRlZCB7XG4gIC5zZWN0aW9uLXRpdGxlIGg0IHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG59XG5cbi5lbnRyeS10YWdzIHtcbiAgbWFyZ2luOiAwIDAgMi41cmVtO1xuICBwYWRkaW5nOiAxcmVtIDAgMC41cmVtO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgjYTFhMTk0LCAwLjQpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgjYTFhMTk0LCAwLjQpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblxuICBzcGFuIHtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbGluZS1oZWlnaHQ6IDI5cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAkdGFncy1zcGFuLXNpemU7XG4gIH1cblxuICAuYnV0dG9uIHtcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICBtYXJnaW46IDAgMCAwLjVyZW0gMC41cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdmVydGljYWwtYWxpZ246IGluaXRpYWw7XG4gICAgZm9udC1zaXplOiAkdGFncy1idXR0b24tc2l6ZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICB9XG4gICAgJi5ncmF5LmhvbGxvdzpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNmNGYzO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjZWNmNGYzO1xuICAgIH1cbiAgfVxuXG4gIC5lbnRyeS1hcnRpY2xlLWlubmVyICYge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLmVudHJ5LXNoYXJlcy13cmFwcGVyIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcblxuICBhIHtcbiAgICB0ZXh0LWFsaWduOiAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259O1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjVyZW07XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuXG4gICAgaSB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgfVxuICB9XG5cbiAgLmVudHJ5LW1ldGEtZm9vdGVyICYge1xuICAgIGEge1xuICAgICAgdGV4dC1hbGlnbjogI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTtcbiAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjc1cmVtO1xuICAgICAgY29sb3I6ICM4OThmOTM7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZW50cnktbWV0YS1mb290ZXIge1xuICAuZW50cnktbWV0YSAmIHtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDA7XG4gIH1cbn1cblxuLmVudHJ5LXNoYXJlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gIGEge1xuICAgIHRleHQtYWxpZ246ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn07XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNXJlbTtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgfVxuXG4gICAgaSB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgYSB7XG4gICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMS4yNXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLmVudHJ5LWFzaWRlLWluZm8ge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgd2lkdGg6IDMxMHB4O1xuICAgICYuY2FydG9vbi1hdXRob3Ige1xuICAgICAgbWFyZ2luLXRvcDogNzBweDtcbiAgICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDY1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIHdpZHRoOiAyMDBweDtcbiAgfVxufVxuXG4uZW50cnktZnVsbC1tZXRhIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbn1cblxuLmVudHJ5LWF1dGhvciB7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgLy8gc3BhbntcbiAgLy8gICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gIC8vICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMHB4O1xuICAvLyAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMHB4O1xuICAvLyAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gICAmOmFmdGVye1xuICAvLyAgICAgY29udGVudDogJyc7XG4gIC8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgLy8gICAgIHdpZHRoOiAxcHg7XG4gIC8vICAgICBoZWlnaHQ6IDEwMCU7XG4gIC8vICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIC8vICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAvLyAgICAgdG9wOiA1MCU7XG4gIC8vICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIC8vICAgfVxuICAvLyB9XG4gIGltZyB7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwcHg7XG4gIH1cblxuICBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDRweDtcbiAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNXJlbTtcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiLFwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB1bCB7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjVyZW07XG4gICAgbGkge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjVyZW07XG4gICAgfVxuICB9XG5cbiAgLy8gLmVudHJ5LW1ldGEgJiB7XG4gIC8vICAgcGFkZGluZzogMDtcbiAgLy8gICBib3JkZXI6IDA7XG4gIC8vIH1cbn1cblxuLmVudHJ5LWF1dGhvci1pbWcge1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRibGFjaztcbn1cblxuLmVudHJ5LWxhYmVsIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIG1heC13aWR0aDogNjAwcHg7XG4gIH1cbiAgdWwge1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG4gICAgbGkge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYWYzZjI7XG4gICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIHNwYW46bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5lbnRyeS1hc2lkZS1tZXRhIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5lbnRyeS1mdWxsLW1ldGEgJiB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG59XG5cbi5lbnRyeS1kYXRlLWl0ZW1zIHtcbiAgLmVudHJ5LWRhdGU6bm90KDpvbmx5LWNoaWxkKTpmaXJzdC1jaGlsZCB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgdGV4dC1hbGlnbjogI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTtcbiAgfVxufVxuXG4uZW50cnktZGF0ZSB7XG4gIGNvbG9yOiAkZ3JheTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBjb2xvcjogIzkyOTg5ODtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xuICB9XG4gIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLmVudHJ5LWFzaWRlLW1ldGEgJiB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMSk7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBwYWRkaW5nLXRvcDogMC4ycmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgIH1cbiAgfVxuXG4gIC5lbnRyeS1tZXRhICYge1xuICAgIHBhZGRpbmc6IDAgMCAwLjI1cmVtO1xuICAgIGNvbG9yOiAjOTk5OTk5O1xuICAgIHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgIH1cbiAgfVxuXG4gIC5lbnRyeS1mdWxsLW1ldGEgJiB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbi5lbnRyeS1hc2lkZS1zaGFyZXMge1xuICAvLyBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKXtcbiAgLy8gICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8vICAgd2lkdGg6IDEwMCU7XG4gIC8vICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIC8vICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gIC8vICAgcGFkZGluZy10b3A6IDFyZW07XG4gIC8vICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgLy8gICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAvLyAgIC5zaGFyZS1pY29ucy13cmFwe1xuICAvLyAgICAvLyBtYXJnaW4tdG9wOiAxcmVtO1xuICAvLyAgIH1cbiAgLy8gfVxuXG4gIC5lbnRyeS1zaGFyZS1yb3c6bm90KC5lbnRyeS1ib29rbWFyaykge1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDAuNXJlbTtcbiAgfVxuXG4gIC5lbnRyeS1ib29rbWFyayB7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogYXV0bztcbiAgICAmLmFjdGl2ZSB7XG4gICAgICBhIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyZWVuMTtcbiAgICAgICAgaSB7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJGljb24tYm9va21hcmstZ3JlZW47XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5tdWx0aW1lZGlhLWVudHJpZXMgJiB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG5cbi5lbnRyeS1zaGFyZXMge1xuICAuZW50cnktYm9va21hcmsge1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDJyZW07XG4gIH1cbn1cblxuLmhlcm8tc2xpZGVyIHtcbiAgLnNsaWNrLWRvdHMgbGkge1xuICAgIG1hcmdpbjogMCA4cHg7XG4gIH1cbn1cblxuLnNoYXJlLWljb25zLXdyYXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAuc29jaWFsLWxibCB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNXJlbTtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmVudHJ5LXNoYXJlcy13cmFwcGVyICYge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRzZXBhcmF0b3ItY29sb3I7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG5cbiAgLmVudHJ5LWFzaWRlLWluZm8gJiB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgLy8gYm9yZGVyLXRvcC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm11bHRpbWVkaWEtZW50cmllcyAmIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHByaW1hcnktY29sb3I7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgIHBhZGRpbmctdG9wOiAxLjVyZW07XG4gIH1cblxuICAudmlkZW8tYXNpZGUtbWV0YSAmIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgLmVudHJ5LXNoYXJlLXJvdyB7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuYWRkdGhpc190b29sYm94IHtcbiAgICAuYXRjbGVhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vLyBtdWx0aW1lZGlhIGdhbGxlcnkgcGFnZVxuLm11bHRpbWVkaWEtZW50cmllcyB7XG4gIHBhZGRpbmc6IDJyZW0gMXJlbSAxcmVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgcGFkZGluZzogM3JlbTtcbiAgfVxufVxuXG4uYnRuLXNoYXJlLXdyYXAge1xuICAuZW50cnktbWV0YSAmIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICAgIC5idG4tc2hhcmUtc29jaWFsIHtcbiAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMC41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZW50cnktYXNpZGUtbWV0YSAmIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gIH1cbn1cbi5lbnRyeS1zaGFyZS1yb3cge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNXJlbTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIGEge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmN2Y2O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBoZWlnaHQ6IDM4cHg7XG4gICAgd2lkdGg6IDM4cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JlZW4xO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAuZGFyay10aGVtZSAmIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG5cbiAgICAucG9kY2FzdC1zY3JlZW4gJiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyZWVuMTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubGl2ZS1zaGFyZXMtd3JhcHBlciAmIHtcbiAgICB9XG4gIH1cbiAgLmljb24tc2hhcmUge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgfVxufVxuXG5maWdjYXB0aW9uIHtcbiAgLmVudHJ5LWNvbnRlbnQgJiB7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi5pbWctY2FwdGlvbiB7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xuICBjb2xvcjogJGdyYXk7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgbWluLWhlaWdodDogMC4xcmVtO1xuICAuZW50cnktbWVkaWEgJixcbiAgJi5zdHlsZWQge1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gICYuZGFyayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRlZDtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbSAwLjJyZW07XG4gIH1cbiAgLmxpdmUtYmxvZyAmIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLmluamVjdGVkLWJsb2NrIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAuYmxvY2stY29udGVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIGg1IHtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYmxvY2stdGl0bGUge1xuICAgIHdpZHRoOiAxMzVweDtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEuNXJlbTtcbiAgICBoMiB7XG4gICAgICBmb250LXNpemU6IDI3cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAuaXRlbS1hcmVhLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICB9XG5cbiAgLml0ZW0tYXJlYSB7XG4gICAgaDIuaXRlbS1hcmVhLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI3KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaDUuaXRlbS1hcmVhLXRpdGxlIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuXG4gIHAge1xuICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgfVxuXG4gIHVsIHtcbiAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLmluamVjdGVkLW9waW5pb24ge1xuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXB4IHNvbGlkICRwcmltYXJ5LWxpZ2h0O1xuICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAubWVkaWEtb2JqZWN0LWltZyB7XG4gICAgICAgIHdpZHRoOiA3NXB4O1xuICAgICAgICBoZWlnaHQ6IDc1cHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5saW5rLWhvbGRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICB9XG4gIC5hdXRob3ItbmFtZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgfVxuICBoNSB7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICB9XG59XG5cbi53aXRoLXNlcGFyYXRvciB7XG4gIC5tZWRpYS1vYmplY3Q6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIH1cbiAgcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWR0aDogMzAlO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmF5O1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLml0ZW0tYXJlYSB7XG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbn1cblxuLml0ZW0tYXJlYS1pbWcge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gIGJ1dHRvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAwLjg7XG4gICAgfVxuICB9XG59XG5cbi5pdGVtLWFyZWEtdGl0bGUge1xuICBzcGFuIHtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gIH1cblxuICBhIHtcbiAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5pdGVtLWFyZWEtbWV0YSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcblxuICB0aW1lIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICBjb2xvcjogJG5ldmFkYTtcblxuICAgIHNwYW4ge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cblxuICAgIGkge1xuICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMC4yNXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLmF1dGhvci1tZXRhLWFyZWEge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJsYWNrO1xuICBwYWRkaW5nOiAwIDAgMC41cmVtO1xuXG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiA1MHB4O1xuICB9XG59XG5cbnVsLmhhcy1zZXBhcmF0b3IgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xufVxuXG4ub3Bpbmlvbi1hdXRob3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHBhZGRpbmc6IDEuNXJlbSAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgfVxuICAuYXV0aG9yLW5hbWUge1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG4gIC5hdXRob3ItZGVzYyB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgfVxuICAuYXV0aG9yLW1ldGEge1xuICAgIHBhZGRpbmc6IDFyZW0gMXJlbSAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG4gICYuc2luZ2xlIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIHRleHQtYWxpZ246ICN7JGRlZmF1bHQtZGlyZWN0aW9ufTtcbiAgICB9XG4gICAgLmF1dGhvci1ncmlkIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiA5MnB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWluLWhlaWdodDogOTVweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLndyaXRlci1jaGVjayB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNXJlbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmF1dGhvci1tZXRhIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc29jaWFscy1ibG9jayB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDdweDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYXV0aG9yLWltZyB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgd2lkdGg6IDkycHg7XG4gIGhlaWdodDogOTJweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLXdlYmtpdC1tYXNrLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudCh3aGl0ZSwgYmxhY2spO1xuXG4gIGltZyB7XG4gICAgLy9maWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLCB0cmFuc2Zvcm0gMC4yczsgLyogQW5pbWF0aW9uICovXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICB9XG4gIGEge1xuICAgICY6aG92ZXIge1xuICAgICAgaW1nIHtcbiAgICAgICAgLy9maWx0ZXI6IGdyYXlzY2FsZSgwKTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgICAuYXV0aG9yLWl0ZW0gJiB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBpbmhlcml0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm9waW5pb24tYXV0aG9yICYge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG4gIC5mbGV4LWVxdWFsICYge1xuICAgIGRpc3BsYXk6IGlubGluZS10YWJsZTtcbiAgfVxuICAub3Bpbmlvbi1hdXRob3ItbGlzdCAmIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgICBmbG9hdDogI3skZGVmYXVsdC1kaXJlY3Rpb259O1xuICAgIH1cbiAgfVxuXG4gIC5yZWxhdGVkLW9waW5pb25zICYge1xuICAgIHdpZHRoOiA3NXB4O1xuICAgIGhlaWdodDogNzVweDtcbiAgfVxuXG4gIC5nYW1lLWF1dGhvci1pbmZvICYge1xuICAgIHdpZHRoOiA2M3B4O1xuICAgIGhlaWdodDogNjNweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBpbWcge1xuICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMCk7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgfVxuICB9XG59XG5cbi5yZWxhdGVkLW9waW5pb25zIHtcbiAgbWFyZ2luLXRvcDogMS41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMS41cmVtO1xuXG4gID4gZGl2IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICRjb2x1bW5zOiAxO1xuICAgICAgJGZpcnN0LWNoaWxkLWluLWFueS1yb3c6IFwiOm50aC1jaGlsZCgjeyRjb2x1bW5zfW4gKyAxKVwiO1xuXG4gICAgICAkYW55LWNoaWxkLWluLXRoZS1sYXN0LXJvdzogXCI6bnRoLWxhc3QtY2hpbGQoLW4gKyAjeyRjb2x1bW5zfSlcIjtcblxuICAgICAgJGZpcnN0LWNoaWxkLWluLWxhc3Qtcm93OiBcIiYjeyRmaXJzdC1jaGlsZC1pbi1hbnktcm93fSN7JGFueS1jaGlsZC1pbi10aGUtbGFzdC1yb3d9XCI7XG5cbiAgICAgICN7JGZpcnN0LWNoaWxkLWluLWxhc3Qtcm93fTpub3QoLmhpZGUtZm9yLWxhcmdlKSxcbiAgICAgICN7JGZpcnN0LWNoaWxkLWluLWxhc3Qtcm93fTpub3QoLmhpZGUtZm9yLWxhcmdlKSB+IC5jZWxsIHtcbiAgICAgICAgLmFydGljbGUtaXRlbSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgJGNvbHVtbnM6IDI7XG4gICAgICAkZmlyc3QtY2hpbGQtaW4tYW55LXJvdzogXCI6bnRoLWNoaWxkKCN7JGNvbHVtbnN9biArIDEpXCI7XG5cbiAgICAgICRhbnktY2hpbGQtaW4tdGhlLWxhc3Qtcm93OiBcIjpudGgtbGFzdC1jaGlsZCgtbiArICN7JGNvbHVtbnN9KVwiO1xuXG4gICAgICAkZmlyc3QtY2hpbGQtaW4tbGFzdC1yb3c6IFwiJiN7JGZpcnN0LWNoaWxkLWluLWFueS1yb3d9I3skYW55LWNoaWxkLWluLXRoZS1sYXN0LXJvd31cIjtcblxuICAgICAgI3skZmlyc3QtY2hpbGQtaW4tbGFzdC1yb3d9Om5vdCguaGlkZS1mb3ItbGFyZ2UpLFxuICAgICAgI3skZmlyc3QtY2hpbGQtaW4tbGFzdC1yb3d9Om5vdCguaGlkZS1mb3ItbGFyZ2UpIH4gLmNlbGwge1xuICAgICAgICAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICA+IGRpdiB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICB9XG4gICAgLmFydGljbGUtaXRlbSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHNlcGFyYXRvci1jb2xvcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHNlcGFyYXRvci1jb2xvcjtcbiAgfVxufVxuXG4vLyBmb250IGNvbnRyb2xsZXIgYXJ0aWNsZSBwYWdlc1xuLmZvbnQtY29udHJvbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjZjRmMztcbiAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIC8vbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgLmZudENoYW5nZS1idG4ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICB3aWR0aDogOTBweDtcbiAgICBmbG9hdDogI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAvL21hcmdpbi10b3A6IC41cmVtO1xuICB9XG4gIHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAwIDNweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1mYW1pbHk6IHRhaG9tYTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIC5mb250LXNpemUge1xuICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxuXG4gIC5pY28tZHJhZyB7XG4gICAgZm9udC1zaXplOiAxOXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICB9XG5cbiAgLmVudHJ5LWZ1bGwtbWV0YSAmIHtcbiAgICB3aWR0aDogMjIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgLmVudHJ5LWFzaWRlLWluZm8gJiB7XG4gICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAtMS41cmVtO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cbiAgfVxufVxuXG4uc2xpZGVyLWNvbnRyb2wge1xuICBpbnB1dFt0eXBlPVwicmFuZ2VcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICB0byAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259LFxuICAgICAgIzAwMDAwMCAzNSUsXG4gICAgICAjZGNlYmU5IDAlXG4gICAgKTtcbiAgICBbZGlyPVwibHRyXCJdICYge1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuICAgICAgICB0byAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259LFxuICAgICAgICAjMDAwMDAwIDM1JSxcbiAgICAgICAgI2RjZWJlOSAwJVxuICAgICAgKTtcbiAgICB9XG4gICAgd2lkdGg6IDE3NHB4O1xuICAgIGhlaWdodDogNXB4O1xuICAgIGJvdHRvbTogdW5zZXQ7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogI3skZGVmYXVsdC1kaXJlY3Rpb259IHRvcCAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgLmVudHJ5LW1ldGEgJiB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7XG4gICAgICAgIG1hcmdpbjogMCA1MCU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgW2Rpcj1cImx0clwiXSAmIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmVudHJ5LWZ1bGwtbWV0YSAmIHtcbiAgICAgIHdpZHRoOiAxMTZweDtcbiAgICB9XG4gIH1cblxuICBpbnB1dFt0eXBlPVwicmFuZ2VcIl06Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB3aWR0aDogMTZweDtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgY3Vyc29yOiBldy1yZXNpemU7XG4gICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIC5lbnRyeS1tZXRhICYge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA0NXB4O1xuICAgICAgYmFja2dyb3VuZDogI2VjZjRmMztcbiAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cblxuICAgICYuY2xvc2Uge1xuICAgICAgaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcbiAgICAgICAgYW5pbWF0aW9uOiAxcyBlYXNlLW91dCBub3JtYWwgZm9yd2FyZHMgMiBmYWRlb3V0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiAtLS0tLS0tIFNlY3Rpb24gTWVudSAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG5cbi5zZWN0aW9uLW1lbnUtd3JhcHBlciB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIG1hcmdpbi10b3A6IDJyZW07XG59XG5cbi5zZWN0aW9uLW1lbnUge1xuICB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICB9XG4gIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMCAxcmVtO1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgfVxuICAgIGEge1xuICAgICAgLy9wYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgIGNvbG9yOiAjYWRhZGFkO1xuICAgICAgLnN0eWxlLXYxICYge1xuICAgICAgICAvLyBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIC8vIGJvcmRlci10b3A6IHRyYW5zcGFyZW50O1xuICAgICAgICAvLyBib3JkZXItI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogdHJhbnNwYXJlbnQ7XG4gICAgICAgIC8vIGJvcmRlci0jeyRkZWZhdWx0LWRpcmVjdGlvbn06dHJhbnNwYXJlbnQ7XG4gICAgICAgIC8vIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjZTllOWU5O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc2VjdGlvbi1tZW51LWRyb3Bkb3duLFxuLnNlY3Rpb24tbWVudS13cmFwcGVyIHtcbiAgdWwge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgIC8vIHBhZGRpbmctYm90dG9tOiAwLjc1cmVtO1xuICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgICAvLyAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgfVxuICBsaSB7XG4gICAgLy8gJi5hY3RpdmUsICY6aG92ZXJ7XG4gICAgLy8gICBhe1xuICAgIC8vICAgICBjb2xvcjogJHdoaXRlO1xuICAgIC8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhYTg4O1xuICAgIC8vICAgICBib3JkZXItY29sb3I6ICMwMGFhODg7XG4gICAgLy8gICB9XG4gICAgLy8gfVxuICB9XG4gICYuc3R5bGUtdjEge1xuICAgIGxpIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gICAgICAmLmFjdGl2ZSxcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHByaW1hcnktY29sb3I7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZHJvcGRvd24td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDMwMHB4O1xuICBtYXJnaW46IDJyZW0gYXV0bztcblxuICAuYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIG1pbi13aWR0aDogOTVweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGNvbG9yOiAjODk4ZjkzO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMC41cmVtO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAzOHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKTtcbiAgICBsaW5lLWhlaWdodDogMjtcbiAgfVxuXG4gIGkge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudSB7XG4gIHRleHQtYWxpZ246ICN7JGRlZmF1bHQtZGlyZWN0aW9ufTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwYWRkaW5nOiAwLjI1cmVtIDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gIHotaW5kZXg6IDI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICB0b3A6IGNhbGMoMTAwJSArIDAuMjVyZW0pO1xuXG4gIGxpIHtcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICY6aG92ZXIge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDAuNjI1cmVtIDEuNXJlbTtcbiAgICAgIGkge1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmFjdGl2ZSB7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG5cbiAgJi5leHBhbmQge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuLyogLS0tLS0tLSBTZWN0aW9uIE1lbnUgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLSBNWSBQUk9GSUxFIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cbi51c2VyLXByb2ZpbGUge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiA0MHB4O1xuICBwYWRkaW5nOiAwIDAuN3JlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAuaWNvbi1hcnJvdy1kb3duIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgJi5ob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktZGFyaztcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIC5pY29uLWFycm93LWRvd24ge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlxcZTkxN1wiO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5bdHlwZT1cImNoZWNrYm94XCJdICsgLnVzZXItcHJvZmlsZSxcblt0eXBlPVwiY2hlY2tib3hcIl0gKyAudXNlci1wcm9maWxlLWltZyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbjogMDtcbn1cblxuLnVzZXItcHJvZmlsZS1pbWcge1xuICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogNXB4O1xuICBpbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBtYXgtd2lkdGg6IDIycHg7XG4gICAgbWF4LWhlaWd0aDogMjJweDtcbiAgfVxufVxuXG4udXNlci1kcm9wZG93biB7XG4gICY6Y2hlY2tlZCB+IHtcbiAgICAuYWNjb3VudC1tZW51LWxpc3Qge1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIG9wYWNpdHk6IDI7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgfVxuICAgIC51c2VyLXByb2ZpbGUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdnBhbmVsLWNvbG9yO1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAuaWNvbi1hcnJvdy1kb3duOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTE3XCI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5hY2NvdW50LW1lbnUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDFyZW07XG4gICAgbWluLXdpZHRoOiAxMzFweDtcbiAgfVxuXG4gIC51c2VyIHtcbiAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwcHg7XG4gIH1cblxuICAuc3RpY2t5ICYge1xuICAgIG1pbi13aWR0aDogYXV0bztcbiAgfVxuICAuYWNjb3VudC1tZW51LWxpc3Qge1xuICAgIG1pbi13aWR0aDogMTMxcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktZGFyaztcbiAgICAvLyBib3JkZXI6IDA7XG4gICAgLy8gdGV4dC1hbGlnbjogI3skZGVmYXVsdC1kaXJlY3Rpb259O1xuICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDk5O1xuICAgIHRvcDogNDBweDtcbiAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwcHg7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogMC4ycyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uOiAwLjJzIGVhc2UtaW4tb3V0O1xuXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlY2Y0ZjM7XG4gICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAvL3RvcDogMnJlbSAhaW1wb3J0YW50O1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogLTEuMXJlbSAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDIwcHg7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAyMHB4O1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB0b3A6IDU1cHg7XG4gICAgfVxuXG4gICAgLnN0aWNreSAmIHtcbiAgICAgIHRvcDogMzVweDtcbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICB0cmFuc2l0aW9uOiAwLjJzIGVhc2UtaW4tb3V0O1xuICAgIH1cbiAgICBsaTpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjM2E1NDUyO1xuICAgICAgbWFyZ2luOiAwIC0wLjVyZW07XG4gICAgICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgICB9XG4gICAgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgYSxcbiAgICBidXR0b24ge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBwYWRkaW5nOiAwLjdyZW0gMC41cmVtO1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIHRleHQtYWxpZ246ICN7JGRlZmF1bHQtZGlyZWN0aW9ufTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgICAgaSB7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMHB4O1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgIGNvbG9yOiAjODQ5NTk0O1xuICAgICAgICB9XG4gICAgICAgICYuaWNvbi1lbnZlbG9wMiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1hcmVhLXdyYXAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMXJlbTtcbiAgd2lkdGg6IDM1MHB4O1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgd2lkdGg6IDUyMHB4O1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBwYWRkaW5nOiAzcmVtIDZyZW07XG4gICAgbWFyZ2luOiAzcmVtIGF1dG87XG4gIH1cbiAgLnNlY3Rpb24tdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgaDMge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tdHh0LXN0eWxlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgbWFyZ2luOiAycmVtIDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbG9yOiAjYWNhY2FjO1xuICAgICY6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlcGFyYXRvci1jb2xvcjtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIHBhZGRpbmc6IDAgMC41cmVtO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1kYXJrO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJlbWFpbFwiXTpub3QoOnBsYWNlaG9sZGVyLXNob3duKSxcbiAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgaW5wdXRbdHlwZT1cImVtYWlsXCJdOnBsYWNlaG9sZGVyLXNob3duLFxuICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06cGxhY2Vob2xkZXItc2hvd24ge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG5cbiAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICB9XG59XG5cbi5mb3JtLWFyZWEge1xuICBzZWxlY3Qge1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAuaW5wdXQtcmFkaW8ge1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMTBweCk7XG4gICAgaGVpZ2h0OiAyLjQzNzVyZW07XG4gICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBsYWJlbCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuc3VibWl0LWJ0biB7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBwYWRkaW5nOiAwLjhyZW0gMnJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuXG4gIC5pbnB1dC1maWVsZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAgIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICBib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgJjpub3QoLm5vLWljbykge1xuICAgICAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDNyZW07XG4gICAgICB9XG4gICAgfVxuICAgIHNlbGVjdCB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICB9XG5cbiAgICAmLmlucHV0LWRlZmF1bHQge1xuICAgICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAgICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICAmOm5vdCgubm8taWNvKSB7XG4gICAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDNyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBsYWJlbCB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICB9XG59XG5cbi5mb3Jnb3QtcGFzc3dvcmQge1xuICBhIHtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHByaW1hcnktZGFyaztcbiAgICB9XG4gIH1cbiAgYnV0dG9uIHtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWRhcms7XG4gICAgfVxuICB9XG4gIC5mb3JtLWFyZWEgJiB7XG4gICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxufVxuXG4uZm9ybS1zb2NpYWxzLWJ0bnMge1xuICBidXR0b24uZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGNvbG9yOiAkZ3JheSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDMwcHggIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6ICRsaWdodC1ncmF5ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBzcGFuIHtcbiAgICAgIHBhZGRpbmc6IDAgMXJlbSAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1saWdodCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4ubXktcGFnZSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICB9XG4gIC5teS1hdXRob3JzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIC8vd2lkdGg6IDEzMDBweDtcbiAgICB9XG4gIH1cbiAgLm15LXRhZ3Mge1xuICAgIC50YWdzLWxpc3Qge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1pbi13aWR0aDogOTAwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uc2Nyb2xsX2pzIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IC0xLjVyZW07XG4gIH1cbn1cblxuLmFzaWRlLWJhciB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIG1hcmdpbjogMCAtMXJlbTtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIGFuZCAobWF4LXdpZHRoOiAxMDMwcHgpIHtcbiAgICB3aWR0aDogMjUwcHggIWltcG9ydGFudDtcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICB3aWR0aDogMjY5cHg7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgfVxuICAubWVudS10YWJzIHtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VjZjRmMztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gICAgLnRhYnMtdGl0bGUgPiBhOmZvY3VzLFxuICAgIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gICAgPiBsaSB7XG4gICAgICAmOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgICB9XG5cbiAgICAgICY6bm90KC5sb2dvdXQpIHtcbiAgICAgICAgPiBhLFxuICAgICAgICA+IC5idXR0b24ge1xuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgICAgICAgICBjb250ZW50OiAkaWNvbi1hcnJvdy1kb3duO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgICAgICAgY29udGVudDogJGljb24tYXJyb3ctbGVmdDtcbiAgICAgICAgICAgICAgW2Rpcj1cImx0clwiXSAmIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAkaWNvbi1hcnJvdy1yaWdodDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgICBjb250ZW50OiAkaWNvbi1hcnJvdy11cDtcbiAgICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICA+IGEsXG4gICAgICA+IC5idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGNvbG9yOiAjOTY5Njk2O1xuICAgICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRwcmltYXJ5LWxpZ2h0O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXJlbTtcbiAgICAgICAgICAgICYuaWNvbi1lbnZlbG9wMSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuaWNvbi1zaWduLW91dCB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgID4gLmJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgIGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXJlbTtcbiAgICAgICAgICAmLmljb24tZW52ZWxvcDEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLmljb24tc2lnbi1vdXQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlY2Y0ZjM7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnVwZGF0ZS1wYXNzd29yZCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4udG9wcGVyLXRpdGxlIHtcbiAgJi5tYXJnaW4tYm90dG9tLTMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBoMyB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICB9XG4gIGgyIHtcbiAgICAubmV3c2xldHRlci1tb2RhbCAmIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjUpO1xuICAgICAgbWFyZ2luLXRvcDogLTNyZW07XG4gICAgfVxuICB9XG5cbiAgJi5zdHlsZS0xIHtcbiAgICBoMiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogLTFyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIHdpZHRoOiA1MnB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICB9XG4gICAgICAubm90aWZpY2F0aW9uLW1vZGFsICYge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucHJvZmlsZS1hdmF0YXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGltZyB7XG4gICAgd2lkdGg6IDc2cHg7XG4gICAgaGVpZ2h0OiA3NnB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICB3aWR0aDogMTAzcHg7XG4gICAgICBoZWlnaHQ6IDEwM3B4O1xuICAgIH1cbiAgfVxufVxuXG4ucHJvZmlsZS1hdmF0YXItZWRpdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBpIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgaSB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgfVxuICB9XG59XG5cbi5wcm9maWxlLWRldGFpbHMge1xuICBoMyB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICB9XG59XG5cbi5wcm9maWxlLWNvbnRlbnQge1xuICBtYXJnaW46IDFyZW0gMDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2VjZjRmMztcbiAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgIHBhZGRpbmc6IDNyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxufVxuXG4uYXJyb3ctcG9pbnRlciB7XG4gIC8vbWFyZ2luLWJvdHRvbTogLTVyZW07XG4gIGxvdHRpZS1wbGF5ZXIge1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5tZW51LXBvaW50ZXIge1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNy41cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gIH1cbn1cbi8qIC0tLS0tLS0gTVkgUFJPRklMRSAtLS0tLS0tIEVORCAtLS0tLS0tLSAqL1xuXG4vKiAtLS0tLS0tIFBFUlNPTkFMSVpFIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cbi5pbnB1dC1maWVsZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcblxuICAuaWNvLWxhYmVsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTZweDtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgY29sb3I6ICM5YTlhOWE7XG4gIH1cbiAgLmljby1zaG93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgIHBhZGRpbmctdG9wOiAwLjhyZW07XG4gICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDEuOHJlbTtcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgJi5pbnB1dC1kZWZhdWx0IHtcbiAgICBkaXJlY3Rpb246IHJ0bDtcbiAgICAuaWNvLWxhYmVsIHtcbiAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMTZweDtcbiAgICB9XG4gICAgLmljby1zaG93IHtcbiAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEuOHJlbTtcbiAgICB9XG4gIH1cblxuICAucmVxdWlyZWQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAtMXJlbTtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICB9XG59XG5cbi5yZXF1aXJlZCB7XG4gIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMTBweDtcbn1cblxuLm1lc3NhZ2Uge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgJi5hbGVydCB7XG4gICAgY29sb3I6ICRlcnJvcjtcbiAgfVxufVxuXG4ucGVyc29uYWwtbWVzc2FnZSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuICBoMiB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyNSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBjb2xvcjogJHByaW1hcnktZGFyaztcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg1MCk7XG4gICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIH1cbiAgfVxuXG4gIGgzIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDM4KTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxufVxuXG4uYWN0aW9uLWJ0biB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBtYXJnaW46IDNyZW0gYXV0byAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICBhIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLmJ1dHRvbiB7XG4gICAgYm9yZGVyLXJhZGl1czogNDBweDtcbiAgICBwYWRkaW5nOiAwLjhyZW0gMnJlbTtcbiAgICBtaW4td2lkdGg6IDE2OXB4O1xuICAgIGhlaWdodDogNDZweDtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbiAgLy8gLm5leHQtYnRue1xuICAvLyAgICY6aG92ZXJ7XG4gIC8vICAgICAubG9uZy1hcnJvdy1sZWZ0e1xuICAvLyAgICAgICB3aWR0aDogMTAwJTtcbiAgLy8gICAgICAgdHJhbnNpdGlvbjogYWxsIDQwMG1zIGVhc2UtaW4tb3V0O1xuICAvLyAgICAgfVxuICAvLyAgIH1cbiAgLy8gfVxuICAuc2tpcC1idG4ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgLy9tYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAucHJldi1idG4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7XG4gICAgY29sb3I6ICM5Njk2OTY7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG4gICAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcbiAgICAvLyAgIHNwYW57XG4gICAgLy8gICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgLy8gICB9XG4gICAgLy8gICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIC8vICAgd2lkdGg6IDUycHg7XG4gICAgLy8gICBoZWlnaHQ6IDUycHg7XG4gICAgLy8gICBwYWRkaW5nOiAxcmVtIDEuNXJlbTtcbiAgICAvLyB9XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwO1xuICAgICAgLy8gLmxvbmctYXJyb3ctcmlnaHR7XG4gICAgICAvLyAgIHdpZHRoOiAxMDAlO1xuICAgICAgLy8gICB0cmFuc2l0aW9uOiBhbGwgNDAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAvLyB9XG4gICAgfVxuICB9XG4gIC5nb3RvLWJ0biB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJEExMDA7XG4gICAgY29sb3I6ICRwcmltYXJ5LWRhcms7XG4gIH1cbn1cblxuLmFjdGlvbi0tYnV0dG9uIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAvLyAucHJldi1idG57XG4gICAgLy8gICBvcmRlcjogMTtcbiAgICAvLyAgIHBhZGRpbmc6IDA7XG4gICAgLy8gICAubG9uZy1hcnJvdy1yaWdodHtcbiAgICAvLyAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgLy8gICB9XG4gICAgLy8gfVxuICAgIC5uZXh0LWJ0biB7XG4gICAgICBvcmRlcjogMjtcbiAgICB9XG4gIH1cbiAgLy8gfiAuc2tpcC1idG57XG4gIC8vICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcbiAgLy8gICAgIG1hcmdpbi1yaWdodDogNHJlbTtcbiAgLy8gICB9XG4gIC8vIH1cbn1cblxuLmltZy1jb3ZlciB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICB3aWR0aDogNTQwcHg7XG4gIH1cbn1cbi5wZXJzb25hbC1pbm5lciB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBtYXJnaW4tdG9wOiA4cmVtO1xuICB9XG59XG5cbi5mdW5jdGlvbi1pbmZvIHtcbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgfVxuICB9XG59XG5cbi5nZXQtc3RhcnRlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC8vaGVpZ2h0OiA4NHZoO1xuICAvL2hlaWdodDogMTAwJTtcbiAgcGFkZGluZzogMzBweCAwO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAvLy8gaGVpZ2h0OiA2MDBweDtcbiAgfVxuICAuYWN0aW9uLWJ0biB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDQ7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIH1cbn1cblxuLnBlcnNvbmFsLXdyYXAge1xuICAvL3BhZGRpbmc6IDMwcHggMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmLWJlZm9yZSB7XG4gICAgaGVpZ2h0OiA4MHZoO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxODBweCk7XG4gICAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7IC8qIElFIGFuZCBFZGdlICovXG4gICAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG4gICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYtYWZ0ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICAvLyBib3R0b206IDA7XG4gICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8vQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogNDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAvL31cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgYmFja2dyb3VuZDogcmdiKDI0NywgMjUwLCAyNTApO1xuICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQoXG4gICAgICAgIDBkZWcsXG4gICAgICAgIHJnYmEoMjQ3LCAyNTAsIDI1MCwgMSkgMCUsXG4gICAgICAgIHJnYmEoMjQ3LCAyNTAsIDI1MCwgMC40ODIyMzAzOTIxNTY4NjI3KSA4MCUsXG4gICAgICAgIHJnYmEoMjQ3LCAyNTAsIDI1MCwgMCkgMTAwJVxuICAgICAgKTtcbiAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAwZGVnLFxuICAgICAgICByZ2JhKDI0NywgMjUwLCAyNTAsIDEpIDAlLFxuICAgICAgICByZ2JhKDI0NywgMjUwLCAyNTAsIDAuNDgyMjMwMzkyMTU2ODYyNykgODAlLFxuICAgICAgICByZ2JhKDI0NywgMjUwLCAyNTAsIDApIDEwMCVcbiAgICAgICk7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAgIDBkZWcsXG4gICAgICAgIHJnYmEoMjQ3LCAyNTAsIDI1MCwgMSkgMCUsXG4gICAgICAgIHJnYmEoMjQ3LCAyNTAsIDI1MCwgMC40ODIyMzAzOTIxNTY4NjI3KSA4MCUsXG4gICAgICAgIHJnYmEoMjQ3LCAyNTAsIDI1MCwgMCkgMTAwJVxuICAgICAgKTtcbiAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9XCIjZjdmYWZhXCIsZW5kQ29sb3JzdHI9XCIjZjdmYWZhXCIsR3JhZGllbnRUeXBlPTEpO1xuICAgIH1cbiAgICAuYWN0aW9uLWJ0biB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgfVxuXG4gICYtYXV0aG9yIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uaG9yaXpvbnRhbC1zY3JvbGwtd3JhcHBlciB7XG4gIC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCB7XG4gICAgd2lkdGg6IDMwMHB4O1xuICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IGluaGVyaXQ7XG4gIH1cbn1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG59XG5cbi5ob3Jpem9udGFsLXNjcm9sbC1pbm5lciB7XG4gIGhlaWdodDogaW5oZXJpdDtcbiAgLy8gLm1DU0JfaG9yaXpvbnRhbC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lcntcbiAgLy8gICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIC8vIH1cbn1cblxuLnYtaW5uZXItc2Nyb2xsIHtcbiAgJi5hdXRob3JzLWxpc3Qge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICBjb2x1bW4tZ2FwOiAxMHB4O1xuICAgIHJvdy1nYXA6IDEwcHg7XG4gICAganVzdGlmeS1pdGVtczogY2VudGVyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIDFmcik7XG4gICAgICBjb2x1bW4tZ2FwOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uaW5uZXItc2Nyb2xsIHtcbiAgLy9wYWRkaW5nLWxlZnQ6IDJyZW07XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIHBhZGRpbmctYm90dG9tOiA2cmVtO1xuICB9XG4gICYuYXV0aG9ycy1saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG4gIH1cblxuICAuYXV0aG9yLW9wdGlvbiB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG4gIH1cblxuICAudGFnLW9wdGlvbiB7XG4gICAgLnRhZyB7XG4gICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICBwYWRkaW5nOiA1cHggMTBweCAwO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zZWxlY3QtbGlzdC1pbm5lciB7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IDZyZW07XG59XG5cbi50YWdzLWxpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICYudi1pbm5lci1zY3JvbGwge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgfVxuICB9XG5cbiAgLnBlcnNvbmFsLXdyYXAgJiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXgtd2lkdGg6IDkzN3B4O1xuICAgICAgbWFyZ2luOiA0cmVtIGF1dG8gMDtcbiAgICB9XG4gIH1cbn1cblxuLy9wZXJzb25hbGl6ZWQgYXV0aG9yc1xuLmF1dGhvci1vcHRpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDg2cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICB3aWR0aDogMTE1cHg7XG4gIH1cblxuICAuYXV0aG9yLWltZyB7XG4gICAgd2lkdGg6IDg2cHg7XG4gICAgaGVpZ2h0OiA4NnB4O1xuICAgIG1hcmdpbjogMCBhdXRvIDEuNXJlbTtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDgwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGU5MzFcIjtcbiAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICB9XG5cbiAgICAmOmNoZWNrZWQge1xuICAgICAgfiAuYXV0aG9yLWltZyB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIH4gLmF1dGhvci1tZXRhIHtcbiAgICAgICAgLmF1dGhvci1uYW1lIHtcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTMyXCI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wZXJzb25hbC13cmFwICYge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbjogMC41cmVtO1xuICAgIH1cbiAgfVxufVxuXG4uYXV0aG9yLW1ldGEge1xuICAuYXV0aG9yLW9wdGlvbiAmIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIGNvbG9yOiAjOTI5ODk4O1xuICAgIC5hdXRob3ItbmFtZSB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLy8gbXktcHJvZmlsZSBhdXRob3JzXG4ubXktYXV0aG9ycyB7XG4gIC5hdXRob3JzLWxpc3Qge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZmxleDogMSAwIDAlO1xuICAgIH1cbiAgICAvLyAubUNTQl9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVye1xuICAgIC8vICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAvLyB9XG4gICAgLm1DU0JfY29udGFpbmVyIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5hdXRob3Itb3B0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xuICB9XG4gIC5hdXRob3ItaW1nIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgd2lkdGg6IDk5cHg7XG4gICAgICBoZWlnaHQ6IDk5cHg7XG4gICAgfVxuICB9XG59XG5cbi5tYW5hZ2UtYmxvY2sge1xuICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgIHBhZGRpbmctdG9wOiAycmVtO1xuICB9XG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgdG9wOiA5MHB4O1xuICAgIH1cbiAgfVxufVxuXG4uYWRkLW1vcmUge1xuICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDAuNXJlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaSB7XG4gICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMC41cmVtO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZjBlZjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZWRlYztcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gICAgJi5iaWcge1xuICAgICAgd2lkdGg6IDk5cHg7XG4gICAgICBoZWlnaHQ6IDk5cHg7XG4gICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXJlbTtcbiAgICAgIGkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI4KTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5zbWFsbCB7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIGkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDExKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmJ1dHRvbiB7XG4gICAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gICAgbWFyZ2luOiAwLjVyZW07XG4gIH1cblxuICBzcGFuIHtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwLjVyZW07XG4gIH1cblxuICAuY2F0ZWdvcnktbWVudSAmIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRmMGVmO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlNGVkZWM7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICAgIGkge1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLndyaXRlci1jaGVjayB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIEBleHRlbmQgLmlucHV0LWNoZWNrYm94O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICNlY2Y0ZjM7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHdpZHRoOiAyNnB4O1xuICAgIGhlaWdodDogMjZweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIHBhZGRpbmctdG9wOiA3cHg7XG5cbiAgICB6LWluZGV4OiAxO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDgwcHg7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JlZW4xO1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAkaWNvbi1wbHVzLWdyZWVuO1xuICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICAgIH1cbiAgICAmOmNoZWNrZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRpY29uLWNoZWNrLWdyZWVuO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogOHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBsb3R0aWUgY2hlY2tib3hcbi5sb3R0aWUtd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgZmxvYXQ6ICN7JGRlZmF1bHQtZGlyZWN0aW9ufTtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICB9XG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgQGV4dGVuZCAuaW5wdXQtY2hlY2tib3g7XG4gIH1cbiAgLmxvdHRpZS1jaGVjayB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgc3ZnIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlY2Y0ZjM7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAyNnB4ICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IDI2cHggIWltcG9ydGFudDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICB9XG4gIH1cbn1cblxuLm11bHRpLWNoZWNrIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIEBleHRlbmQgLmlucHV0LWNoZWNrYm94O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLmF1dGhvcnMtbGlzdCAmIHtcbiAgICAvL21hcmdpbjogMXJlbSBhdXRvIDFyZW07XG4gICAgJjpob3ZlciB7XG4gICAgICBpbWcge1xuICAgICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnRhZy1vcHRpb24ge1xuICBtYXJnaW46IDAuNXJlbTtcbiAgJjpob3ZlciB7XG4gICAgLnRhZyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICB9XG4gIC50YWcge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ5ZDg7XG4gICAgcGFkZGluZzogMC41cmVtIDJyZW0gMC4ycmVtO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgLm15LXRhZ3MgJixcbiAgICAubW9kYWwtd3JhcCAmIHtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuICB9XG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICAmOmNoZWNrZWQge1xuICAgICAgfiAudGFnIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5uZXdzbGV0dGVyLWljbyB7XG4gIGxvdHRpZS1wbGF5ZXIge1xuICAgIHdpZHRoOiAxNzZweDtcbiAgICBoZWlnaHQ6IDE3NnB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG4gIC5lbnRyeS1zdWJzY3JpYmUgJiB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTNyZW07XG4gIH1cbn1cblxuLy8gcGVyc29uYWxpemF0aW9uIG5ld3NsZXR0ZXJcblxuLm5ld3NsZXR0ZXItbGlzdCB7XG4gIC8vIEBpbmNsdWRlIHRocmVlLWl0ZW0tY29sdW1uO1xuICAvLyBjb2x1bW4tZ2FwOiAycmVtO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBAaW5jbHVkZSB0d28taXRlbS1jb2x1bW47XG4gICAgcm93LWdhcDogMnJlbTtcbiAgfVxuICAucGVyc29uYWwtd3JhcCAmIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGdhcDogNTBweDtcbiAgICAgIG1hcmdpbi10b3A6IDRyZW07XG4gICAgICAvLyBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMnJlbTtcbiAgICAgIC8vIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogNXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLm5ld3NsZXR0ZXItaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjZjRmMztcbiAgd2lkdGg6IDMxNXB4O1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtYXgtd2lkdGg6IDExODFweCkge1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgd2lkdGg6IDI5MnB4O1xuICAgIHBhZGRpbmc6IDJyZW0gMXJlbSAxcmVtO1xuICB9XG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICAmOmNoZWNrZWQge1xuICAgICAgfiAuY2hlY2tib3gtYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIC5pY29uLWVudmVsb3AyIHtcbiAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU5M2NcIjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnByb2ZpbGUtbmV3c2xldHRlciAmIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuICAucGVyc29uYWwtd3JhcC1uZXdzbGV0dGVyICYge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG5cbi5uZXdzbGV0dGVyLWl0ZW0taW5mbyB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIH1cbn1cblxuLm5ld3NsZXR0ZXItaXRlbS1pY29uIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIGltZyB7XG4gICAgICB3aWR0aDogNDlweDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0ycmVtO1xuICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFyZW07XG4gIH1cbn1cblxuLm5ld3NsZXR0ZXItaXRlbS1hY3Rpb24ge1xuICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiBhdXRvO1xufVxuLm5ld3NsZXR0ZXItaXRlbS10aXRsZSB7XG4gIGgzIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IDIycHg7XG4gICAgfVxuICB9XG59XG4ubmV3c2xldHRlci1pdGVtLW1ldGEge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIG1hcmdpbi10b3A6IDA7XG5cbiAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gIGNvbG9yOiAjM2IzYjNiO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuXG4gIC8vICBAZXh0ZW5kIC5hcnRpY2xlLWl0ZW0tbWV0YTtcbn1cblxuLmNoZWNrYm94LWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgcGFkZGluZzogMC4zcmVtIDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6ICR3aGl0ZTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHBhZGRpbmc6IDAuOHJlbSAxLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gIH1cbiAgLmljb21vb24taWNvbiB7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwcHg7XG4gIH1cbn1cblxuLmNzdG0taW5wdCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIG1hcmdpbi10b3A6IC0xNXB4O1xuICB9XG59XG5cbi5lbmQtbWVzc2FnZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDNyZW0gMDtcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTVyZW0pO1xuXG4gIC5idXR0b24ge1xuICAgIG1hcmdpbjogMCBhdXRvIDFyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgfVxuICAuc3VjY2Vzcy1sb3R0aWUge1xuICAgIHdpZHRoOiAxMzhweDtcbiAgICBoZWlnaHQ6IDEzOHB4O1xuICAgIG1hcmdpbjogMCBhdXRvIDEuNXJlbTtcbiAgfVxuXG4gICYtc3VjY2VzcyB7XG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyOCk7XG4gICAgfVxuICAgIHAge1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICB9XG4gIH1cbn1cblxuLnZlcnRpY2FsLXNjcm9sbC13cmFwcGVyIHtcbiAgLnJldmVhbCAmLFxuICAubW9kYWwtd3JhcCAmIHtcbiAgICBoZWlnaHQ6IDQ1MHB4O1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gICAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG4gICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi52ZXJ0aWNhbC1zY3JvbGwtaW5uZXIge1xuICAucmV2ZWFsICYsXG4gIC5tb2RhbC13cmFwICYge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG4ucmV2ZWFsLW92ZXJsYXkge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuXG4uc3Vic2NyaWJlLWFsbCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXJlbTtcbiAgICB6LWluZGV4OiAyO1xuICB9XG59XG5cbi5ub3RpZi1tZXNzYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuNXJlbTtcbn1cbi8qIC0tLS0tLS0gUEVSU09OQUxJWkUgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0gQ1VTVE9NIE1PREFMIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cbi5tb2RhbC1vcGVuIHtcbiAgLy8gcG9zaXRpb246IGZpeGVkO1xuICAvLyB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuLm1vZGFsLXRvZ2dsZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5tb2RhbC13cmFwIHtcbiAgcGFkZGluZzogMnJlbTtcblxuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMDAwOyAvKiAxICovXG4gIHRvcDogMDtcbiAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxufVxuXG4ubW9kYWwtd3JhcC5pcy12aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLm1vZGFsLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDk5O1xuICB0b3A6IDA7XG4gICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICAvL3RyYW5zaXRpb246IHZpc2liaWxpdHkgMHMgbGluZWFyIDAuM3MsIG9wYWNpdHkgMC4zcztcbiAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW47XG59XG5cbi5tb2RhbC13cmFwLmlzLXZpc2libGUgLm1vZGFsLW92ZXJsYXkge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbn1cblxuLm1vZGFsLXdyYXBwZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDk5OTk7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiA5NSU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGJveC1zaGFkb3c6IDAgMCAxLjVlbSBoc2xhKDAsIDAlLCAwJSwgMC4zNSk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICB3aWR0aDogNjByZW07XG4gICAgLm5vdGlmaWNhdGlvbi1tb2RhbCAmIHtcbiAgICAgIHdpZHRoOiAzOTBweDtcbiAgICB9XG4gIH1cblxuICAubm90aWZpY2F0aW9uLW1vZGFsICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWdyZWVuO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogMzZweDtcbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDIwOHB4O1xuICAgIH1cbiAgfVxufVxuXG4ubW9kYWwtdHJhbnNpdGlvbiB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIDAuMTJzO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwJSk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5tb2RhbC13cmFwLmlzLXZpc2libGUgLm1vZGFsLXRyYW5zaXRpb24ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB0b3A6IDFyZW07XG4gIG9wYWNpdHk6IDE7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgdG9wOiA1MCU7XG4gIH1cbn1cblxuLm1vZGFsLWNsb3NlLFxuLmdhbWUtY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHBhZGRpbmc6IDAuOGVtO1xuICBjb2xvcjogJGJsYWNrO1xuICBmb250LXNpemU6IDI1cHg7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAubm90aWZpY2F0aW9uLW1vZGFsICYge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICM3Nzc7XG4gIH1cbn1cblxuLm1vZGFsLWJlZm9yZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMXJlbTtcbiAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxuICAuYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4ubW9kYWwtaW5uZXIge1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBwYWRkaW5nOiAwIDNyZW07XG4gIH1cblxuICAubm90aWZpY2F0aW9uLW1vZGFsICYge1xuICAgIHBhZGRpbmc6IDIwcHggMjBweCA1MHB4O1xuICAgIC8qIE1vYmlsZSBMYW5kc2NhcGUgKi9cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA4OTZweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgICAgaGVpZ2h0OiAzMDBweDtcbiAgICAgIG92ZXJmbG93OiBzY3JvbGw7XG4gICAgfVxuXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aDogNDEycHgpIGFuZCAobWF4LWRldmljZS13aWR0aDogOTE2cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgICBvdmVyZmxvdzogc2Nyb2xsO1xuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiA2MDFweCkgYW5kIChtaW4taGVpZ2h0OiA2MDBweCkge1xuICAgICAgaGVpZ2h0OiA1MDBweDtcbiAgICAgIG92ZXJmbG93OiBzY3JvbGw7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcGFkZGluZzogMzVweCAxcmVtIDc1cHg7XG4gICAgfVxuICB9XG59XG5cbi5zZWxlY3QtYWxsIHtcbiAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMXJlbTtcbiAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXJlbTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgbGluZS1oZWlnaHQ6IDAuMjtcbiAgfVxuICBpIHtcbiAgICBmb250LXNpemU6IDdweDtcbiAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogNXB4O1xuICB9XG59XG5cbi8vIG5ld3NsZXR0ZXIgTU9EQUxcbi5uZXdzbGV0dGVyLW1vZGFsIHtcbiAgLm5ld3NsZXR0ZXItaWNvIHtcbiAgICBtYXJnaW4tdG9wOiAtMjZweDtcbiAgfVxuXG4gIC5tb2RhbC1pbm5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDQzcHg7XG4gIH1cblxuICBmb3JtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgb3JkZXI6IDI7XG4gICAgfVxuICB9XG4gIC5tYWlsY2hpbXAtbmV3c2xldHRlci1zdWJzY3JpYmUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAxcmVtIGF1dG8gMDtcbiAgfVxuXG4gIC5uZXdzbGV0dGVyLWNvbnRlbnQgLm1haWxjaGltcC1uZXdzbGV0dGVyLXN1YnNjcmliZSB7XG4gICAgbWF4LXdpZHRoOiA1OTBweDtcbiAgICBvcmRlcjogMztcbiAgfVxuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIG92ZXJmbG93OiBzY3JvbGw7XG4gIH1cbiAgLy8gLnN1Y2Nlc3Mge1xuICAvLyAgICAgLm1haWxjaGltcC1uZXdzbGV0dGVyLXN1YnNjcmliZSB7XG4gIC8vICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAvLyAgICAgfVxuICAvLyB9XG5cbiAgLm1lc3NhZ2VzIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICB9XG5cbiAgLm1lc3NhZ2VzLm1lc3NhZ2VzLS1zdGF0dXMge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zaXplOiAyNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGljb24tZ3JlZW4tY2hlY2s7XG4gICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLm5ld3NsZXR0ZXItY29udGVudCB7XG4gIC5tYWlsY2hpbXAtaW5uZXIge1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgYWNjZW50LWNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICB9XG4gIC5tYWlsY2hpbXAtbmV3c2xldHRlci13cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgfVxuICAubWFpbGNoaW1wLW5ld3NsZXR0ZXItc3Vic2NyaWJlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5mb3JtLXJlcXVpcmVkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5qcy1mb3JtLWl0ZW0ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgfVxuICAubWFpbGNoaW1wLW5ld3NsZXR0ZXItbWVyZ2VmaWVsZHMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICBpbnB1dC5mb3JtLWVtYWlsIHtcbiAgICBib3JkZXItY29sb3I6ICM4NDhlOGQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICAgIC8vIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxMHJlbTtcbiAgICAvLyBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFyZW07XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgY29sb3I6ICRibGFjaztcbiAgfVxuICAuZm9ybS1zdWJtaXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAvLyBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgLy8gI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgIC8vIHRvcDogMDtcbiAgICBoZWlnaHQ6IDIuNzM3NXJlbTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiAwLjVyZW0gM3JlbTtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmM4YTgyO1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgICB9XG4gIH1cbn1cblxuLm5vdGlmaWNhdGlvbi1tb2RhbCB7XG4gIC5idXR0b24ge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIG1hcmdpbjogMCAwLjJyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luOiAwIDAuNXJlbTtcbiAgICB9XG4gIH1cbiAgLmJ1dHRvbi5kYXJrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxuICAuYnV0dG9uLmxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgY29sb3I6ICRibGFjaztcbiAgfVxuICBpbWcge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGhlaWdodDogMjI5cHg7XG4gICAgfVxuICB9XG4gIHAge1xuICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICBjb2xvcjogI2VmZWNlMjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIC5jaG9pY2VzIHtcbiAgICBtYXJnaW4tdG9wOiA0NXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gIH1cbn1cblxuLyogLS0tLS0tLSBDVVNUT00gTU9EQUwgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLSA0MDQgTk9UIEZPVU5EIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cblxuLm5vdC1mb3VuZC13cmFwIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLm5vdC1mb3VuZC10ZXh0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICB3aWR0aDogMzByZW07XG4gICAgfVxuICB9XG4gIC5ub3QtZm91bmQtaW5uZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAubm90LWZvdW5kLWltZyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgIH1cbiAgfVxufVxuLm5vdC1mb3VuZC1udW0ge1xuICBmb250LXNpemU6IHJlbS1jYWxjKDk4KTtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFNlcmlmXCIsIHNlcmlmO1xuICBmb250LXdlaWdodDogYm9sZGVyO1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNTQpO1xuICB9XG59XG4ubm90LWZvdW5kLXR4dCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBtYXJnaW46IDFyZW0gMCA0cmVtO1xuICB9XG4gIGgyIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDMyKTtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDU0KTtcbiAgICB9XG4gIH1cbiAgcCB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICBjb2xvcjogIzRkNGQ0ZDtcbiAgfVxufVxuLm5vdC1mb3VuZC1idG4ge1xuICAuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBwYWRkaW5nOiAxcmVtIDNyZW07XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICB9XG59XG5cbi8qIC0tLS0tLS0gNDA0IE5PVCBGT1VORCAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG5cbi8qIC0tLS0tIFdFQVRIRVIgV0lER0VUIC0tLS0tLSBTVEFSVCAtLS0tLS0gKi9cblxuLndlYXRoZXItd2lkZ2V0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xufVxuXG4jY3VycmVudFdlYXRoZXIge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi53ZWF0aGVyLW91dGxpbmUge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIC1tb3otYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgLW8tYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgcGFkZGluZzogMXJlbSAycmVtIDFyZW07XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cblxuICAvKiBuZXRib29rIG9ubHkgKi9cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxufVxuXG4ucmFpbnkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL3dlYXRoZXIvcmFpbnkuanBnKTtcbn1cblxuLmNsb3VkeSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvd2VhdGhlci9jbG91ZHkuanBnKTtcbn1cbi5zYW5kc3Rvcm0ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL3dlYXRoZXIvc2FuZHN0b3JtLmpwZyk7XG59XG4uY2xlYXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL3dlYXRoZXIvY2xlYXIuanBnKTtcbn1cbi53ZWF0aGVyLWljbyB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAtbW96LWJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgLW8tYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIC8vd2lkdGg6IDI2NHB4O1xuICBoZWlnaHQ6IDI2NHB4O1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge1xuICAgIGhlaWdodDogMjQwcHg7XG4gIH1cbn1cbi5zdW4taWNvIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29uL3dlYXRoZXIvY29uZGl0aW9uL3N1bi5zdmcpO1xufVxuLm1vb24taWNvIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29uL3dlYXRoZXIvY29uZGl0aW9uL21vb24uc3ZnKTtcbn1cbi5zdW5fY2xvdWRzLWljbyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi93ZWF0aGVyL2NvbmRpdGlvbi9zdW5fY2xvdWRzLnN2Zyk7XG59XG4ubW9vbl9jbG91ZHMtaWNvIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29uL3dlYXRoZXIvY29uZGl0aW9uL21vb25fY2xvdWRzLnN2Zyk7XG59XG4uY2xvdWRzLWljbyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi93ZWF0aGVyL2NvbmRpdGlvbi9jbG91ZHMuc3ZnKTtcbn1cbi5yYWluLWljbyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi93ZWF0aGVyL2NvbmRpdGlvbi9yYWluLnN2Zyk7XG59XG4ubGlnaHRuaW5nLWljbyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi93ZWF0aGVyL2NvbmRpdGlvbi9saWdodG5pZ2h0LnN2Zyk7XG59XG4uc3VuX3JhaW5fc25vdy1pY28ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb24vd2VhdGhlci9jb25kaXRpb24vc3VuX3JhaW5fc25vdy5zdmcpO1xufVxuLm1vb25fcmFpbl9zbm93LWljbyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi93ZWF0aGVyL2NvbmRpdGlvbi9tb29uX3JhaW5fc25vdy5zdmcpO1xufVxuLmZvZy1pY28ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb24vd2VhdGhlci9jb25kaXRpb24vZm9nLnN2Zyk7XG59XG5cbi53ZWF0aGVyLWljb24ge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIC1tb3otYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgLW8tYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMjJweDtcbn1cbi5tb3JuaW5nLWljbyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi93ZWF0aGVyL21vcm5pbmcuc3ZnKTtcbn1cbi5uaWdodC1pY28ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb24vd2VhdGhlci9uaWdodC5zdmcpO1xufVxuXG4ud2VhdGhlci1kZXRhaWxzIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLndlYXRoZXItb3V0bGluZS1jaXR5IHtcbiAgZm9udC1zaXplOiByZW0tY2FsYyg1MCk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ud2VhdGhlci1vdXRsaW5lLWNvbmRpdGlvbiB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDRyZW07XG4gIHdpZHRoOiAyMzVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgbGVmdDogLTJyZW07XG4gIH1cbiAgLyogU21hbGxlc3Qgb25seSAqL1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge1xuICAgIHdpZHRoOiAyMDVweDtcbiAgfVxuXG4gIC8qIG5ldGJvb2sgb25seSAqL1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICB3aWR0aDogMjAwcHg7XG4gICAgbGVmdDogLTFyZW07XG4gIH1cbn1cblxuLndlYXRoZXItb3V0bGluZS1pbmZvIHtcbiAgbWFyZ2luLXRvcDogYXV0bztcbn1cblxuLndlYXRoZXItb3V0bGluZS1zdGF0dXMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IC00cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLndlYXRoZXItdG9kYXkge1xuICBsaW5lLWhlaWdodDogMTtcbiAgc3BhbiB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICB9XG4gIHRpbWUge1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuICB9XG59XG5cbi53ZWF0aGVyLXRlbXBlcmF0dXJlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAxMDBweDtcbiAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogM3JlbTtcbiAgZGlyZWN0aW9uOiBsdHI7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gIC8qIFNtYWxsIG9ubHkgKi9cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzIwcHgpIHtcbiAgICBmb250LXNpemU6IDgwcHg7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXJlbTtcbiAgfVxuXG4gIC8qIG5ldGJvb2sgb25seSAqL1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxcmVtO1xuICAgIGZvbnQtc2l6ZTogODBweDtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDNyZW07XG4gICAgcmlnaHQ6IC0ycmVtO1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGhlaWdodDogMjVweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyOiA1cHggc29saWQgJHdoaXRlO1xuXG4gICAgLyogU21hbGwgb25seSAqL1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgICB0b3A6IDJyZW07XG4gICAgICByaWdodDogLTEuNXJlbTtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgIH1cblxuICAgIC8qIG5ldGJvb2sgb25seSAqL1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgdG9wOiAycmVtO1xuICAgICAgcmlnaHQ6IC0xLjVyZW07XG4gICAgICB3aWR0aDogMThweDtcbiAgICAgIGhlaWdodDogMThweDtcbiAgICB9XG4gIH1cbn1cblxuLmRheXBhcnQge1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlZmVmZWY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiAwIDAuMnJlbSAxcmVtO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgJi5hY3RpdmUsXG4gICY6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjogI2U0ZjBlZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzZlMmRmO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5kYXlwYXJ0LWRheSB7XG4gIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xufVxuXG4uZGF5cGFydC1kYXRlIHtcbiAgY29sb3I6ICNiY2JjYmM7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbn1cblxuLndlYXRoZXItaW5mby1pdGVtIHtcbiAgbWFyZ2luOiAwLjVyZW07XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICB9XG59XG4ud2VhdGhlci1pY29uIHtcbiAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFyZW07XG59XG5cbi8qIC0tLS0tIFdFQVRIRVIgV0lER0VUIC0tLS0tLSBFTkQgLS0tLS0tICovXG5cbi8qIC0tLS0tIFBPRENBU1QgQkxPQ0stLS0tLS0gU1RBUlQgLS0tLS0tICovXG4ucG9kY2FzdC1saXN0IHtcbiAgLnNpZGViYXItd3JhcCAmIHtcbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICB9XG4gIH1cblxuICAuZGF0ZS1maWVsZCxcbiAgLnBvZGNhc3QtdGltZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgaSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDExKTtcbiAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMHB4O1xuICAgIH1cbiAgICB0aW1lIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xuICAgIH1cbiAgICBhLFxuICAgIGJ1dHRvbiB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5wb2RjYXN0LWJsb2NrIHtcbiAgQGV4dGVuZCAuYmxvY2stY3VzdG9tLWJnO1xuICBwYWRkaW5nOiAxMHB4IDFyZW07XG59XG5cbi5wb2RjYXN0LXRpbWUge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZGlzcGxheTogZmxleDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIGkge1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDFyZW07XG4gICAgZmxvYXQ6ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn07XG4gICAgcGFkZGluZzogMCAxMHB4IDAgMDtcbiAgICAuYmxvY2stY29udGVudCAmIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWxpZ2h0O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDFyZW07XG4gICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICB9XG4gIH1cbiAgYSxcbiAgYnV0dG9uIHtcbiAgICAubmV3cy10aWNrZXItYXJlYSAmIHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICB9XG4gIH1cbiAgLm5ld3MtdGlja2VyLWFyZWEgJiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgaSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBwYWRkaW5nOiA4cHg7XG4gICAgICB3aWR0aDogMjlweDtcbiAgICAgIGhlaWdodDogMjlweDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIC5pY29uLXBsYXktZ3JlZW46YmVmb3JlIHtcbiAgICAgICAgY29sb3I6ICM0ZDhhODg7XG4gICAgICB9XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgZm9udC1mYW1pbHk6IFwiRWZmcmFcIjtcbiAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDhweDtcbiAgICAgICAgLy8gaGVpZ2h0OiAyOXB4O1xuICAgICAgICAvLyBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAvLyBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5wb2RjYXN0LWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgcGFkZGluZzogcmVtLWNhbGMoMTMpO1xuXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTQpO1xuICB9XG4gIC5tZWRpYS1vYmplY3Qge1xuICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHAge1xuICAgICAgY29sb3I6ICM1NTU1NTU7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICB9XG4gICAgaDYge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWRhcms7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjdmNztcbiAgfVxuICA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMTtcbiAgICB0b3A6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgLnBvZGNhc3QtZ3JpZCAmIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbi5wb2RjYXN0LWlmcmFtZS1lcGlzb2RlcyB7XG4gIG1hcmdpbjogMXJlbSBhdXRvO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHdpZHRoOiA4MCU7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHdpZHRoOiA3MCU7XG4gIH1cbn1cblxuLnBvZGNhc3QtbGFiZWwge1xuICBjb2xvcjogJHByaW1hcnktZGFyaztcbiAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFyZW07XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGkge1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjVyZW07XG4gIH1cbiAgbG90dGllLXBsYXllciB7XG4gICAgd2lkdGg6IDIycHg7XG4gICAgaGVpZ2h0OiAxOXB4O1xuICAgIGZsb2F0OiAjeyRkZWZhdWx0LWRpcmVjdGlvbn07XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFyZW07XG4gIH1cbiAgLm9waW5pb24tYXV0aG9ycy1saXN0ICYge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluLW91dCAwcztcbiAgfVxuXG4gIC5hdWRpby1wbGF5ZXItdG9wICYge1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4vLyBwb2RjYXN0IHBhZ2VzXG5cbi5wb2RjYXN0LWdyaWQge1xuICAuZGF0ZS1maWVsZCB7XG4gICAgYSB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgfVxuICB9XG4gIC5wb2RjYXN0LXRpbWUge1xuICAgIGkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICB9XG4gICAgdGltZSB7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5wb2RjYXN0LXNjcmVlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2Y0ZjM7XG4gIHBhZGRpbmc6IDFyZW0gMDtcbiAgbWFyZ2luLWJvdHRvbTogLTFyZW07XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAtMi41cmVtO1xuICB9XG59XG5cbi5wb2RjYXN0LXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIGg0IHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMXJlbTtcbiAgfVxufVxuXG4ucG9kY2FzdC1lcGlzb2RlLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgaDIge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzMpO1xuICAgIH1cbiAgfVxufVxuXG4ucG9kY2FzdC1zcGVha2VyIHtcbiAgZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbiAgYSB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICB9XG4gIH1cbn1cblxuLnBvZGNhc3QtZXBpc29kZS1tZXRhIHtcbiAgY29sb3I6ICRibGFjaztcbiAgLnBvZGNhc3QtbGVuZ3RoIHtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwLjVyZW07XG4gICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDAuNXJlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXB4IHNvbGlkICM5Mjk4OTg7XG4gIH1cbn1cblxuLnBvZGNhc3QtZXBpc29kZS1jb250ZW50IHtcbiAgcGFkZGluZzogMCAxLjVyZW07XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZzogMCA1cmVtO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBwYWRkaW5nOiAwIDEzcmVtO1xuICB9XG4gIHAge1xuICAgIGNvbG9yOiAjNGQ0ZDRkO1xuICB9XG59XG5cbi5wb2RjYXN0LWVwaXNvZGUtaXRlbSB7XG4gIC5ncmlkLXgge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLnBvZGNhc3QtaW1nIHtcbiAgICB3aWR0aDogMTQxcHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgd2lkdGg6IDIzNXB4O1xuICAgIH1cbiAgfVxuICAucG9kY2FzdC10aXRsZSB7XG4gICAgaDQge1xuICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICB9XG59XG5cbi5wb2RjYXN0LWJ0biB7XG4gIG1hcmdpbjogMnJlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAucG9kY2FzdC1lcGlzb2RlLWl0ZW0gJiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxufVxuXG4ucGxheS1wb2RjYXN0LWJ0biB7XG4gIGJhY2tncm91bmQ6ICRibGFjaztcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgcGFkZGluZzogMC41cmVtIDJyZW07XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICBjb2xvcjogJHdoaXRlO1xuICB3aWR0aDogMTgwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaSB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMHB4O1xuICB9XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59XG5cbi5hdWRpby1wbGF5ZXItdG9wLFxuLnBsYXktcG9kY2FzdC1idG4ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gICYucGxheWluZyB7XG4gICAgLmljb24tcGxheS1ncmVlbiB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXGU5MjNcIjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnBvZGNhc3Qtc29jaWFscyB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbiAgYSB7XG4gICAgbWFyZ2luOiAxcmVtIDEuNXJlbSAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgJi5nb29nbGUtcG9kY2FzdC1idG4ge1xuICAgICAgICBpbWcge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuYXBwbGUtcG9kY2FzdC1idG4ge1xuICAgICAgICBpbWcge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMTJweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICBtYXJnaW46IDFyZW0gMXJlbSAwO1xuICAgIH1cbiAgfVxuICAmLXRpdGxlIHtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbn1cblxuLnBvZGNhc3QtYmFubmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMzUwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNmIxOGM7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIHRleHQtYWxpZ246IGluaXRpYWw7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGhlaWdodDogMjEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxufVxuXG4ucG9kY2FzdC1pbWcge1xuICAucG9kY2FzdC1iYW5uZXIgJiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogaW5pdGlhbDtcbiAgICBib3R0b206IC01cmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICB0b3A6IC02cmVtO1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiA0NTBweDtcbiAgICB9XG4gIH1cbn1cblxuLnBvZGNhc3QtY29udGVudCB7XG4gIHBhZGRpbmc6IDEuNXJlbTtcbiAgei1pbmRleDogMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgaDMge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIHAge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuICB9XG59XG5cbi5yZXR1cm4tYnRuIHtcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgYSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIGkge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTBweDtcbiAgfVxufVxuXG4ubW9yZS1idG4ge1xuICBtYXJnaW46IDJyZW07XG4gIC5idXR0b24ge1xuICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMnJlbTtcbiAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMnJlbTtcbiAgfVxufVxuXG4ucGFnZS1idG5zIHtcbiAgLy9wb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG4gIC8vICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gIC8vICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIC5lbnRyeS1zaGFyZS1yb3cuZW50cnktYm9va21hcmsge1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDFyZW07XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gIH1cblxuICAmLmZsZXgtY29udGFpbmVyIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi5vcGluaW9uLWF1dGhvcnMtbGlzdCB7XG4gICYuaGFzLXNlcGFyYXRvciB7XG4gICAgPiBkaXYge1xuICAgICAgLmFydGljbGUtaXRlbSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLmFydGljbGUtaXRlbS1pbmZvIHtcbiAgICAvLyBkaXNwbGF5OiBmbGV4O1xuICAgIC8vIGhlaWdodDogMTAwJTtcbiAgICAvLyBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIC8vIGZsZXgtd3JhcDogd3JhcDtcbiAgICAvL2p1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICB9XG5cbiAgfiAub3Bpbmlvbi1hdXRob3JzLWxpc3Q6bGFzdC1jaGlsZCB7XG4gICAgJi5oYXMtc2VwYXJhdG9yIHtcbiAgICAgID4gZGl2IHtcbiAgICAgICAgJjpsYXN0LWNoaWxkIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vaG9tZXBhZ2UgcG9kY2FzdCBzaW5nbGUgYmxvY2tcbi5wbGF5LXBvZGNhc3QtYnRuIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgLmxibC1wbGF5aW5nIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gICYucGxheWluZyB7XG4gICAgLmxibC1wYXVzZWQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmxibC1wbGF5aW5nIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gIH1cbn1cbi5wb2RjYXN0LXNpbmdsZS1ibG9jayB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM2YjE4YztcbiAgY29sb3I6ICR3aGl0ZTtcbiAgcGFkZGluZzogM3JlbSAycmVtIDA7XG4gIEBleHRlbmQgLmZ1bGwtYmc7XG4gIC5wb2RjYXN0LXRpdGxlIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI3KTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGZvbnQtc2l6ZTogYm9sZDtcbiAgfVxuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIC5wb2RjYXN0LWltZyB7XG4gICAgd2lkdGg6IDE2NnB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG5cbi8qIC0tLS0tIFBPRENBU1QgQkxPQ0stLS0tLS0gRU5EIC0tLS0tLSAqL1xuLyogLS0tLS0gQ0FSSUNBVFVSRSBCTE9DSyAtLS0tLS0gU1RBUlQgLS0tLS0tICovXG5cbi5jYXJpY2F0dXJlLXNsaWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDNyZW07XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIGZsZXgtZmxvdzogbm93cmFwO1xuICAgIG92ZXJmbG93LXg6IHNjcm9sbCAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gICAgbWFyZ2luOiAwIC0xcmVtO1xuICAgIGdhcDogMjBweDtcbiAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuXG4gICAgPiAuY2FyaWNhdHVyZS1zbGlkZSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCkgIWltcG9ydGFudDtcbiAgICAgIHNjcm9sbC1zbmFwLWFsaWduOiBjZW50ZXI7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICB9XG4gIH1cbn1cblxuLmNhcmljYXR1cmUtc2xpZGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiAtLS0tLSBDQVJJQ0FUVVJFIEJMT0NLIC0tLS0tLSBFTkQgLS0tLS0tICovXG5cbi8qIC0tLS0tIE5FV1NUSUNLRVIgV0lER0VUIC0tLS0tLSBTVEFSVCAtLS0tLS0gKi9cblxuLnNtYXJ0aWNrZXIge1xuICAmLmFsZXJ0IHtcbiAgICAuc21hcnRpY2tlci1jYXRlZ29yeSB7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICRhbGVydC1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gICAgLnNtYXJ0aWNrZXItY2F0czpiZWZvcmUge1xuICAgICAgY29sb3I6ICRhbGVydC1jb2xvcjtcbiAgICB9XG4gIH1cbiAgLnNtYXJ0aWNrZXItY2F0ZWdvcnkge1xuICAgIGltZyB7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICB9XG4gICAgbGk6bm90KC5hY3RpdmUtYWcpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5uZXdzdGlja2VyLWFyZWEtLXYyIHtcbiAgLmFjbWUtbmV3cy10aWNrZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gIH1cbiAgLmFjbWUtbmV3cy10aWNrZXItYm94IHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB1bCB7XG4gICAgICBsaW5lLWhlaWdodDogMS45O1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuYWNtZS1uZXdzLXRpY2tlci1sYWJlbCB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICRhbGVydC1jb2xvcjtcbiAgICBmbG9hdDogI3skZGVmYXVsdC1kaXJlY3Rpb259O1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDE1cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMTBweDtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcInxcIjtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGNvbG9yOiAjY2UzMjMyO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICB9XG59XG5cbi5uZXdzLXRpY2tlci1hcmVhIHtcbiAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iYWNrZ3JvdW5kLWNvbG9yO1xufVxuXG4jbmV3cy10aWNrZXIge1xuICAvLyBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgLy8gICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gIC8vIH1cbn1cblxuLyogLS0tLS0gTkVXU1RJQ0tFUiBXSURHRVQgLS0tLS0tIEVORCAtLS0tLS0gKi9cblxuLyogLS0tLS0tLSBNT1NUIFBBR0VTICAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG5cbi5ib3R0b21GaXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogOTtcbn1cblxuLmJvb2ttYXJrLWNoZWNrIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgQGV4dGVuZCAuaW5wdXQtY2hlY2tib3g7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG1hcmdpbjogMDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIC5wYWdlLWJ0bnMgJiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC8vICY6aG92ZXJ7XG4gICAgLy8gICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDlFREVCO1xuICAgIC8vIH1cblxuICAgICY6Y2hlY2tlZCB7XG4gICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfiBpIHtcbiAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogI0Q5RURFQjtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICRpY29uLWJvb2ttYXJrLWdyZWVuO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGkge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmN2Y2O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBoZWlnaHQ6IDM4cHg7XG4gICAgd2lkdGg6IDM4cHg7XG4gICAgcGFkZGluZzogMTJweCAxMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIC50LWgtY29udGVudCAmIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnBvZGNhc3Qtc2NyZWVuICYge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyZWVuMTtcbiAgICB9XG4gIH1cbn1cblxuLmZvbGxvdy10YWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBAZXh0ZW5kIC5pbnB1dC1jaGVja2JveDtcbiAgICBtYXJnaW46IDA7XG4gICAgJjpjaGVja2VkIHtcbiAgICAgIH4gLmZvbGxvdy1jaGVjayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBpIHtcbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAkaWNvbi1jaGVjay1ncmVlbjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5mb2xsb3ctY2hlY2sge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBwYWRkaW5nOiA3cHggMTNweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuICAgIGkge1xuICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDNweDtcbiAgICB9XG4gIH1cbn1cblxuLnQtaCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi50aHVtYiB7XG4gIHdpZHRoOiA3NXB4O1xuICBoZWlnaHQ6IDc1cHg7XG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLm9wLXNsaWRlciB7XG4gIC5vcC1zbGlkZXItaXRlbSB7XG4gICAgLnBvZGNhc3QtaXRlbSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuMjgxMjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMS4yODEyNXJlbTtcbiAgICB9XG4gIH1cbiAgLnNsaWNrLWxpc3Qge1xuICAgIG1hcmdpbi1yaWdodDogLTEuMjgxMjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0xLjI4MTI1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICB9XG4gIC8vIEBpbmNsdWRlIGN1c3RvbS1kb3RzO1xuICAuc2xpY2stZG90cyBsaSBidXR0b246YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDllMmUwO1xuICB9XG59XG5cbi5zcG90bGlnaHQtY2Fyb3VzZWwge1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgLmFydGljbGUtaXRlbSB7XG4gICAgICAvLyBwYWRkaW5nOiAwIDEycHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uc3BvdGxpZ2h0LWNhcm91c2VsLFxuLnZpZGVvLWNhcm91c2VsIHtcbiAgLyogTW9iaWxlIExhbmRzY2FwZSAqL1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA4OTZweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgID4gLmNlbGwge1xuICAgICAgd2lkdGg6IGNhbGMoNzAlIC0gNDBweCkgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvKiBNb2JpbGUgUG9ydHJhdGUgKi9cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aDogMzIwcHgpIGFuZCAobWF4LWRldmljZS13aWR0aDogODk2cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAgID4gLmNlbGwge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC8qIE1vYmlsZSBQb3J0cmF0ZSAtIExhbmRzY2FwZSAqL1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA4OTZweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIHtcbiAgICBmbGV4LWZsb3c6IG5vd3JhcDtcbiAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgMC40NzVyZW07XG5cbiAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG5cbiAgICA+IC5jZWxsIHtcbiAgICAgIC8vIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KSAhaW1wb3J0YW50O1xuICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG4gICAgfVxuXG4gICAgJi5ndXR0ZXJzLTF4ID4gLmNlbGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLnNwb3RsaWdodC1jYXJvdXNlbCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICByb3ctZ2FwOiAzMHB4O1xuICB9XG59XG5cbi5vYmplY3RzLWxpc3QudmlkZW8tY2Fyb3VzZWwge1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBmbGV4LWZsb3c6IG5vd3JhcDtcbiAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgMC40NzVyZW07XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTtcblxuICAgID4gLm9iamVjdC1pdGVtIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KSAhaW1wb3J0YW50O1xuICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLmxpc3Qtc2Nyb2xsIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICAgIC8qIEludGVybmV0IEV4cGxvcmVyIDEwKyAqL1xuICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTtcbiAgICAvKiBGaXJlZm94ICovXG5cbiAgICBmbGV4LWZsb3c6IG5vd3JhcDtcbiAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgMC40NzVyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIC8qIFNhZmFyaSBhbmQgQ2hyb21lICovXG4gICAgfVxuXG4gICAgLnNlZS1tb3JlLWxpbmsge1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgfVxuICB9XG59XG5cbi5zcG90bGlnaHQtY2Fyb3VzZWwsXG4uc20tY2Fyb3VzZWwge1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgLy9tYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogLTMuNXJlbTtcbiAgICAuc2xpY2stbGlzdCB7XG4gICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5zbGljay1zbGlkZSB7XG4gICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXJlbTtcbiAgICB9XG4gICAgLm93bC1zdGFnZS1vdXRlciB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG4gICAgLm93bC1zdGFnZSB7XG4gICAgICAvLyBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICB9XG4gIH1cbn1cblxuLmZsZXgtZ3JpZCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDI3JSAzMy4zMyU7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgICAgXCJhIGIgYlwiXG4gICAgICBcImMgYiBiXCJcbiAgICAgIFwiYyBiIGJcIjtcblxuICAgIC5jMSB7XG4gICAgICBncmlkLWFyZWE6IGE7XG4gICAgfVxuICAgIC5jMiB7XG4gICAgICBncmlkLWFyZWE6IGI7XG4gICAgfVxuXG4gICAgLmMzIHtcbiAgICAgIGdyaWQtYXJlYTogYztcbiAgICB9XG4gIH1cbn1cblxuLmF1dGhvci1pdGVtIHtcbiAgJi10aXRsZSB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICB9XG5cbiAgLm1lZGlhLW9iamVjdCB7XG4gICAgJjpob3ZlciB7XG4gICAgICBpbWcge1xuICAgICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmZpeGVkLXkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgaGVpZ2h0OiA4MHZoO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cblxuLnZlcnRpY2FsLXNjcm9sbCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIGhlaWdodDogODB2aDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7IC8qIElFIGFuZCBFZGdlICovXG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyAvKiBGaXJlZm94ICovXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmNhdGVnb3J5LW1lbnUge1xuICBwYWRkaW5nOiAxcmVtIDA7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgJi5maXhlZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiA5O1xuICAgIGJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQtY29sb3I7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmNhdGVnb3J5LW1lbnUtYWRkIHtcbiAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNXJlbTtcbn1cblxuLmNhdGVnb3J5LW1lbnUtdGFncyB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uY2F0ZWdvcnktdGFncyB7XG4gIHBhZGRpbmc6IDFyZW0gMDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gIGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjVyZW07XG4gICAgJi5hY3RpdmUsXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgYSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJsYWNrO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICAgICYuYWN0aXZlLFxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJsYWNrO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgYnV0dG9uOm5vdCguYXV0aG9yLXRhZyksXG4gIGE6bm90KC5hdXRob3ItdGFnKSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzdkOGQ2O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgY29sb3I6ICM2NDdlN2M7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICY6aG92ZXIsXG4gICAgJi5hY3RpdmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYmxhY2s7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxuXG4gIC5jYXRlZ29yeS1tZW51ICYge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAvL21hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IC41cmVtO1xuICB9XG59XG5cbi5hdXRob3ItdGFncyB7XG4gIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gIC5vd2wtc3RhZ2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICBidXR0b24ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuICBsaTpub3QoLmFsbC10YWcpIHtcbiAgICAmLmlzLWFjdGl2ZSxcbiAgICAmOmhvdmVyIHtcbiAgICAgIGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgICAgYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jYXRfanMub3dsLWNhcm91c2VsIHtcbiAgYSB7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gIH1cbiAgLm93bC1uYXYge1xuICAgIGJ1dHRvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICB3aWR0aDogMjdweDtcbiAgICAgIGZvbnQtc2l6ZTogMjVweCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIGNvbG9yOiAjNjQ3ZTdjO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICBidXR0b24ub3dsLXByZXYge1xuICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgdGV4dC1hbGlnbjogI3skZGVmYXVsdC1kaXJlY3Rpb259O1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBiYWNrZ3JvdW5kOiAjZTlmMmVmO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuICAgICAgICA5MGRlZyxcbiAgICAgICAgcmdiYSgyNDIsIDI0OCwgMjQ2LCAwKSAwJSxcbiAgICAgICAgcmdiYSgyNDIsIDI0OCwgMjQ2LCAwLjg1KSA0NSUsXG4gICAgICAgICNlOWYyZWYgMTAwJVxuICAgICAgKTtcbiAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9XCIjZjJmOGY2XCIsZW5kQ29sb3JzdHI9XCIjZjJmOGY2XCIsR3JhZGllbnRUeXBlPTEpO1xuICAgIH1cbiAgICBidXR0b24ub3dsLW5leHQge1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgYmFja2dyb3VuZDogI2U5ZjJlZjtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgMjcwZGVnLFxuICAgICAgICByZ2JhKDI0MiwgMjQ4LCAyNDYsIDApIDAlLFxuICAgICAgICByZ2JhKDI0MiwgMjQ4LCAyNDYsIDAuODUpIDQ1JSxcbiAgICAgICAgI2U5ZjJlZiAxMDAlXG4gICAgICApO1xuICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj1cIiNmMmY4ZjZcIixlbmRDb2xvcnN0cj1cIiNmMmY4ZjZcIixHcmFkaWVudFR5cGU9MSk7XG4gICAgfVxuICB9XG59XG5cbi5hdXRob3ItdGFnIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAzNXB4O1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAzMHB4O1xuICB9XG5cbiAgc3BhbiB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuICBpbWcge1xuICAgIHdpZHRoOiAzM3B4O1xuICAgIGhlaWdodDogMzNweDtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDVweDtcbiAgICAub3dsLWNhcm91c2VsICYge1xuICAgICAgd2lkdGg6IDMzcHg7XG4gICAgICBoZWlnaHQ6IDMzcHg7XG4gICAgfVxuICB9XG59XG5cbi5jLXRhYnMge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q1ZGNkYztcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmFja2dyb3VuZC1jb2xvcjtcbiAgei1pbmRleDogMjtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuICAmLmhjLXN0aWNreSB7XG4gIH1cbiAgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDQwcHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgd2lkdGg6IDMzLjMzJTtcbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgdGV4dC1hbGlnbjogI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDEwcHggMCA2cHg7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiAjOTY5Njk2O1xuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4uYy10YWJzX2pzIGEuaXMtYWN0aXZlIHtcbiAgY29sb3I6ICRibGFjaztcbiAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xufVxuXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gIC5jLXRhYi1jb250ZW50X2pzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLnRhYi1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbmhyIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHNlcGFyYXRvci1jb2xvcjtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB9XG5cbiAgLmdyaWQtY29sdW1uLTIgJixcbiAgLmJsb2NrLXdyYXBwZXIgJiB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxuICB9XG59XG5cbi50YWJzLWNvbnRlbnQge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgJi52ZXJ0aWNhbCB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vL3RvcCA1XG4ubnVtYmVycy1jb3VudCB7XG4gIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgZm9udC1zaXplOiByZW0tY2FsYyg0MCk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4udG9wLWZpdmUge1xuICAudGFicy1jb250ZW50IHtcbiAgICBhIHtcbiAgICAgIC8vY29sb3I6ICMwNjI2MjY7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAubnVtYmVycy1jb3VudCB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cbn1cblxuLyogLS0tLS0tLSBNT1NUIFBBR0VTICAgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLSBWSURFTyBCTE9DSyAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG5cbi5ibG9jay1jb250ZW50IHtcbiAgLnRhYnMtcGFuZWwge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLmNhdGVnb3J5LW5hbWUge1xuICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgLmJsb2NrLXdyYXBwZXIgJiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIGEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IHJnYmEoJHByaW1hcnktY29sb3IsIDAuNzIpO1xuICAgIH1cbiAgfVxufVxuXG4udmlkZW8tc2VjdGlvbiB7XG4gIC50YWJzIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjNTU1NTU1O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAvL21hcmdpbjogYXV0byAtLjVyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Ugb25seSkge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAmLmhhcy1zZXBhcmF0b3IgbGkge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Ugb25seSkge1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAxcmVtKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgICB9XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAubWVkaWEtb2JqZWN0IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBuYm9vayB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQsXG4gICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIG9ubHkpIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi52ZXJ0aWNhbC1zZXBhcmF0b3IgPiBkaXY6bm90KDpsYXN0LWNoaWxkKTphZnRlciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBvbmx5KSB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAudGFicy10aXRsZSxcbiAgLnRhYnMtdmlkZW8taXRlbSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgID4gYSB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAmOmZvY3VzLFxuICAgICAgJlthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSxcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUsXG4gICAgJjpob3ZlciB7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgICAubWVkaWEtb2JqZWN0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgZmxleC13cmFwOiBpbml0aWFsO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAudmlkZW8taXRlbS1kYXRhLFxuICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgfVxuICAgICAgICAgIC52aWRlby1pdGVtLXNoYXJlIHtcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50YWJzLXZpZGVvLWl0ZW0ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5tZWRpYS1vYmplY3QtaW1nIHtcbiAgICAgIHdpZHRoOiA2NS41NHB4O1xuICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICB3aWR0aDogMTQ0cHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5tZWRpYS1vYmplY3Qge1xuICAgICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBhc3BlY3QtcmF0aW86IDMvMjtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICB9XG4gIH1cblxuICAudmlkZW8taXRlbS1zaGFyZSB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgfVxuXG4gICAgaSB7XG4gICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMC41cmVtO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICB9XG4gIH1cbn1cblxuLnZpZGVvLXRhYnMtY29udGVudCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG4gIC50YWJzLXBhbmVsIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLmFydGljbGUtaXRlbS12aWRlbyAuanctZmxhZy1mbG9hdGluZyB7XG4gICAgLmp3LXdyYXBwZXIuanctcmVzZXQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHRvcDogaW5oZXJpdDtcbiAgICAgICAgYm90dG9tOiAzcmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYXJ0aWNsZS12aWRlbyB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi52aWRlby1jYXJvdXNlbCB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogLTMuNXJlbTtcbiAgICAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDAgMC41cmVtO1xuICAgIH1cbiAgICAuc2xpY2stbGlzdCB7XG4gICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLnZpZGVvLWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy92aWRlbyB0YWJzXG4uc2hvdy1vdmVyYm94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAub3ZlcmJveCB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4ub3ZlcmJveCB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlIDBzO1xuICBjb2xvcjogJHdoaXRlO1xuICBwYWRkaW5nOiAxcmVtO1xuICAvL2JhY2tncm91bmQtY29sb3I6IHJnYmEoIzA2MjYyNiwgLjY1KTtcbiAgYmFja2dyb3VuZDogcmdiKDYsIDM4LCAzOCk7XG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KFxuICAgIDE4MGRlZyxcbiAgICByZ2JhKDYsIDM4LCAzOCwgMCkgMCUsXG4gICAgcmdiYSg2LCAzOCwgMzgsIDAuMzI1MzY3NjQ3MDU4ODIzNSkgNDIlLFxuICAgIHJnYmEoNiwgMzgsIDM4LCAwLjQ5OTAzNzExNDg0NTkzODQpIDcwJSxcbiAgICByZ2JhKDAsIDAsIDAsIDEpIDEwMCVcbiAgKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoXG4gICAgMTgwZGVnLFxuICAgIHJnYmEoNiwgMzgsIDM4LCAwKSAwJSxcbiAgICByZ2JhKDYsIDM4LCAzOCwgMC4zMjUzNjc2NDcwNTg4MjM1KSA0MiUsXG4gICAgcmdiYSg2LCAzOCwgMzgsIDAuNDk5MDM3MTE0ODQ1OTM4NCkgNzAlLFxuICAgIHJnYmEoMCwgMCwgMCwgMSkgMTAwJVxuICApO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgMTgwZGVnLFxuICAgIHJnYmEoNiwgMzgsIDM4LCAwKSAwJSxcbiAgICByZ2JhKDYsIDM4LCAzOCwgMC4zMjUzNjc2NDcwNTg4MjM1KSA0MiUsXG4gICAgcmdiYSg2LCAzOCwgMzgsIDAuNDk5MDM3MTE0ODQ1OTM4NCkgNzAlLFxuICAgIHJnYmEoMCwgMCwgMCwgMSkgMTAwJVxuICApO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPVwiIzA2MjYyNlwiLGVuZENvbG9yc3RyPVwiIzAwMDAwMFwiLEdyYWRpZW50VHlwZT0xKTtcblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgJi5sb2NrZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDYyNjI2LCAwLjgpO1xuICB9XG4gIHNwYW4uYnV0dG9uLmhvbGxvdyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlci13aWR0aDogNHB4O1xuICAgIGJvcmRlci1jb2xvcjogJHdoaXRlO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG4gIC53YXRjaC1ub3cge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBpbWcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHdpZHRoOiA0NnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAudmlkZW8tZGV0YWlscyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTtcbiAgICBib3R0b206IDA7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICByaWdodDogMDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiAycmVtO1xuICAgIH1cbiAgICAudmlkZW8tc3RhbXAge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICBoMiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5vdmVyYm94LWlubmVyIHtcbiAgcGFkZGluZzogNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgei1pbmRleDogMTtcbiAgaS5pY29uLWFycm93LWxlZnQyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgfVxufVxuXG4jaGFzLW5vLXZpZGVvIHtcbn1cblxuI2hhcy12aWRlbyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIC0tLS0tLS0gVklERU8gQkxPQ0sgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLSBWSURFTyBQQUdFUyAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG5cbi52aWRlby1oZXJvIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAtMXJlbTtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAtMXJlbTtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2IoMjUsIDI1LCAyOCk7XG4gICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQoXG4gICAgICAxODBkZWcsXG4gICAgICByZ2JhKDI1LCAyNSwgMjgsIDApIDAlLFxuICAgICAgcmdiYSg2LCA2LCA2LCAwLjg3MTU4NjEzNDQ1Mzc4MTUpIDU3JVxuICAgICk7XG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoXG4gICAgICAxODBkZWcsXG4gICAgICByZ2JhKDI1LCAyNSwgMjgsIDApIDAlLFxuICAgICAgcmdiYSg2LCA2LCA2LCAwLjg3MTU4NjEzNDQ1Mzc4MTUpIDU3JVxuICAgICk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuICAgICAgMTgwZGVnLFxuICAgICAgcmdiYSgyNSwgMjUsIDI4LCAwKSAwJSxcbiAgICAgIHJnYmEoNiwgNiwgNiwgMC44NzE1ODYxMzQ0NTM3ODE1KSA1NyVcbiAgICApO1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9XCIjMTkxOTFjXCIsZW5kQ29sb3JzdHI9XCIjMDYwNjA2XCIsR3JhZGllbnRUeXBlPTEpO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgfVxuXG4gIC52aWRlby1jb250ZW50IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgei1pbmRleDogMTtcbiAgfVxuICAudmlkZW8tdGl0bGUge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LXNlbGY6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAxMCU7XG4gICAgaDEge1xuICAgICAgY29sb3I6ICNmYzJjMmM7XG4gICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgLy9mb250LWZhbWlseTogJGZvbnQtYWx0O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDU1KTtcbiAgICAgIH1cbiAgICB9XG4gICAgaDYge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbiAgLnZpZGVvLWNvbnRlbnQtYWZ0ZXIge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgIHBhZGRpbmc6IDFyZW0gMnJlbTtcbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgIH1cbiAgfVxuICAuYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMnJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBpIHtcbiAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjVyZW07XG4gICAgfVxuICB9XG4gIC52aWRlby1pbWcge1xuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICBvYmplY3QtcG9zaXRpb246IHRvcDtcbiAgICB9XG4gIH1cbn1cblxuLnZpZGVvLXNjcmVlbiB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gIH1cbiAgLnZpZGVvLWRldGFpbHMge1xuICAgIGNvbG9yOiAjOTI5ODk4O1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICB9XG4gIC5hcnRpY2xlLWl0ZW0tbWV0YSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxufVxuXG4jaGFzLXZpZGVvIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnZpZGVvLWl0ZW0taGVybyB7XG4gIC52aWRlby1pdGVtIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAtMXJlbTtcbiAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IC0xcmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICB9XG5cbiAgICAucmVzcG9uc2l2ZS1lbWJlZCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAudmlkZW8taXRlbS1jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIHAge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgICBjb2xvcjogIzlkOWQ5ZDtcbiAgICB9XG4gIH1cbn1cblxuLnZpZGVvLWl0ZW0tdGl0bGUge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gIGgyIHtcbiAgICBhIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi52aWRlby1hc2lkZS1tZXRhIHtcbiAgd2lkdGg6IDMwMHB4O1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4udmlkZW8tbWFpbiB7XG4gIC52aWRlby13cmFwIHtcbiAgICAudmlkZW8tZ3JpZCB7XG4gICAgICAudmlkZW8tbGlzdCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAgICAgcm93LWdhcDogNDBweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIC0tLS0tLS0gVklERU8gUEFHRVMgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLSBBTklNQVRFICAgLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuLy9zbGlkZU91dERvd25cbkAtd2Via2l0LWtleWZyYW1lcyBzb2Qge1xuICBmcm9tIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG4vL3NsaWRlT3V0RG93blxuQGtleWZyYW1lcyBzb2Qge1xuICBmcm9tIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG4vL3NsaWRlT3V0VXBcbkAtd2Via2l0LWtleWZyYW1lcyBzb3Uge1xuICBmcm9tIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICB9XG59XG4vL3NsaWRlT3V0VXBcbkBrZXlmcmFtZXMgc291IHtcbiAgZnJvbSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgfVxufVxuXG4vL3NsaWRlT3V0RG93blxuLnNvZCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNvZDtcbiAgYW5pbWF0aW9uLW5hbWU6IHNvZDtcbn1cbi8vc2xpZGVPdXRVcFxuLnNvdSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNvdTtcbiAgYW5pbWF0aW9uLW5hbWU6IHNvdTtcbn1cblxuLmFuaW1hdGVkIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG59XG5cbi8qIC0tLS0tLS0gQU5JTUFURSAgIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0gUFJJTlQtRURJVElPTiBQQUdFIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cbi5wcmludC1lZGl0aW9uLWNvdmVyIHtcbiAgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAmX19idG4ge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGkge1xuICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuLyogLS0tLS0tLSBQUklOVC1FRElUSU9OIFBBR0UgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLSBJTi1GT0NVUyBTRUNUSU9OIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cbi5pbi1mb2N1cyB7XG4gIC8vcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDAuNHJlbTtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJjpiZWZvcmUge1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDMyMHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDg5NnB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMikge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZmVjZTc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAtMTBweDtcbiAgICAgIHJpZ2h0OiAtMTBweDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHRvcDogMDtcbiAgICB9XG4gIH1cbn1cbi5ibG9jay1vdmVybGF5LWJnIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuXG4gIC8qIE1vYmlsZSBMYW5kc2NhcGUgYW5kIFBvcnRyYXRlICovXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDMyMHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDg5NnB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMikge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDI1JTtcbiAgICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgLW1vei1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIC1vLWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBwYWRkaW5nOiAxLjVyZW0gMS41cmVtIDAuNXJlbTtcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgLyogTW9iaWxlIExhbmRzY2FwZSBhbmQgUG9ydHJhdGUgKi9cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA4OTZweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIHtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAvL2JhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC4yMSkgMCUsIHJnYmEoMCwgMCwgMCwgMC43MikgMTAwJSk7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAgIHRvIGJvdHRvbSxcbiAgICAgICAgcmdiYSgwLCAwLCAwLCAwLjMxKSAwLFxuICAgICAgICByZ2JhKDAsIDAsIDAsIDAuOTUpIDEwMCVcbiAgICAgICk7XG4gICAgfVxuICB9XG4gIC5hcnRpY2xlLWl0ZW0tdGl0bGUge1xuICAgIGEge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc2VjdGlvbi10aXRsZSB7XG4gICAgei1pbmRleDogMTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW4tdG9wOiA3cmVtO1xuICAgIH1cbiAgICBoMyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgIH1cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAzNnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAubW9yZSB7XG4gICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMS41cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDFyZW07XG4gICAgei1pbmRleDogMTtcbiAgICAvKiBNb2JpbGUgTGFuZHNjYXBlIGFuZCBQb3J0cmF0ZSAqL1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDMyMHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDg5NnB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMikge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgYSB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLyogLS0tLS0tLSBJTi1GT0NVUyBTRUNUSU9OIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0gRURJVE9SUyAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG4uZWRpdG9yLWltZyB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgd2lkdGg6IDIxMnB4O1xuICBoZWlnaHQ6IDIxMnB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC13ZWJraXQtbWFzay1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQod2hpdGUsIGJsYWNrKTtcbiAgLm1haW4tZWRpdG9ycyAmIHtcbiAgICB3aWR0aDogMzAycHg7XG4gICAgaGVpZ2h0OiAzMDJweDtcbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgJi5hcnRpY2xlLWl0ZW0taW1nIGltZyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICBhc3BlY3QtcmF0aW86IGluaXRpYWw7XG4gICAgfVxuICB9XG59XG5cbi5lZGl0b3JpYWwtbGlzdCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmVkaXRvci1pdGVtLW5hbWUge1xuICBoMyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgaDUge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTkpO1xuICAgIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgfVxufVxuLmVkaXRvci1pdGVtLWNhdCB7XG4gIGg2IHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgfVxufVxuLmVkaXRvci1pdGVtLWRlc2Mge1xuICBwIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICB9XG59XG5cbi8qIC0tLS0tLS0gRURJVE9SUyAtLS0tLS0tIEVORCAtLS0tLS0tLSAqL1xuXG4vKiAtLS0tLS0tIFRBR1MgTUVOVSAoZXguIHBvZGNhc3QtbXVsdGlwbGUgcGFnZSkgLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuLy8gc3R5bGUgOiBib3R0b20gbGluZSB3aXRoIGJvcmRlciBib3R0b20gb24gaG92ZXJcbi5wYWdlLXRhZ3Mge1xuICBtYXJnaW46IDFyZW0gMDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIG1hcmdpbjogMnJlbSAwIDNyZW07XG4gIH1cbiAgPiB1bCB7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHNlcGFyYXRvci1jb2xvcjtcbiAgICBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDIuNXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IDAuOHJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gICAgICAmLmFjdGl2ZSxcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIH1cbiAgICAgICYuYWN0aXZlLFxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIGluIHBvZGNhc3QtbXVsdGlwbGVcbiAgJi5zdHlsZS0yIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjhmNjtcbiAgICB6LWluZGV4OiA5O1xuICAgID4gdWwge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcHg7XG4gICAgICB9XG4gICAgICBsaSB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIH1cbiAgICAgICAgJi5hY3RpdmUsXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIC8vIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpvbmx5LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBzdHlsZTogcm91bmRlZCBib3JkZXIgYnV0dG9ucyBtZW51IChleC4gbXktdGFncylcbi5teS10YWdzLW1lbnUge1xuICB6LWluZGV4OiA5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmOGY2O1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAmI3Njcm9sbC1jYXQge1xuICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IC0xcmVtO1xuICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogLTFyZW07XG4gICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXJlbTtcbiAgICB9XG4gIH1cbiAgdWwge1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgbGkge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGEge1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8qIC0tLS0tLS0gVEFHUyBNRU5VIChleC4gcG9kY2FzdC1tdWx0aXBsZSBwYWdlKSAtLS0tLS0tIEVORCAtLS0tLS0tLSAqL1xuXG4ucmVnaXN0ZXItd2lkZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWdyZWVuO1xuICBwYWRkaW5nOiAyLjVyZW0gMXJlbSAycmVtO1xuICBjb2xvcjogJHdoaXRlO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICBAZXh0ZW5kIC5mdWxsLWJnO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHBhZGRpbmc6IDJyZW07XG4gICAgaGVpZ2h0OiAyNzBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgPiAuZ3JpZC1jb250YWluZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmdyaWQteCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gIH1cbiAgaDIge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICB9XG4gIH1cblxuICBoNCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgIH1cbiAgfVxuXG4gICZfX2ltZyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICBtYXJnaW46IDAgYXV0byAxcmVtO1xuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDE3OHB4O1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiA1cmVtO1xuICAgIH1cbiAgfVxuXG4gICZfX2J0biB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICMwNDJiMjc7XG4gICAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgcGFkZGluZzogNXB4IDMwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMTBweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZSAwcztcbiAgICBsaW5lLWhlaWdodDogMjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgaSB7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZSAwcztcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiBpbml0aWFsO1xuICAgICAgb3BhY2l0eTogMC45O1xuICAgICAgaSB7XG4gICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDFyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fbGVmdCB7XG4gICAgbWFyZ2luOiAxcmVtIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICAmX19jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTFyZW07XG4gICAgbGVmdDogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cbi8qIC0tLS0tLS0gTmV3c2xldHRlciBibG9jayBvbiBob21lcGFnZSAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG4ubmV3c2xldHRlci1ob2xkZXIge1xuICBwYWRkaW5nOiAyLjVyZW0gMS41cmVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgcGFkZGluZzogMS41cmVtO1xuICB9XG4gIEBleHRlbmQgLndoaXRlLWJnO1xuICBAZXh0ZW5kIC5mdWxsLWJnLXNtO1xuICBpbWcge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICB3aWR0aDogMTY4cHg7XG4gICAgfVxuICB9XG4gIC5idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWdyZWVuO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgaSB7XG4gICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxMHB4O1xuICAgICAgW2Rpcj1cImx0clwiXSAmIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLyogLS0tLS0tLSBOZXdzbGV0dGVyIGJsb2NrIG9uIGhvbWVwYWdlIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG5cbi5tYXAtaWZyYW1lIHtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG59XG4uZW1wdHktY29udGVudCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgJi10ZXh0IHtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gICAgY29sb3I6ICRncmF5O1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgIGZvbnQtc2l6ZTogMzhweDtcbiAgICB9XG4gIH1cbiAgJi1idXR0b24ge1xuICAgIHBhZGRpbmc6IDAuODVlbSAzZW07XG4gIH1cbn1cblxuLy8gPT09PT09PT09PT09PT0gPD4gPT09PT09PT09PT09PT09IEFkZCB5b3VyIGN1c3RvbSBzdHlsZXMgYmVmb3JlIHRoaXMgbGluZS4gPT09PT09PT09PT09PT0gPD4gPT09PT09PT09PT09PT09XG4ucmF0aW8tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIG92ZXJmbG93OiBoaWRkZW47IC8vIGFkZGVkIGJlYyBvZiB6b29taW5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLyogMTY6OSA9IDU2LjI1JSA9IGNhbGMoOSAvIDE2ICogMTAwJSkgKi9cbiAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuXG4gICAgLmdyaWQtaXRlbXMgJiB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICAgIH1cblxuICAgIC5saWZlc3R5bGUtZ3JpZCAmIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4NSU7XG4gICAgfVxuXG4gICAgLnZpZGVvLXNjcmVlbiAmIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzOCU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5lbnRyeS1tZWRpYS1oZXJvIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA5NC4yNSU7XG4gICAgfVxuICB9XG5cbiAgJi5hYm91dC12aWRlbyB7XG4gICAgJjphZnRlciB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzElO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA5My4zNCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgPiBhLFxuICA+IHZpZGVvIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgdG9wOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICBib3R0b206IDA7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcbiAgfVxufVxuXG4vLyBzbGljayBjYXJvdXNlbCBsb2FkaW5nIC0tLS0gU1RBUlQgLS0tLS0tXG4uc2xpY2stbG9hZGVyIHtcbiAgbWF4LWhlaWdodDogNTAwcHg7XG4gIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoLi4vaW1nL2xvYWRlci5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gID4gZGl2IHtcbiAgICAvL29wYWNpdHk6IDA7XG4gIH1cblxuICAmLnNsaWNrLWluaXRpYWxpemVkLFxuICAmLm93bC1sb2FkZWQge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiBpbml0aWFsO1xuICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcblxuICAgID4gZGl2IHtcbiAgICAgIC8vb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cblxuICAuc2xpY2stbGlzdCB7XG4gICAgdHJhbnNpdGlvbjogaGVpZ2h0IDI1MG1zIGVhc2UtaW4tb3V0O1xuICB9XG59XG4uc2xpY2stbG9hZGVyLXNtIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgbWF4LWhlaWdodDogNDAwcHg7XG4gICAgbWluLWhlaWdodDogMjAwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoLi4vaW1nL2xvYWRlci5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICA+IGRpdiB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgICYuc2xpY2staW5pdGlhbGl6ZWQsXG4gICAgJi5vd2wtbG9hZGVkIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1heC1oZWlnaHQ6IGluaXRpYWw7XG4gICAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgICA+IGRpdiB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWNrLWxpc3Qge1xuICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IDI1MG1zIGVhc2UtaW4tb3V0O1xuICAgIH1cbiAgfVxufVxuXG4vL2xvYWRlciBmb3IgYXVkaW8tcG9kY2FzdCBibG9jayB3aXRoIHNsaWRlciBhbmQgd3JpdGVycyBsaXN0XG4uc2xpZGVyLXYxLmF1ZGlvLXBvZGNhc3QsXG4uc2xpZGVyLXYxLndyaXRlcnMtbGlzdCB7XG4gIGhlaWdodDogNDUwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgJi5zbGljay1pbml0aWFsaXplZCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IGluaXRpYWw7XG4gICAgbWluLWhlaWdodDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICB9XG5cbiAgLnNsaWNrLWxpc3Qge1xuICAgIHRyYW5zaXRpb246IGhlaWdodCAyNTBtcyBlYXNlLWluLW91dDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICBtYXJnaW46IDAgLTE1cHg7XG4gICAgfVxuICB9XG4gIC5zbGljay1zbGlkZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgbWFyZ2luOiAwIDE1cHg7XG4gICAgfVxuICB9XG59XG5cbi8vIHNsaWNrIGNhcm91c2VsIGxvYWRpbmcgLS0tLSBFTkQgLS0tLS0tXG5cbi8vIE9XTCBDQVJPVVNFTCBzdHlsZXMgLS0tLSBTVEFSVCAtLS0tLS1cbi5vd2wtZG90cyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5vd2wtZG90IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgNXB4O1xuICBzcGFuIHtcbiAgICB3aWR0aDogNDdweDtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gICYuYWN0aXZlIHtcbiAgICBzcGFuIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICB9XG4gIH1cbn1cbi8vIE9XTCBDQVJPVVNFTCBzdHlsZXMgLS0tLSBFTkQgLS0tLS0tXG5cbi8vIFBBR0lOQVRJT04gU1RZTEVTIC0tLS0gU1RBUlQgLS0tLS0tXG5cbi5wYWdpbmF0aW9uLXdyYXAge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICAucGFnaW5hdGlvbiB7XG4gICAgbGkge1xuICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDE1cHg7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAmLmN1cnJlbnQsXG4gICAgICAmOm5vdCgucGFnZXJfX2l0ZW0tLWZpcnN0KTpub3QoLnBhZ2VyX19pdGVtLS1wcmV2aW91cyk6bm90KFxuICAgICAgICAgIC5wYWdlcl9faXRlbS0tbmV4dFxuICAgICAgICApOm5vdCgucGFnZXJfX2l0ZW0tLWxhc3QpXG4gICAgICAgIGEge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS44O1xuICAgICAgfVxuXG4gICAgICAmLmN1cnJlbnQge1xuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLnBhZ2VyX19pdGVtLS1maXJzdCxcbiAgICAgICYucGFnZXJfX2l0ZW0tLXByZXZpb3VzLFxuICAgICAgJi5wYWdlcl9faXRlbS0tbmV4dCxcbiAgICAgICYucGFnZXJfX2l0ZW0tLWxhc3Qge1xuICAgICAgICBhIHtcbiAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweCAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYucGFnZXJfX2l0ZW0tLWZpcnN0LFxuICAgICAgJi5wYWdlcl9faXRlbS0tbGFzdCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gUEFHSU5BVElPTiBTVFlMRVMgLS0tLSBFTkQgLS0tLS0tXG4vKiAtLS0tLS0tLSBGaW5hbCBzYXkgLS0tLS0tLS0tLS0tLS0tLSBTdGFydCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vL3NwYWNlZCBpbi1iZXR3ZWVuIGl0ZW1zIHZlcnRpY2FsbHlcbi5oLXNwYWNlZCB7XG4gID4gZGl2Om5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDIuM3JlbTtcbiAgfVxufVxuXG4vL3ByaW1hcnktdmVydGljYWwtYm9yZGVyLWJvdHRvbSBpbiBiZXR3ZWVuIGl0ZW1zXG4uY29sb3JlZC1zZXBhcmF0b3Ige1xuICA+IGRpdjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHNlcGFyYXRvci1jb2xvcjtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLm1vcmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiAkZ3JheTtcbiAgYSB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG4gIGkge1xuICAgIGZvbnQtc2l6ZTogOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8vdG9wOiA3cHg7XG4gICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4uc2VlLW1vcmUtbGluayB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiA1cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gICYucHJpbWFyeSB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICB9XG4gIH1cbn1cblxuLnNlY3Rpb24tYmctMSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYWYzZjI7XG59XG5cbi5ibG9jay1jdXN0b20tYmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGNvbG9yOiAkYmxhY2s7XG59XG5cbi5ibG9jay1jdXN0b20tYmctMiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNGYwZWY7XG4gIGNvbG9yOiAkYmxhY2s7XG59XG5cbi5ibG9jay1jdXN0b20tYmctMyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNGVkZWM7XG4gIGNvbG9yOiAkYmxhY2s7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICYuaGFzLXBhZGRpbmcge1xuICAgICAgcGFkZGluZzogMXJlbSAwO1xuICAgIH1cbiAgfVxufVxuXG4uYmxvY2stY3VzdG9tLWJnLTQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGZlM2UzO1xuICBjb2xvcjogJGJsYWNrO1xufVxuXG5sYWJlbCB7XG4gIHNwYW4ucmVxdWlyZWQge1xuICAgIGNvbG9yOiByZWQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cblxuLmdyaWQtY29sbGFwc2Uge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tY29sbGFwc2U7XG4gIH1cbn1cblxuLnNtYWxsLWdyaWQtY29sbGFwc2Uge1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1jb2xsYXBzZTtcbiAgICAvLyAuYXJ0aWNsZS1pdGVtLWluZm8sIC5hcnRpY2xlLWl0ZW0tb3ZlcmJveC1pbm5lciB7XG4gICAgLy8gICBwYWRkaW5nOiAwIDEuMjVyZW07XG4gICAgLy8gfVxuICB9XG4gIC8vIEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludCgzOTApfSBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBkb3duKX0ge1xuICAvLyAgIC5ncmlkLWl0ZW1zIHtcbiAgLy8gICAgIC5hcnRpY2xlLWl0ZW0taW5mbywgLmFydGljbGUtaXRlbS1vdmVyYm94LWlubmVyIHtcbiAgLy8gICAgICAgcGFkZGluZzogMDtcbiAgLy8gICAgIH1cbiAgLy8gICB9XG4gIC8vIH1cblxuICAucGFkZGluZy1ob3Jpem9udGFsLWZvci1zbWFsbCB7XG4gICAgLmJsb2NrLXRpdGxlLnN0eWxlLXYzIHNwYW4sXG4gICAgLnNlY3Rpb24tdGl0bGUuc3R5bGUtdjMgc3BhbixcbiAgICAucGFnZS10aXRsZS5zdHlsZS12MyBzcGFuIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLmFydGljbGUtaXRlbS1vdmVyYm94LWlubmVyIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG59XG5cbi5uZXdzbGV0dGVyLWFyZWEge1xuICBkaXJlY3Rpb246IGx0cjtcbiAgZm9vdGVyICYge1xuICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgYm9yZGVyLXRvcC0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259LXJhZGl1czogMjBweDtcbiAgICAgIGJvcmRlci1ib3R0b20tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufS1yYWRpdXM6IDIwcHg7XG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIGJvcmRlci10b3AtI3skZGVmYXVsdC1kaXJlY3Rpb259LXJhZGl1czogMjBweDtcbiAgICAgIGJvcmRlci1ib3R0b20tI3skZGVmYXVsdC1kaXJlY3Rpb259LXJhZGl1czogMjBweDtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBpbnB1dFt0eXBlPVwiZW1haWxcIl0ge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBwYWRkaW5nLXRvcDogMTFweDtcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgICAmOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pIHtcbiAgICAgIHRleHQtYWxpZ246ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn07XG4gICAgfVxuICAgICY6cGxhY2Vob2xkZXItc2hvd24ge1xuICAgICAgdGV4dC1hbGlnbjogI3skZGVmYXVsdC1kaXJlY3Rpb259O1xuICAgIH1cbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIGJvcmRlcjogMDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgICBbZGlyPVwibHRyXCJdICYge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgfVxuICB9XG59XG5cbi5uZXdzbGV0dGVyLWludHJvIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICBoNSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgfVxuICAgIGZvb3RlciAmIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaDYge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgfVxuXG4gIGZvb3RlciAmIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLm1jX2VtYmVkX3NpZ251cCBkaXYjbWNlLXJlc3BvbnNlcyB7XG4gIGZsb2F0OiAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259O1xuICB0b3A6IC0xLjRlbTtcbiAgcGFkZGluZzogMGVtIDAuNWVtIDBlbSAwLjVlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDkwJTtcbiAgbWFyZ2luOiAwIDUlO1xuICBjbGVhcjogYm90aDtcbn1cblxuLm1jX2VtYmVkX3NpZ251cCBkaXYucmVzcG9uc2Uge1xuICBtYXJnaW46IDFlbSAwO1xuICBwYWRkaW5nOiAxZW0gMC41ZW0gMC41ZW0gMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZsb2F0OiAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259O1xuICB0b3A6IC0xLjVlbTtcbiAgei1pbmRleDogMTtcbiAgd2lkdGg6IDgwJTtcbn1cblxuLm1jX2VtYmVkX3NpZ251cCAjbWNlLWVycm9yLXJlc3BvbnNlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1jX2VtYmVkX3NpZ251cCAjbWNlLXN1Y2Nlc3MtcmVzcG9uc2Uge1xuICBjb2xvcjogIzUyOTIxNDtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1jX2VtYmVkX3NpZ251cCBsYWJlbC5lcnJvciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxLjA1ZW07XG4gIHRleHQtYWxpZ246ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn07XG4gIHBhZGRpbmc6IDAuNWVtIDA7XG59XG5cbi8qIC0tLS0tLS0gU29jaWFscyBCdG5zIFN0eWxlcyAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG5cbi5zb2NpYWxzLWJ0bnMge1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgZ2FwOiAxNnB4O1xuICB9XG5cbiAgLmNhbnZhcy1wYW5lbCAmIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICBzcGFuIHtcbiAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMC41cmVtO1xuICAgIC5tYWluLWhlYWRlci1iZWZvcmUgJiB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA2OHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAubWFpbi1mb290ZXItYmVmb3JlICYge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi5zb2NpYWwtYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAkcHJpbWFyeS1kYXJrO1xuICBmb250LXNpemU6IDEycHg7XG4gIC8vIG1hcmdpbjogMCA1cHg7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLS0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICB9XG5cbiAgaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGxpbmVhcjtcbiAgfVxuXG4gIGZvb3RlciAmIHtcbiAgICAvL21hcmdpbjogMCAwLjg1cmVtIDAgMDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiAgICBjb2xvcjogIzdjOWE5NDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIG1hcmdpbjogMXJlbTtcbiAgICB9XG4gIH1cblxuICAubmF2cGFuZWwgJiB7XG4gICAgY29sb3I6ICM3YzlhOTQ7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgIH1cbiAgfVxuICAubWFpbi1oZWFkZXItYmVmb3JlICYge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLmJsb2NrLXdyYXBwZXIgJiB7XG4gICAgbWFyZ2luOiAwIDAuODVyZW07XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG5cbiAgLmV2ZW50cy1saXN0ICYge1xuICAgIG1hcmdpbjogMCAwLjg1cmVtIDAgMDtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICB9XG59XG5cbi5zb2NpYWxzLWJsb2NrIHtcbiAgYSB7XG4gICAgbWFyZ2luOiAwIDAuMjVyZW07XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIHBhZGRpbmc6IDAuNzVyZW07XG5cbiAgICBpIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG5cbiAgLm9waW5pb24tYXV0aG9yICYge1xuICAgID4gZGl2IHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAjOTY5Njk2O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICBwYWRkaW5nOiA3cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6YWN0aXZlLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gICAgLy8gaXtcbiAgICAvLyAgICAgYmFja2dyb3VuZC1jb2xvcjogIzkyOTg5ODtcbiAgICAvLyAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAvLyAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgIC8vICAgICBwYWRkaW5nOiA1cHg7XG4gICAgLy8gICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAvLyB9XG4gICAgc3BhbiB7XG4gICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiA1cHg7XG4gICAgfVxuICB9XG59XG5cbi52aWRlby1wb3B1cC1tb2RhbCB7XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3MDcwNzA7XG4gIHBhZGRpbmc6IDUwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogMDtcbiAgdG9wOiA1MCUgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiA2MDBweDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBwYWRkaW5nOiA0MHB4IDIwcHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDYwcHgpICFpbXBvcnRhbnQ7XG4gICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogNTAlICFpbXBvcnRhbnQ7XG4gICAgdG9wOiAyMCUgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgIWltcG9ydGFudDtcbiAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IGF1dG87XG4gIH1cblxuICAuY2xvc2UtYnV0dG9uLFxuICAubW9kYWwtY2xvc2Uge1xuICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDUwcHg7XG4gICAgdG9wOiAzNXB4O1xuICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDIwcHg7XG4gICAgICB0b3A6IDQwcHg7XG4gICAgfVxuICB9XG5cbiAgaDIge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgbWFyZ2luOiAwIDAgMjdweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RjZTBlMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZm9udC1zaXplOiAzM3B4O1xuICAgIH1cbiAgfVxuICBoNSB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuc2hhcmUtaWNvbnMge1xuICAgIG1hcmdpbi1ib3R0b206IDI3cHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBnYXA6IDMzcHg7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogNTBweCAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IDUwcHggIWltcG9ydGFudDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlNGVkZWM7XG4gICAgICAgIGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY29weS1saW5rIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIC5jb3B5LWxpbmstaW5wdXQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgd2lkdGg6IDMyOHB4O1xuICAgICAgfVxuXG4gICAgICAmLmNvcGllZCB7XG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6YWN0aXZlLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHotaW5kZXg6IDEwMDAwMDE7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGJvcmRlcjogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDUwJTtcbiAgICAgICAgICBib3R0b206IC01cHg7XG4gICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogLTVweDtcbiAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgei1pbmRleDogMTAwMDAwMDtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIHBhZGRpbmc6IDVweCA4cHg7XG4gICAgICAgICAgZm9udDogbm9ybWFsIG5vcm1hbCAxMXB4LzEuNSBIZWx2ZXRpY2EsIGFyaWFsLCBuaW1idXNzYW5zbCxcbiAgICAgICAgICAgIGxpYmVyYXRpb25zYW5zLCBmcmVlc2FucywgY2xlYW4sIHNhbnMtc2VyaWYsIFwiU2Vnb2UgVUkgRW1vamlcIixcbiAgICAgICAgICAgIFwiU2Vnb2UgVUkgU3ltYm9sXCI7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgICAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgICAgICAgIHdoaXRlLXNwYWNlOiBwcmU7XG4gICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBzdWJwaXhlbC1hbnRpYWxpYXNlZDtcbiAgICAgICAgICBjb250ZW50OiBcIkNvcGllZCFcIjtcbiAgICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaW5wdXQge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyOHB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGNkZmRmO1xuICAgICAgICBwYWRkaW5nOiA1cHggMTdweDtcbiAgICAgICAgaGVpZ2h0OiA0N3B4O1xuICAgICAgICBjb2xvcjogJGdyYXk7XG4gICAgICAgIHRleHQtYWxpZ246ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn07XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIC8vbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgIH1cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXB4O1xuICAgICAgICB0b3A6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiAtLS0tLS0tIFNvY2lhbHMgQnRucyBTdHlsZXMgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLSBMZWFkZXJib2FyZCBBZCBTdHlsZXMgLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuXG4ubGVhZGVyYm9hcmQtYmxvY2sge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgLnN0aWNreSAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIH1cblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICB9XG59XG4vKiAtLS0tLS0tIExlYWRlcmJvYXJkIEFkIFN0eWxlcyAtLS0tLS0tIEVORCAtLS0tLS0tLSAqL1xuXG4vKiAtLS0tLS0tIExlYWRlcmJvYXJkIEFkIFN0eWxlcyAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG5cbi5lbnRyeS1hZHZlcnRvcmlhbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMTBweDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICB9XG4gIGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICBzcGFuIHtcbiAgICBwYWRkaW5nOiAwIDZweDtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgZm9udC1zaXplOiAxMi44cHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICB9XG4gIH1cbn1cbi8qIC0tLS0tLS0gTGVhZGVyYm9hcmQgQWQgU3R5bGVzIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tIEZpbmFsIHNheSAtLS0tLS0tLS0tLS0tLS0tIEVuZCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFNldCB0aGUgZ3V0dGVycyBvbiBhIGNvbHVtblxuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRndXR0ZXIgW2F1dG9dXG4vLy8gICBTcGFjaW5nIGJldHdlZW4gY29sdW1ucywgYWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgc2luZ2xlIHZhbHVlIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBicmVha3BvaW50IG5hbWUgd2lsbCBtYWtlIHRoZSBndXR0ZXIgdGhlIGNvcnJlc3BvbmRpbmcgc2l6ZSBpbiB0aGUgJGd1dHRlcnMgbWFwLlxuLy8vICAgLSBcImF1dG9cIiB3aWxsIG1ha2UgdGhlIGd1dHRlciByZXNwb25zaXZlLCB1c2luZyB0aGUgJGd1dHRlcnMgbWFwIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLWNvbHVtbi1ndXR0ZXIoXG4gICRndXR0ZXI6IGF1dG8sXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJGd1dHRlciwgJGd1dHRlcnMpIHtcbiAgICAkcGFkZGluZzogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSkgKiAwLjU7XG5cbiAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICB9XG59XG5cbi8vLyBDb2xsYXBzZSB0aGUgZ3V0dGVycyBvbiBhIGNvbHVtbiBieSByZW1vdmluZyB0aGUgcGFkZGluZy4gKipOb3RlOioqIG9ubHkgdXNlIHRoaXMgbWl4aW4gd2l0aGluIGEgYnJlYWtwb2ludC4gVG8gY29sbGFwc2UgYSBjb2x1bW4ncyBndXR0ZXJzIG9uIGFsbCBzY3JlZW4gc2l6ZXMsIHVzZSB0aGUgYCRndXR0ZXJgIHBhcmFtZXRlciBvZiB0aGUgYGdyaWQtY29sdW1uKClgIG1peGluIGluc3RlYWQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tY29sbGFwc2Uge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoMCk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWd1dHRlclxuQG1peGluIGdyaWQtY29sLWd1dHRlcihcbiAgJGd1dHRlcjogYXV0byxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlciwgJGd1dHRlcnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tY29sbGFwc2UoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWNvbGxhcHNlXG5AbWl4aW4gZ3JpZC1jb2wtY29sbGFwc2Uge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1jb2xsYXBzZTtcbn1cblxuLy8vIFNldHMgYm90dG9tIG1hcmdpbiBvbiBncmlkIGNvbHVtbnMgdG8gbWF0Y2ggZ3V0dGVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRtYXJnaW4gW2F1dG9dXG4vLy8gICBUaGUgYm90dG9tIG1hcmdpbiBvbiBncmlkIGNvbHVtbnMsIGFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHNpbmdsZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIG1hcmdpbiB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgYnJlYWtwb2ludCBuYW1lIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHRoZSBjb3JyZXNwb25kaW5nIHNpemUgaW4gdGhlICRtYXJnaW5zIG1hcC5cbi8vLyAgIC0gXCJhdXRvXCIgd2lsbCBtYWtlIHRoZSBtYXJnaW4gcmVzcG9uc2l2ZSwgdXNpbmcgdGhlICRtYXJnaW5zIG1hcCB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFyZ2lucyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLWNvbHVtbi1tYXJnaW4gKFxuICAkbWFyZ2luOiBhdXRvLFxuICAkbWFyZ2luczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRtYXJnaW4sICRtYXJnaW5zKSB7XG4gICAgJG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpO1xuICAgIG1hcmdpbi1ib3R0b206ICRtYXJnaW4tYm90dG9tO1xuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiYm9keSB7XG4gICAgZGlyZWN0aW9uOmx0cjtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbn0gXG4uYmxvY2stdGl0bGUsIC5zZWN0aW9uLXRpdGxlLCAucGFnZS10aXRsZSwgLnRpdGxle1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG59XG5cbnVsLCBzcGFuLCAuc29jaWFsLWxibCwgLmFsZXJ0e1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG59XG5cbmgxIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbmgyIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbn1cblxuaDN7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbmg2e1xuICBsaW5lLWhlaWdodDogMS43O1xufVxuXG4uYnJlYWtpbmctbmV3cy1hcmVhIGg2LCAuYnJlYWtpbmctbmV3cy1hcmVhIC5sYWJlbHtcbiAgICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5pY29uLWFycm93LXJpZ2h0LWJsYWNre1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG5cbi5sYWJlbCB7IFxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgJi5hYnMtZWx7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxuICAgICYubGFiZWwtY2VudGVyeyBcbiAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiA1MCU7XG4gICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IGluaXRpYWw7IFxuICAgIH0gXG59XG5cbi5hcnRpY2xlLWl0ZW0tdGl0bGUgeyBcbiAgICBoMnsgXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzMik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgICAgIC5oZXJvLW1haW4gJntcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSAgXG59XG5cbi5hcnRpY2xlLWl0ZW0tbWV0YSwgLmdhbGxlcnktbWV0YXtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5OyBcbiAgICAubWV0YS1hdXRob3J7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbn1cblxuLmFydGljbGUtaXRlbS1tZXRhe1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICAgIH1cbn1cblxuLmltZy1jYXB0aW9ue1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG59XG5cbi5zZWN0aW9uLXRpdGxlLCAuYmxvY2stdGl0bGUge1xuICAgIGgyLCBoM3tcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgfSBcbn1cbiAgXG4ucG9kY2FzdC1saXN0IC5kYXRlLWZpZWxkIGF7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5wb2RjYXN0LWxpc3QgLmRhdGUtZmllbGQgYSwgLnBvZGNhc3QtbGlzdCAucG9kY2FzdC10aW1lIGF7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbn1cblxuLy8gLml0ZW1zLW92ZXJsYXl7XG4vLyAgICAgLmFydGljbGUtaXRlbS10aXRsZSBoM3sgXG4vLyAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4vLyAgICAgfVxuLy8gICAgIC5sYWJlbHtcbi8vICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4vLyAgICAgfVxuLy8gfVxuXG4uc2VlLW1vcmUtbGluayBhLCAubW9yZSBhe1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG59XG4gXG4uY2F0ZWdvcnktbmFtZXtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4gXG5cbi52aWRlby1zdGFtcC5hYnMtZWx7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbn1cblxuLy8gLml0ZW1zLW92ZXJsYXl7XG4vLyAgICAgLmFydGljbGUtaXRlbS10aXRsZXtcbi8vICAgICAgICAgaDR7XG4vLyAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDM2KTtcbi8vICAgICAgICAgfVxuLy8gICAgIH1cbi8vIH1cblxuLmVudHJ5LWhpZ2hsaWdodCB7XG4gICAgdWx7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5OyBcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBsaXtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuN3JlbTtcbiAgICAgICAgfVxuICAgIH0gXG4gICAgLmhlcm8tbWFpbiAmeyAgXG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgIH1cbn1cblxuLmVudHJ5LWRhdGUgeyBcbiAgICAuZW50cnktYXNpZGUtbWV0YSAmeyBcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7ICBcbiAgICB9IFxufVxuIFxuXG4uZW50cnktdGl0bGUgaDEge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIH1cbn1cblxuIFxuLm1lbnUtaGlnaGxpZ2h0cyAub2JqZWN0LWl0ZW0ge1xuICAgIG1pbi13aWR0aDogMTQwcHg7IFxufVxuXG4uc2VjdGlvbi1tZW51LXdyYXBwZXJ7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbn0iLCJAbWVkaWEgb25seSBzY3JlZW4ge1xuICAgIC5uby1zcGFjZXIge1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm5vLXRvcC1zcGFjZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5uby1ib3R0b20tc3BhY2VyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubm8tbGVmdC1zcGFjZXIge1xuICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm5vLXJpZ2h0LXNwYWNlciB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC50b3Atc3BhY2VyLS14bCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLnRvcC1zcGFjZXItLWwge1xuICAgICAgICBtYXJnaW4tdG9wOiAyLjVyZW0gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLnRvcC1zcGFjZXItLW0ge1xuICAgICAgICBtYXJnaW4tdG9wOiAycmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC50b3Atc3BhY2VyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC50b3Atc3BhY2VyLS1zIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAudG9wLXNwYWNlci0teHMge1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmJvdHRvbS1zcGFjZXItLXhsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuYm90dG9tLXNwYWNlci0tbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuYm90dG9tLXNwYWNlci0tbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW0gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmJvdHRvbS1zcGFjZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmJvdHRvbS1zcGFjZXItLXMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5ib3R0b20tc3BhY2VyLS14cyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLnRleHQtdHJhbnNmb3JtLXVwcGVyY2FzZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnRleHQtdHJhbnNmb3JtLWNhcGl0YWxpemUge1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xufVxuXG5AaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICAgICAgLmNvbHVtbjpsYXN0LWNoaWxkLFxuICAgICAgICAgICAgLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgW2Rpcj1cInJ0bFwiXSB7XG4gICAgICAgIC5sYXJnZS11bmNlbnRlcmVkLFxuICAgICAgICAubGFyZ2UtcHVzaC0wLFxuICAgICAgICAubGFyZ2UtcHVsbC0wIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnZlcnRpY2FsLWNlbnRlciB7XG4gICAgQGluY2x1ZGUgdmVydGljYWwtY2VudGVyKCk7XG59XG5cbi5jZW50ZXItZWxlbWVudCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLnVzZS1sb2FkZXIge1xuICAgIGhlaWdodDogMzYwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2xvYWRlci5naWYpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyIHRyYW5zcGFyZW50O1xufVxuXG4ucm91bmQge1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMDBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIC13ZWJraXQtbWFzay1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQod2hpdGUsIGJsYWNrKTtcbn1cblxuLmJ1dHRvbi1yYWRpdXMge1xuICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG59XG5cbi5ndXR0ZXJzLTF4IHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKDIwLCBcIm1hcmdpblwiLCAkbmVnYXRpdmU6IHRydWUpO1xuXG4gICAgPiAuY2VsbCB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoMjAsIFwicGFkZGluZ1wiLCAkbmVnYXRpdmU6IGZhbHNlKTtcbiAgICB9XG59XG5cbi5ndXR0ZXJzLS0xeCB7XG4gICAgQGluY2x1ZGUgeHktZ3V0dGVycyg1LCBcIm1hcmdpblwiLCAkbmVnYXRpdmU6IHRydWUpO1xuXG4gICAgPiAuY2VsbCB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoNSwgXCJwYWRkaW5nXCIsICRuZWdhdGl2ZTogZmFsc2UpO1xuICAgIH1cbn1cblxuLmd1dHRlcnMtbWFyZ2luLTF4IHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKDIwLCBcIm1hcmdpblwiLCAkbmVnYXRpdmU6IHRydWUpO1xuXG4gICAgLmNlbGwge1xuICAgICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKDIwLCBcIm1hcmdpblwiLCAkbmVnYXRpdmU6IGZhbHNlKTtcbiAgICB9XG59XG5cbi5ndXR0ZXItMjAge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgJi5yb3cge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKC0xMCk7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKC0xMCk7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbHVtbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoMjBweCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5ndXR0ZXItMTAge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgJi5yb3cge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKC01KTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoLTUpO1xuICAgICAgICB9XG4gICAgICAgIC5jb2x1bW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKDEwcHgpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubWFyZ2luLXRvcC1hdXRvIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LWNvbC1mdWxsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgaGVpZ2h0OiAxMDAlOyAvLyBmdWxsIGhlaWdodFxufVxuXG4ubm8tYm9yZGVyIHtcbiAgICBib3JkZXI6IDA7XG59XG5cbi5wYWRkaW5nLWhvcml6b250YWwtZm9yLXNtYWxsIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxLjI1cmVtO1xuICAgICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMS4yNXJlbTtcbiAgICB9XG59XG5cbi53aXRoLXBhZGRpbmcge1xuICAgIHBhZGRpbmc6IDFyZW07XG59XG5cbi5oYXMtcGFkZGluZyB7XG4gICAgcGFkZGluZzogMnJlbSAxLjVyZW07XG59XG5cbi52ZXJ0aWNhbC1wYWRkIHtcbiAgICBwYWRkaW5nOiAxcmVtIDA7XG59XG5cbi5ibGFjay1iZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xufVxuXG4ud2hpdGUtYmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbn1cblxuLm1heFdpZHRoLW1lZGl1bSxcbi5tYXhXaWR0aC1zbWFsbCxcbi5tYXhXaWR0aC14c21hbGwge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBhdXRvO1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IGF1dG87XG59XG5cbi5tYXhXaWR0aC1tZWRpdW0ge1xuICAgIG1heC13aWR0aDogODAwcHg7XG59XG5cbi5tYXhXaWR0aC1zbWFsbCB7XG4gICAgbWF4LXdpZHRoOiA2NzBweDtcbn1cblxuLm1heFdpZHRoLXhzbWFsbCB7XG4gICAgbWF4LXdpZHRoOiAzNjBweDtcbn1cblxuLmZ1bGwtYmcge1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogNTAlO1xuICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogNTAlO1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAtNTB2dztcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAtNTB2dztcbn1cblxuLmZ1bGwtYmctc20ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogNTAlO1xuICAgICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDUwJTtcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IC01MHZ3O1xuICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAtNTB2dztcbiAgICB9XG59XG5cbi5ib3JkZXItYm90dG9tLW1kLXNtIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICAmLmFydGljbGUtaXRlbSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG4uYm9yZGVyLWJvdHRvbS1zbWFsbCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICB9XG59XG5cbi5oaWRlLWxhYmVsIHtcbiAgICAubGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cbi5oaWRlLWxhYmVsLWgzIHtcbiAgICBoMyB7XG4gICAgICAgIC5sYWJlbC1saXZlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4uaGlkZS1maXJzdC10aXRsZSB7XG4gICAgLmZpcnN0LXRpdGxlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG4uaGlkZS1zZWNvbmQtdGl0bGUge1xuICAgIC5zZWNvbmQtdGl0bGUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cbi5oaWRlLWxvbmctZGVzY3JpcHRpb24ge1xuICAgIC5sb25nLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG4uaGlkZS1zaG9ydC1kZXNjcmlwdGlvbiB7XG4gICAgLnNob3J0LWRlc2NyaXB0aW9uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5oaWRlLWhpZ2hsaWdodCB7XG4gICAgLmVudHJ5LWhpZ2hsaWdodCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuLmhpZGUtbWV0YSB7XG4gICAgLmFydGljbGUtaXRlbS1tZXRhIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5oaWRlLWRhdGUge1xuICAgIC5hcnRpY2xlLWl0ZW0tbWV0YSB7XG4gICAgICAgIC5pY29uLXRpbWUsXG4gICAgICAgIHRpbWUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5oaWRlLWltZyB7XG4gICAgLmFydGljbGUtaXRlbS1pbWcsXG4gICAgLm1lZGlhLW9iamVjdC1pbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLmhpZGUtaW1nLWxnIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIC5hcnRpY2xlLWl0ZW0taW1nLFxuICAgICAgICAubWVkaWEtb2JqZWN0LWltZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuLmhpZGUtY2F0ZWdvcnkge1xuICAgIC5hcnRpY2xlLWl0ZW0tY2F0ZWdvcnkge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuLmhpZGUtY2F0ZWdvcnktbmFtZSB7XG4gICAgLmNhdGVnb3J5LW5hbWUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cbi5oaWRlLWNhdGVnb3J5LXNtIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgLmNhdGVnb3J5LW5hbWUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5oaWRlLWNvbnRlbnQge1xuICAgIC5hcnRpY2xlLWl0ZW0tY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuLmhpZGUtYXV0aG9yIHtcbiAgICAubWV0YS1hdXRob3Ige1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuLmhpZGUtaGlnaGxpZ2h0IHtcbiAgICAuZW50cnktaGlnaGxpZ2h0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5ob3Zlci16b29tIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGltZyB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC41cztcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjVzO1xuICAgICAgICB0cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjVzO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cztcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMsIC13ZWJraXQtdHJhbnNmb3JtIDAuNXM7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmlucHV0LWNoZWNrYm94IHtcbiAgICAvLy13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcbiAgICAvKiBBZGQgaWYgbm90IHVzaW5nIGF1dG9wcmVmaXhlciAqL1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAvKiBSZW1vdmUgbW9zdCBhbGwgbmF0aXZlIGlucHV0IHN0eWxlcyAqL1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIC8vICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAvLyAgbWFyZ2luOiAwO1xuICAgIGJvcmRlcjogMDtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBSZXBvc2l0aW9uIGEgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJHBvc2l0aW9uIC0gSXQgY2FuIGJlOlxuLy8vICAgKiBBIG51bWJlcjogVGhlIGNvbHVtbiB3aWxsIG1vdmUgZXF1YWwgdG8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4gY291bnRcbi8vLyAgICAgc3BlY2lmaWVkLiBBIHBvc2l0aXZlIG51bWJlciB3aWxsIHB1c2ggdGhlIGNvbHVtbiB0byB0aGUgcmlnaHQsIHdoaWxlXG4vLy8gICAgIGEgbmVnYXRpdmUgbnVtYmVyIHdpbGwgcHVsbCBpdCB0byB0aGUgbGVmdC5cbi8vLyAgICogYGNlbnRlcmA6IENvbHVtbiB3aWxsIGJlIGNlbnRlcmVkXG4vLy8gICAqIGBhdXRvYDogQ29sdW1uIHdpbGwgYmUgcHVzaGVkIHRvIHRoZSBsZWZ0IChvciB0byB0aGUgcmlnaHQgZm9yIHRoZSBsYXN0IGNvbHVtbikuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKSB7XG4gIC8vIEF1dG8gcG9zaXRpb25pbmdcbiAgQGlmICRwb3NpdGlvbiA9PSBhdXRvIHtcbiAgICAmLCAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgICAgIGNsZWFyOiBub25lO1xuICAgIH1cblxuICAgIC8vIExhc3QgY29sdW1uIGFsaWdubWVudFxuICAgIEBpZiAkZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZSB7XG4gICAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogJGdsb2JhbC1yaWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQdXNoL3B1bGxcbiAgQGVsc2UgaWYgdHlwZS1vZigkcG9zaXRpb24pID09ICdudW1iZXInIHtcbiAgICAkb2Zmc2V0OiBwZXJjZW50YWdlKGRpdmlkZSgkcG9zaXRpb24sICRncmlkLWNvbHVtbi1jb3VudCkpO1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogJG9mZnNldDtcbiAgfVxuXG4gIC8vIENlbnRlciBwb3NpdGlvbmluZ1xuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gY2VudGVyIHtcbiAgICAmLCAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uLXBvc2l0aW9uKCkuIEVudGVyIGEgcG9zaXRpdmUgb3IgbmVnYXRpdmUgbnVtYmVyLCBcImNlbnRlclwiIG9yIFwiYXV0b1wiLic7XG4gIH1cbn1cblxuLy8vIFJlc2V0IGEgcG9zaXRpb24gZGVmaW5pdGlvbi5cbkBtaXhpbiBncmlkLWNvbHVtbi11bnBvc2l0aW9uIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oYXV0byk7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi8vLyBPZmZzZXRzIGEgY29sdW1uIHRvIHRoZSByaWdodCBieSBgJG5gIGNvbHVtbnMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJG4gLSBXaWR0aCB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGBncmlkLWNvbHVtbigpYCBtaXhpbiwgc3VjaCBhcyBgNmAsIGA1MCVgLCBvciBgMSBvZiAyYC5cbkBtaXhpbiBncmlkLWNvbHVtbi1vZmZzZXQoJG4pIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogZ3JpZC1jb2x1bW4oJG4pO1xufVxuXG4vLy8gRGlzYWJsZSB0aGUgZGVmYXVsdCBiZWhhdmlvciBvZiB0aGUgbGFzdCBjb2x1bW4gaW4gYSByb3cgYWxpZ25pbmcgdG8gdGhlIG9wcG9zaXRlIGVkZ2UuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZW5kIHtcbiAgLy8gVGhpcyBleHRyYSBzcGVjaWZpY2l0eSBpcyByZXF1aXJlZCBmb3IgdGhlIHByb3BlcnR5IHRvIGJlIGFwcGxpZWRcbiAgJjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG4gIH1cbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1wb3NpdGlvblxuQG1peGluIGdyaWQtY29sLXBvcygkcG9zaXRpb24pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXVucG9zaXRpb24oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXVucG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC11bnBvcyB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXVucG9zaXRpb247XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1vZmZzZXQoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLW9mZnNldFxuQG1peGluIGdyaWQtY29sLW9mZigkbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoJG4pO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tZW5kKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1lbmRcbkBtaXhpbiBncmlkLWNvbC1lbmQge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1lbmQ7XG59XG4iXX0= */
