@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Roboto+Serif:opsz,wght@8..144,400;8..144,700;8..144,800&display=swap");
@font-face {
  font-family: "icomoon";
  src: url("../fonts/icomoon.woff2?vs5") format("woff2"), url("../fonts/icomoon.ttf?vs5") format("truetype"), url("../fonts/icomoon.woff?vs5") 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-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:before {
  content: ""; }

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

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

@font-face {
  font-family: 'Awsat Digital';
  src: url("../fonts/AwsatDigital-Black.woff2") format("woff2"), url("../fonts/AwsatDigital-Black.woff") format("woff"), url("../fonts/AwsatDigital-Black.ttf") format("truetype");
  font-weight: 900;
  font-style: normal;
  font-display: swap; }

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

@font-face {
  font-family: "Beirut";
  src: url("../fonts/Beirut.woff2") format("woff2"), url("../fonts/Beirut.woff") format("woff");
  font-weight: 100;
  font-style: normal;
  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: "Effra";
  font-weight: bold; }

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

p {
  font-family: "Effra"; }

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: "Awsat Digital", Helvetica Neue, Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: 1.8;
  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.7375rem;
  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.8;
  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-right: 0.5rem;
  margin-left: 1rem;
  margin-bottom: 0; }
  [type='checkbox'] + label[for],
  [type='radio'] + label[for] {
    cursor: pointer; }

label > [type='checkbox'],
label > [type='radio'] {
  margin-left: 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.8;
    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-left: 0; }
  .input-group-label:last-child {
    border-right: 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-right: -0.1875rem;
    padding: 0 0.1875rem; }

select {
  height: 2.7375rem;
  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.8;
  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: left -1rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-left: 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: "Awsat Digital", 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.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

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

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

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

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

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

@media print, screen and (min-width: 40em) {
  h1, .h1 {
    font-size: 3.125rem; }
  h2, .h2 {
    font-size: 1.375rem; }
  h3, .h3 {
    font-size: 1.125rem; }
  h4, .h4 {
    font-size: 1rem; }
  h5, .h5 {
    font-size: 0.9375rem; }
  h6, .h6 {
    font-size: 0.875rem; } }

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-right: 1.25rem;
  list-style-type: disc; }

ol {
  margin-right: 1.25rem; }

ul ul, ol ul, ul ol, ol ol {
  margin-right: 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-right: 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-right: 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-right: 0%; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.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: right;
    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-right: 0;
  margin-bottom: 1rem; }
  .pagination::before, .pagination::after {
    display: table;
    content: ' ';
    flex-basis: 0;
    order: 1; }
  .pagination::after {
    clear: both; }
  .pagination li {
    margin-left: 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-left: 0.5rem;
  content: "«"; }

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

.accordion {
  margin-right: 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%;
    left: 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-left: 1rem; }
  .media-object-section:last-child:not(:nth-child(2)) {
    padding-right: 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;
    right: 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: right; }
  .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-right: 0; }

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

.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-right: 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-left: 0;
    margin-right: 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-left: 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-right: 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-right {
    justify-content: flex-start; }
  .menu.align-left li {
    display: flex;
    justify-content: flex-end; }
    .menu.align-left li .submenu li {
      justify-content: flex-start; }
  .menu.align-left.vertical li {
    display: block;
    text-align: left; }
    .menu.align-left.vertical li .submenu li {
      text-align: left; }
  .menu.align-left.icon-top li a img,
  .menu.align-left.icon-top li a i,
  .menu.align-left.icon-top li a svg, .menu.align-left.icon-bottom li a img,
  .menu.align-left.icon-bottom li a i,
  .menu.align-left.icon-bottom li a svg {
    text-align: right; }
  .menu.align-left .nested {
    margin-left: 1rem;
    margin-right: 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; }

.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-left: 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;
  left: 5px;
  right: 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-left: 0;
  margin-right: 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 {
  left: 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-left: 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;
    left: 5px;
    right: 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 {
    left: 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-left: 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;
    left: 5px;
    right: 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 {
    left: 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-left: 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;
    left: 5px;
    right: 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 {
    left: 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%;
    left: 5px;
    right: auto;
    margin-top: -6px; }
  .is-dropdown-submenu-parent.opens-inner > .is-dropdown-submenu {
    top: 100%;
    right: 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;
  right: 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 {
    left: 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; }

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

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

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

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

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

/* 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
 * Copyleft (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: right; }

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

.smarticker li {
  height: 30px;
  line-height: 28px; }

.smarticker a {
  text-decoration: none; }

.smarticker .smarticker-news {
  text-align: right;
  position: relative; }

.smarticker .smarticker-news ul {
  margin-right: 0;
  display: none; }

.smarticker .smarticker-news ul li {
  position: absolute;
  display: none;
  height: 100%;
  top: 0px;
  right: auto;
  left: auto;
  white-space: nowrap; }

.smarticker .smarticker-news ul li a {
  white-space: nowrap; }

.smarticker-category a {
  font-family: "Awsat Digital";
  font-weight: bold;
  font-size: 12px;
  text-transform: uppercase;
  padding: 0; }

.cover {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  right: 0px;
  z-index: 2;
  float: left; }

.ltr .flasher {
  width: 10px;
  height: 100%;
  line-height: 28px;
  margin-right: 15px;
  float: right; }

.rtl .flasher {
  width: 10px;
  height: 100%;
  line-height: 28px;
  margin-left: 5px;
  margin-right: 0;
  float: left; }

.smart-controller {
  position: absolute;
  left: 0px;
  top: 0px;
  height: 100%;
  z-index: 3;
  display: none; }

.s-rtl .smart-controller {
  right: 0px;
  left: 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: "Awsat Digital";
  font-weight: bold; }

.smarticker-category a {
  color: #999;
  text-decoration: none;
  font-weight: bold; }

/* ---------- Theme 1 ----------- */
.theme1 {
  background: #fff; }

.theme1 .smarticker-cats .right {
  position: absolute;
  right: 0px;
  width: 20%;
  height: 100%; }

.theme1 .smarticker-cats .left {
  position: absolute;
  left: 0px;
  top: 0px;
  z-index: 1;
  width: 20%;
  height: 100%; }

.no-category .smarticker-cats .right {
  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-right: 16px; }
  .theme2 .smarticker-cats:before {
    display: block;
    content: '|';
    font-size: 1rem;
    color: #2C8A82;
    position: absolute;
    right: 8px;
    top: 0;
    bottom: 0;
    height: 20px;
    line-height: 20px;
    margin: auto auto;
    font-family: "Awsat Digital";
    font-weight: bold; }

.theme2 .smarticker-cats .right {
  position: absolute;
  right: 0px;
  width: 20%;
  height: 100%; }

.theme2 .smarticker-cats .left {
  position: absolute;
  left: 0px;
  top: 0px;
  z-index: 1;
  width: 20%;
  height: 100%;
  display: none; }

.no-category .smarticker-cats .right {
  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 .right, .theme3 .smarticker-cats .left {
  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 .right, .theme4 .smarticker-cats .left {
  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: right;
  border-right: 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-right: 5px;
  float: right;
  border-right: 0;
  cursor: pointer;
  transition: all 0.2s ease-in-out 0s; }

.s-rtl.c2 .smart-controller span {
  border-right: 0;
  border-left: 1px solid #eee;
  direction: ltr; }

.theme3.c2 .smart-controller span, .theme2.c2 .smart-controller span {
  border-right: 0;
  height: 100%;
  background-color: transparent; }
  .theme3.c2 .smart-controller span:before, .theme2.c2 .smart-controller span:before {
    position: relative;
    left: 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: left 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: right 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: left center;
    background-image: url('../img/smarticker/controller1.png');
    background-repeat: no-repeat;*/ }

.c2 .pause-news:before {
  content: '||';
  text-indent: 0;
  float: right; }

.c2 .play-news:before {
  content: '\e91a';
  text-indent: 0;
  float: right; }

.c2 .prev-news:before {
  content: '\e917';
  text-indent: 0;
  float: right; }

.c2 .next-news:before {
  content: '\e916';
  text-indent: 0;
  float: right; }

.progress-bar {
  width: 100%;
  height: 2px;
  background-color: #eee;
  position: absolute;
  bottom: 0px;
  right: 0px;
  z-index: 3; }

.no-subcategory .smarticker-category {
  border-left: 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: right; }

.s-rtl .smarticker-news ul {
  margin-left: 0;
  margin-right: 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: "Awsat Digital"; }

.s-rtl .smarticker-news a {
  font-size: 15px;
  font-family: "Effra"; }

/* ----------------------------------*/
/*--------  Responsive Support ------*/
/*-----------------------------------*/
@media screen and (max-width: 850px) {
  .left, .right {
    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;
      left: 0;
      right: 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%;
  right: 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: right; }

.submenu.style-1 {
  height: auto; }
  .submenu.style-1:before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    top: -5px;
    right: 2rem;
    border-left: 5px solid transparent;
    border-right: 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;
      left: -45px; }
  .submenu.style-1 .media-object-section:first-child {
    padding-left: 0.5rem; }

.menu-category {
  margin-left: 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: "Effra"; }
  .menu-highlights h6 a {
    padding-right: 0;
    padding-left: 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: "Effra"; }
  .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-right: 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: left; }
    @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-right: 0; }

.weather-area > span {
  position: relative;
  margin-top: 0;
  margin-right: 0;
  margin-left: 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-right: 15px; }
      .main-header-inner.header-sticky .for-sticky > div > a {
        margin-right: 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: "Effra";
  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-left: 0;
    padding-right: 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-right: 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-left: 10px;
    font-size: 1rem; }
    @media (min-width: 1024px) and (max-width: 1368px) {
      .login-btn i {
        margin-left: 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-left: 0;
      margin-right: 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-right: 0;
  content: "\e916";
  font-family: "icomoon";
  font-size: 0.75rem;
  font-weight: normal;
  color: #ffffff;
  height: 100%;
  right: 0;
  line-height: 38px;
  margin-top: 0;
  position: absolute;
  text-align: left;
  left: 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-right: 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-left: 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;
    left: 0;
    font-size: 2.25rem; }
    .close-panel span:hover {
      color: #2C8A82; }

.print-edition-area {
  font-family: "Effra";
  font-size: 0.75rem;
  padding: 2rem 0;
  border-bottom: 3px double #d6d6d6; }
  .print-edition-area h6 {
    text-transform: uppercase;
    font-family: "Effra";
    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: "Effra";
    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-right: 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: "Effra"; }
    .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: "Awsat Digital";
    font-weight: 600;
    font-size: 16px; }
    [dir="ltr"] #main-footer .social-lbl {
      font-family: "Awsat Digital"; }
  .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: "Awsat Digital"; }
  @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: "Effra"; }
  @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-left: 1rem; }

.main-footer-after {
  padding: 1rem;
  background-color: #101f1d;
  font-family: "Effra"; }
  @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: "Awsat Digital"; }

.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-right: 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: right;
  margin-left: 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-right: 10px;
    padding-left: 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%;
  left: 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-left-style: solid;
  border-left-width: 2px;
  content: '';
  display: inline-block;
  height: 8px;
  right: 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%);
  right: 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-right: 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-right: 0;
  padding-left: 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-left: 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-right: 1rem; }
  @media print, screen and (min-width: 64em) {
    .player .player-song .time-now {
      width: 55px; } }

.player .player-song .time-finish {
  margin-left: 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-left: -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-right: 15px; }
  .audio-player-time .icon-play-green {
    color: #2C8A82;
    font-size: 15px;
    margin-right: 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-right: 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: "Effra";
  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-left: 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-right: 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: "Effra"; }

.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-right: 10px;
      padding-left: 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; } }

.path-personalize {
  overflow: hidden; }

.path-journey {
  background-color: #F9FBFB; }
  .path-journey #main-wrap .container {
    height: 100%;
    min-height: 100vh;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto 1fr auto;
    grid-template-areas: "header" "main" "footer"; }
    .path-journey #main-wrap .container > header {
      grid-area: header; }
    .path-journey #main-wrap .container > main,
    .path-journey #main-wrap .container > .dialog-off-canvas-main-canvas {
      grid-area: main;
      overflow: hidden; }
      .path-journey #main-wrap .container > main > main,
      .path-journey #main-wrap .container > .dialog-off-canvas-main-canvas > main {
        height: 100%; }
        .path-journey #main-wrap .container > main > main > #root,
        .path-journey #main-wrap .container > .dialog-off-canvas-main-canvas > main > #root {
          height: 100%; }
          .path-journey #main-wrap .container > main > main > #root > div,
          .path-journey #main-wrap .container > .dialog-off-canvas-main-canvas > main > #root > div {
            height: 100%; }
            .path-journey #main-wrap .container > main > main > #root > div > div,
            .path-journey #main-wrap .container > .dialog-off-canvas-main-canvas > main > #root > div > div {
              height: 100%; }
    .path-journey #main-wrap .container > footer {
      grid-area: footer; }

.path-journey .main-header-before {
  padding-top: 0; }

@media print, screen and (min-width: 64em) {
  .path-journey .main-header-inner {
    display: none; } }

.path-journey .main-header-before--left {
  justify-content: center; }

.path-journey .main-header-before-content {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  padding: 0.5rem; }
  @media print, screen and (min-width: 64em) {
    .path-journey .main-header-before-content {
      padding: 1rem; } }
  .path-journey .main-header-before-content .skip-btn {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%); }
    .path-journey .main-header-before-content .skip-btn a {
      font-size: 14px;
      color: #2C8A82;
      display: inline-block;
      position: relative; }
      .path-journey .main-header-before-content .skip-btn a:after {
        content: "";
        position: absolute;
        bottom: 1px;
        right: 0;
        width: 80%;
        height: 1px;
        background: #2C8A82; }
  .path-journey .main-header-before-content .return-btn {
    margin: 0;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%); }

.path-journey .personal-wrap .personal-message {
  max-width: 510px;
  text-align: center; }
  @media print, screen and (max-width: 39.99875em) {
    .path-journey .personal-wrap .personal-message {
      margin-top: 0; } }
  .path-journey .personal-wrap .personal-message h2 {
    font-size: 30px;
    line-height: 42px; }
    @media print, screen and (max-width: 39.99875em) {
      .path-journey .personal-wrap .personal-message h2 {
        font-size: 18px;
        line-height: 28px; } }

.path-journey .personal-wrap .action-btn {
  margin-top: auto; }
  .path-journey .personal-wrap .action-btn a {
    width: 263px; }

.path-journey .progress-container {
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
  margin-top: 30px;
  position: relative;
  width: 100%; }

.path-journey .progress-container:before {
  background-color: #707070;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  top: 50%;
  width: 100%;
  z-index: -1; }

.path-journey .progress {
  background-color: var(--line-border-color);
  height: 1px;
  left: 0;
  position: absolute;
  top: 58%;
  transform: translateY(-50%);
  transition: 0.4s ease;
  width: 0%;
  z-index: -1; }

.path-journey .progress-circle {
  background-color: #c3c3c3;
  border-radius: 50%;
  color: #ffffff;
  display: flex;
  height: 25px;
  justify-content: center;
  transition: 0.4s ease;
  width: 25px; }

.path-journey .progress-circle.active {
  background: #2C8A82;
  font-weight: 900; }

.path-journey .function-info {
  text-align: center; }
  .path-journey .function-info h3 {
    font-size: 24px;
    line-height: 32px;
    color: #2C8A82; }
    @media print, screen and (max-width: 39.99875em) {
      .path-journey .function-info h3 {
        font-size: 18px;
        line-height: 28px; } }
  .path-journey .function-info p {
    font-size: 15px;
    color: #4d4d4d; }

.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 {
        right: 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;
    right: 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-left: 15px;
    margin-left: 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: "Effra"; }
    .live-ticker .live-ticker-time span {
      margin-left: 5px; }

.live-blog .Caption a,
.live-blog .content a {
  color: #2C8A82; }

.live-blog .Caption .Vote,
.live-blog .content .Vote {
  margin-left: 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: 20px; }

.live-blog .entry-highlight {
  border-top: 1px solid #dcdfdf;
  padding-top: 30px;
  margin-bottom: 30px;
  font-weight: bold; }
  .live-blog .entry-highlight ul {
    margin-right: 0;
    margin-top: 0;
    margin-bottom: 0; }
  .live-blog .entry-highlight li {
    list-style: none;
    position: relative;
    padding-right: 15px; }
    .live-blog .entry-highlight li:before {
      content: "";
      position: absolute;
      right: 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: "Effra";
  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-left: 8px; }
  .liveblog-capsule span:first-child {
    text-transform: uppercase;
    margin-left: 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-left: 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-right: 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-family: "Effra";
    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: "Effra";
    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: "Effra";
        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-right: -1.5rem;
  width: 10px;
  height: 10px;
  background: #2C8A82; }

.liveblog .post-date time {
  padding-right: 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-right: 0; }

.liveblog .post-footer ul li {
  padding: 0 8px;
  font-family: "Effra";
  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;
  right: -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: "Effra";
  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-left: 10px;
    line-height: 1; }
  #live-list-update-button .icon-refresh {
    display: flex;
    margin-left: 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;
    right: 0;
    height: 100%; }
  .liveblog .pagination-wrapper .pagination {
    font-family: "Awsat Digital";
    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-left: auto; }
    .liveblog .pagination-wrapper .pagination .next {
      margin-right: 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 ------ */
/* ------- GAMES ------- START -------- */
@media print, screen and (max-width: 63.99875em) {
  .game-page header,
  .game-page footer,
  .game-page .header-tag-wrap,
  .game-page .page-indicator,
  .game-page .game-banner {
    display: none; } }

@media print, screen and (max-width: 63.99875em) {
  .game-page .games-entries {
    padding: 0; } }

@media print, screen and (max-width: 39.99875em) {
  .games-play iframe {
    height: calc(100vh - 58px); } }

@media print, screen and (max-width: 39.99875em) {
  .games-item {
    position: relative;
    padding-bottom: 1rem;
    margin-bottom: 1rem; } }

.games-grid .games-item {
  padding: 2.5rem;
  background: rgba(255, 255, 255, 0.4);
  padding: 2rem; }
  @media print, screen and (min-width: 64em) {
    .games-grid .games-item {
      padding: 3rem 10rem; } }

.path-frontpage .games-item {
  background: rgba(255, 255, 255, 0.4);
  padding: 2rem; }

.games-grid .article-item-meta {
  margin-top: 35px; }

.games-grid .article-item {
  margin-bottom: 14px; }

.games-grid .game-img img {
  width: 128px;
  aspect-ratio: auto; }

.game-img > a:hover:after {
  background-color: transparent !important; }

.games-grid .game-img {
  margin-bottom: 44px; }
  @media print, screen and (min-width: 64em) {
    .games-grid .game-img {
      margin-bottom: 50px; } }

.game-banner {
  padding: 1.5rem;
  color: #000000;
  margin-bottom: 1.5rem;
  display: flex;
  align-items: center; }
  @media print, screen and (max-width: 39.99875em) {
    .game-banner {
      justify-content: center; } }
  @media print, screen and (min-width: 64em) {
    .game-banner {
      height: 265px;
      overflow: hidden; } }
  .game-banner.style-1 {
    background-color: #f0652e; }
    @media print, screen and (min-width: 64em) {
      .game-banner.style-1 {
        padding: 2rem; } }
  .game-banner.style-2 {
    background-color: rgba(251, 253, 253, 0.4); }
    @media print, screen and (min-width: 64em) {
      .game-banner.style-2 {
        padding: 2rem; } }
  @media print, screen and (min-width: 64em) {
    .game-banner .game-img {
      margin-left: 2rem; } }
  .game-banner .game-img img {
    width: 127px; }
    @media print, screen and (min-width: 64em) {
      .game-banner .game-img img {
        width: 120px; } }

.game-title h1 {
  font-weight: bold;
  font-size: 55px;
  margin-bottom: 0; }

.game-title .level {
  color: #DF6D3F; }

@media print, screen and (min-width: 64em) {
  .games-list {
    border: 1px solid #D1D5D5; } }

.games-entries .page-category {
  margin-bottom: 1rem; }

@media print, screen and (max-width: 39.99875em) {
  .game-play h1 {
    font-size: 27px; }
  .game-play .game-img {
    margin-left: 1rem;
    flex-shrink: 0;
    order: 1; }
    .game-play .game-img img {
      width: 72px; }
  .game-play .game-title {
    order: 2; }
    .game-play .game-title span {
      font-size: 14px; }
  .game-play.games-banner {
    padding: 1rem; } }

.game-author-info {
  margin-top: 1rem; }

.game-list-item {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 1rem;
  position: relative; }
  @media print, screen and (min-width: 64em) {
    .game-list-item {
      padding: 1rem 2.5rem 1rem 0; } }
  .game-list-item:not(:last-child):after {
    position: absolute;
    bottom: 0;
    left: 0;
    content: "";
    background-color: #D1D5D5;
    height: 1px;
    width: 100%; }

.gamelist-item-info h2 {
  margin-bottom: 0;
  line-height: 1; }

.gamelist-item-img {
  margin-left: 1rem; }

.game-goto {
  padding: 2rem 3rem;
  color: #717171; }
  @media print, screen and (max-width: 39.99875em) {
    .game-goto {
      display: none; } }

.game-popup-modal {
  width: 100%;
  height: 100%;
  background-color: #E9F2EF; }
  .game-popup-modal .game-modal-body {
    padding: 15px; }
    @media print, screen and (max-width: 39.99875em) {
      .game-popup-modal .game-modal-body {
        padding: 0; }
        .game-popup-modal .game-modal-body iframe {
          height: calc(100vh - 57px) !important; } }

.game-modal-header,
.game-header {
  background-color: #ffffff;
  padding: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative; }
  .game-modal-header .return-btn,
  .game-header .return-btn {
    margin: 0;
    top: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    position: absolute;
    right: 0;
    padding: 0.8em; }
    .game-modal-header .return-btn i,
    .game-header .return-btn i {
      font-size: 14px;
      margin-left: 5px; }

.game-modal-title h3,
.game-header h3 {
  margin-bottom: 0; }

.game-modal-wrap {
  overflow: hidden;
  padding: 0; }
  .game-modal-wrap.is-visible .modal-transition {
    top: 0;
    transform: none; }

/* ------- GAMES ------- END -------- */
@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;
    left: -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: left;
      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-right: 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;
    left: -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;
    left: -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-right: 1.5rem;
      margin-bottom: 0;
      float: left;
      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;
      left: 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: "Effra"; }
  .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-left: 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-right: 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;
    right: 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-left: 1.5rem;
    background-color: transparent;
    border-top: transparent;
    border-right: transparent;
    border-left: 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;
    left: 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-left: 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-right: 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;
          right: -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-left: 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: "Effra";
  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-left: 1rem;
      padding-right: 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; }

.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-right: 5px;
      padding-right: 5px;
      font-size: 12px;
      position: relative; }
      .hero-main .entry-hightlight time:before {
        content: "";
        height: 10px;
        width: 1px;
        background-color: #929898;
        position: absolute;
        right: -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-left-above:before,
  .section-title.separator-left-above:before,
  .page-title.separator-left-above:before,
  .title.separator-left-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-right: 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-left: 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-left: 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-right: 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-left: 0; }

.media-object-section:last-child:not(:nth-child(2)) {
  padding-right: 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: left; }
      .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: left; }
      .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-left: 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-left: 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: "Effra";
    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-right: 1rem; }

.meta-area {
  line-height: 1;
  font-size: 0.75rem; }

.link-holder {
  font-size: 0.9375rem;
  margin: 0 0 0.5rem;
  font-family: "Effra"; }
  .link-holder a {
    color: #717171;
    display: flex;
    align-items: center;
    line-height: 1; }
  .link-holder i {
    font-size: 0.5rem;
    margin-right: 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: left;
      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-left: auto;
      margin-right: auto; } }
  .articles-list .article-item {
    margin-bottom: 1.5rem; }
    @media print, screen and (max-width: 39.99875em) {
      .articles-list .article-item {
        margin-left: auto;
        margin-right: 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;
    left: 0;
    right: 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;
    right: 0;
    width: 100px;
    margin-right: -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-left: 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: "Effra";
    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: "Effra";
  margin-left: 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: "Effra";
  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-left: 0.4rem;
    padding-left: 0.4rem; }
    .article-item-title .article-item-category:after {
      content: "";
      background-color: #2C8A82;
      width: 1.5px;
      height: 13px;
      position: absolute;
      top: 6px;
      left: 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-left: 0;
  margin-bottom: 1rem; }
  .article-item-highlight ul li {
    margin-bottom: 0.5rem;
    font-family: "Effra";
    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: "Effra"; }
  @media print, screen and (min-width: 64em) {
    .article-item-meta {
      margin-top: 1rem;
      margin-bottom: 0.25rem; } }
  .article-item-meta i {
    margin-left: 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-left: 1px solid #929898;
    margin-left: 0.5rem;
    padding-left: 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: "Effra";
  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;
  right: 10px;
  color: #ffffff;
  z-index: 1; }

.video-stamp.abs-el {
  position: absolute;
  bottom: 0;
  left: 0;
  color: #ffffff;
  background-color: rgba(37, 60, 58, 0.59);
  padding: 2px 5px;
  font-weight: bold;
  z-index: 1;
  font-family: "Awsat Digital"; }

.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-right: 0.35rem; }
  .media-label:hover {
    background-color: #2C8A82; }
  .article-item-meta .media-label {
    margin-right: 1rem; }

.media-label.abs-el {
  position: absolute;
  bottom: 0.75rem;
  left: 0.75rem;
  color: #ffffff; }
  .grid-items .media-label.abs-el,
  .object-item .media-label.abs-el {
    bottom: 0.6rem;
    left: 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;
    left: 2rem; }

.play-icon, .album-icon,
.abs-over-icon {
  position: absolute;
  font-size: 2rem;
  top: 0.5rem;
  left: 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;
      left: 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;
    left: 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;
    left: 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;
    left: 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-left: 3px; }
  .label.abs-el,
  .label-live.abs-el {
    background-color: #2C8A82;
    text-align: center;
    font-family: "Effra";
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
    padding: 7px 7px 5px; }
  .label.label-center,
  .label-live.label-center {
    right: initial;
    left: 50%;
    transform: translateX(-50%);
    margin: 0 auto; }
    [dir="ltr"] .label.label-center, [dir="ltr"]
    .label-live.label-center {
      right: 50%;
      left: initial; }
  .label.label-bottom,
  .label-live.label-bottom {
    bottom: 0;
    right: auto;
    left: 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-left: 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-left: 5px;
    display: inline-block; }
  .live-ticker-title .lottie-ico {
    width: 25px;
    margin-left: 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-right: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 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;
      left: 0;
      top: 0; }
  .breaking-news-area .close-button {
    color: #ffffff;
    left: 0;
    right: 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 {
      left: 0.5rem; }
      @media print, screen and (min-width: 64em) {
        .entry-media .slick-arrow.slick-next {
          left: 1.5rem; } }
    .entry-media .slick-arrow.slick-prev {
      right: 0.5rem; }
      @media print, screen and (min-width: 64em) {
        .entry-media .slick-arrow.slick-prev {
          right: 1.5rem; } }
    .entry-media .slick-arrow:hover.slick-prev:before {
      margin-left: 1rem;
      color: #2C8A82;
      transition: all 0.25s ease 0s; }
    .entry-media .slick-arrow:hover.slick-next:before {
      margin-right: 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-left: 40px;
    float: right;
    white-space: nowrap; }
    @media print, screen and (max-width: 39.99875em) {
      .entry-category a {
        margin-left: 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-left: 20px;
      font-weight: bold;
      color: #253C3A;
      font-family: "Awsat Digital";
      font-size: 1.125rem; }
      @media print, screen and (max-width: 39.99875em) {
        .entry-category a.sub-category {
          margin-left: 2rem; } }
      .entry-category a.sub-category:first-child:after {
        content: "\e902";
        left: 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-left: 20px;
  display: flex;
  align-items: center; }
  @media print, screen and (max-width: 39.99875em) {
    .page-category {
      margin-left: 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-left: 0;
    margin-right: 1rem;
    margin-bottom: 1rem;
    margin-top: 1rem; }
    .entry-highlight ul.red-bullets {
      margin-right: 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: "Effra"; }
    @media print, screen and (min-width: 64em) {
      .entry-highlight ul {
        margin-left: 1rem;
        margin-bottom: 2rem; } }
  .entry-highlight.breaking li a {
    color: #000000; }
  .entry-highlight.breaking time {
    color: #ce4242;
    border-right: 1px solid transparent;
    position: relative; }
    .entry-highlight.breaking time:before {
      content: "\e914";
      color: #000000;
      font-size: 4px;
      position: absolute;
      margin-top: 0;
      right: 0;
      top: 3px;
      margin-right: -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-left: 1px solid #D1D5D5; }

.entry-content {
  margin-bottom: 1rem;
  padding-bottom: 2rem;
  font-family: "Effra";
  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: inherit;
    font-size: inherit;
    line-height: inherit;
    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-right: 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;
      left: 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;
          left: 40px;
          width: 35px;
          height: 35px; } }
    .entry-content blockquote:not(.tiktok-embed):after {
      display: block;
      content: "";
      position: absolute;
      top: 0rem;
      right: 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;
          right: 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: "Effra"; }
        @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-right: 2rem; } }
  .entry-content p + h3,
  .entry-content p + h2 {
    font-family: "Effra";
    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-right: 0; }
    .entry-address ul li {
      list-style: none; }

@media print, screen and (min-width: 64em) {
  .entry-spotlight {
    border-right: 1px solid #D1D5D5;
    padding-right: 2rem; }
    .style-v1 .entry-spotlight {
      margin-right: -2rem; } }

.entry-spotlight h2 {
  font-family: "Effra";
  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-left: 1rem;
    display: inline-block;
    vertical-align: middle;
    line-height: 29px;
    font-weight: bold;
    font-size: 1.375rem; }
  .entry-tags .button {
    padding: 5px 10px;
    margin: 0 0 0.5rem 0.5rem;
    text-transform: uppercase;
    vertical-align: initial;
    font-size: 1.125rem; }
    @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: left;
    margin-left: 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: left;
    margin-left: 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: left;
    margin-left: 0.5rem; }
    .entry-share a:first-child {
      margin-left: 0; }
    .entry-share a i {
      font-size: 1.5rem; }
  @media print, screen and (min-width: 64em) {
    .entry-share a {
      margin-left: 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-left: 10px; }
  .entry-author a {
    position: relative;
    margin-left: 4px;
    padding-left: 0.5rem; }
    .entry-author a:not(:last-child):after {
      content: ",";
      position: absolute;
      bottom: 0;
      left: 0; }
  .entry-author ul {
    margin-right: 0;
    margin-bottom: 0;
    margin-left: 0.5rem; }
    .entry-author ul li {
      list-style: none;
      display: inline-block;
      margin-left: 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-right: 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-left: 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: left; } }

.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-left: 1rem; } }
  .entry-date span {
    display: block; }
  .entry-aside-meta .entry-date {
    font-size: 0.6875rem;
    font-family: "Effra";
    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-right: 0.5rem; }

.entry-aside-shares .entry-bookmark {
  margin-right: 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-right: 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-left: 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;
  left: 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-right: 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-left: 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-left: 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-left: 1px solid #f7fafa;
    margin-left: 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: "Effra"; }

.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-right: 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: "Effra"; }
  .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: right; } }
  @media print, screen and (max-width: 39.99875em) {
    .opinion-author.single .author-grid {
      position: relative;
      padding-right: 92px;
      width: 100%;
      min-height: 95px; } }
  @media print, screen and (max-width: 39.99875em) {
    .opinion-author.single .writer-check {
      margin-left: 0.5rem;
      position: absolute;
      right: 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-right: 7px; }
      .opinion-author.single .socials-block a {
        margin-right: 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: right; }
  .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: left; }
      .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 left, #000000 0%, #dcebe9 0%);
  width: 174px;
  height: 5px;
  bottom: unset;
  transform-origin: right top 0;
  border-radius: 20px; }
  [dir="ltr"] .slider-control input[type="range"] {
    background: linear-gradient(to left, #000000 0%, #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;
    left: 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-right: 0; }

.section-menu li {
  display: inline-block;
  padding: 0 1rem; }
  .section-menu li:first-child {
    padding-right: 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-right: 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: right;
  list-style: none;
  opacity: 0;
  visibility: hidden;
  padding: 0.25rem 0;
  position: absolute;
  width: 100%;
  margin-right: 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;
      left: 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-left: 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-left: 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-right: 1rem;
      min-width: 131px; } }
  .account-menu .user {
    padding-left: 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;
    left: 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;
        left: -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: right; }
      @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-left: 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: "Effra";
      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-left: 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-right: 3rem; }

.form-area label {
  color: #2C8A82;
  font-size: 16px;
  font-family: "Effra"; }

.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: "Effra" !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-left: -1.5rem; } }

.aside-bar {
  font-family: "Effra"; }
  @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%;
      left: 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-left: 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-left: 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: "Effra";
      font-size: inherit; }
      .aside-bar .menu-tabs > li > .button i {
        font-size: 20px;
        margin-left: 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-right: 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;
  right: 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;
    left: 16px;
    padding: 0.5rem 0;
    text-align: center;
    width: 20px;
    color: #9a9a9a; }
  .input-field .ico-show {
    position: absolute;
    right: 0;
    padding-top: 0.8rem;
    padding-right: 1.8rem;
    font-size: 11px;
    cursor: pointer; }
  .input-field.input-default {
    direction: rtl; }
    .input-field.input-default .ico-label {
      right: 16px; }
    .input-field.input-default .ico-show {
      left: 0;
      padding-left: 1.8rem; }
  .input-field .required {
    position: absolute;
    left: -1rem;
    margin-right: 0; }

.required {
  color: #2C8A82;
  margin-right: 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;
  left: 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: "Effra";
  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-left: 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-right: 0.5rem;
      display: inline-block; }
      .add-more i {
        font-size: 10px;
        margin-left: 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-left: 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-right: 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-left: 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: right;
      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: "Effra";
    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;
    left: 1rem; } }

.newsletter-item-action {
  margin-right: 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: "Effra"; }

.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-left: 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: "Effra"; }

.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-right: 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;
  left: 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;
  left: 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: "Effra";
  padding: 10px 20px;
  position: absolute;
  top: 1rem;
  left: 1rem; }
  @media print, screen and (max-width: 39.99875em) {
    .select-all {
      line-height: 0.2; } }
  .select-all i {
    font-size: 7px;
    margin-left: 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-left: 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: "Effra";
  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: "Effra";
    display: inline-block;
    color: rgba(255, 255, 255, 0.6); }

.weather-temperature {
  position: relative;
  font-weight: bold;
  font-size: 100px;
  margin-right: 3rem;
  direction: ltr;
  text-align: right;
  /* Small only */
  /* netbook only */ }
  @media screen and (max-width: 320px) {
    .weather-temperature {
      font-size: 80px;
      margin-right: 1rem; } }
  @media screen and (max-width: 1024px) {
    .weather-temperature {
      margin-right: 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: "Effra"; }

.weather-info-item {
  margin: 0.5rem;
  padding: 0.5rem;
  font-size: 18px;
  font-family: "Effra"; }
  .weather-info-item:not(:last-child) {
    border-bottom: 1px solid #D1D5D5; }

.weather-icon {
  margin-left: 1rem; }

/* ----- WEATHER WIDGET ------ END ------ */
/* ----- PODCAST BLOCK------ START ------ */
.sidebar-wrap .podcast-list p {
  font-size: 0.9375rem;
  font-family: "Effra"; }

.podcast-list .date-field,
.podcast-list .podcast-time {
  font-family: "Effra";
  color: #2C8A82; }
  .podcast-list .date-field i,
  .podcast-list .podcast-time i {
    font-size: 0.6875rem;
    margin-left: 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-right: 1rem;
    float: left;
    padding: 0 10px 0 0; }
    .block-content .podcast-time i {
      background-color: #f7fafa;
      border-radius: 50%;
      padding: 10px;
      margin-right: 1rem;
      margin-left: 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;
    left: 0;
    right: 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-left: 1rem;
  font-size: 15px;
  font-weight: bold; }
  .podcast-label i {
    margin-left: 0.5rem; }
  .podcast-label lottie-player {
    width: 22px;
    height: 19px;
    float: right;
    margin-left: 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: "Effra";
  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: "Effra";
  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-right: 0.5rem;
    padding-right: 0.5rem;
    display: inline-block;
    border-right: 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-left: 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;
      left: 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-left: 10px; }

.more-btn {
  margin: 2rem; }
  .more-btn .button {
    padding-left: 2rem;
    padding-right: 2rem; }

.page-btns {
  z-index: 1;
  margin: 0 auto; }
  .page-btns .entry-share-row.entry-bookmark {
    margin-right: 1rem;
    margin-left: 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: right;
  margin-right: 0;
  margin-left: 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-right: 0;
      padding-left: 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-left: 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-right: 0px !important; }
  .spotlight-carousel .slick-slide,
  .sm-carousel .slick-slide {
    margin-left: 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-left: 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-right: 0; }
  .category-tags li {
    list-style: none;
    margin-left: 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: "Effra";
    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-right: 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-left: 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 {
  right: 0;
  text-align: right;
  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 {
  left: 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-left: 35px; }
  @media print, screen and (min-width: 64em) {
    .author-tag {
      padding-left: 30px; } }
  .author-tag span {
    font-size: 12px;
    font-family: "Effra";
    white-space: nowrap; }
  .author-tag img {
    width: 33px;
    height: 33px;
    -o-object-fit: cover;
       object-fit: cover;
    border-radius: 50%;
    margin-left: 5px; }
    .owl-carousel .author-tag img {
      width: 33px;
      height: 33px; }

.c-tabs {
  border-bottom: 1px solid #d5dcdc;
  display: flex;
  margin-right: 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-left: 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: left; } }
  .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: "Effra"; }
  .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-left: 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: "Effra"; }
  @media print, screen and (min-width: 64em) {
    .video-section .video-item-share {
      margin-top: auto; } }
  .video-section .video-item-share i {
    margin-left: 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-left: -3.5rem; }
    .video-carousel .article-item {
      padding: 0 0.5rem; }
    .video-carousel .slick-list {
      padding-right: 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-left: -1rem;
      margin-right: -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;
    right: 0;
    left: 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-left: 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-left: -1rem;
    margin-right: -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-right: 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 {
    left: 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-right: 0;
    border-bottom: 2px solid #D1D5D5; }
    .page-tags > ul li {
      list-style: none;
      display: inline-block;
      margin-left: 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-left: 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-left: -1rem;
      margin-right: -1rem;
      padding-right: 1rem; } }
  .my-tags-menu ul {
    margin-right: 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-right: 5rem; } }
  .register-wide__btn {
    font-size: 15px;
    font-family: "Effra";
    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-right: 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-right: 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;
    left: 0;
    right: 0;
    bottom: 0;
    content: ""; }
  .ratio-container img {
    position: absolute;
    top: 0;
    left: 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-left: 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: "Effra";
      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: "Effra";
    padding-left: 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;
    left: 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-left-radius: 20px;
    border-bottom-left-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-right-radius: 20px;
    border-bottom-right-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: left; }
    .newsletter-area input[type="email"]:not(:-ms-input-placeholder) {
      text-align: left; }
    .newsletter-area input[type="email"]:not(:placeholder-shown) {
      text-align: left; }
    .newsletter-area input[type="email"]:-moz-placeholder-shown {
      text-align: right; }
    .newsletter-area input[type="email"]:-ms-input-placeholder {
      text-align: right; }
    .newsletter-area input[type="email"]:placeholder-shown {
      text-align: right; }
  .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: "Awsat Digital";
          font-size: 1rem;
          text-align: center; } }
  .newsletter-intro h6 {
    color: #000000;
    font-family: "Effra";
    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: left;
  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: left;
  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-left: 1.05em;
  text-align: left;
  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-left: 0.5rem; }
  @media print, screen and (min-width: 64em) {
    .main-header-before .socials-btns span {
      margin-left: 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--left: 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-right: 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;
      left: 50% !important;
      top: 20% !important;
      transform: translateX(-50%) !important;
      right: auto; } }
  .video-popup-modal .close-button,
  .video-popup-modal .modal-close {
    left: 50px;
    top: 35px;
    right: auto;
    margin: 0;
    padding: 0; }
    @media print, screen and (max-width: 39.99875em) {
      .video-popup-modal .close-button,
      .video-popup-modal .modal-close {
        left: 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;
      right: 50%;
      bottom: -5px;
      margin-right: -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: left;
      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;
      right: 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 -------- */
/* -------- Final say ---------------- End ------------------------*/
@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: right; }

.small-up-2 .column:last-child:last-child:last-child,
.small-up-2 .columns:last-child:last-child:last-child {
  float: right; }

.small-up-3 .column:last-child:last-child:last-child,
.small-up-3 .columns:last-child:last-child:last-child {
  float: right; }

.small-up-4 .column:last-child:last-child:last-child,
.small-up-4 .columns:last-child:last-child:last-child {
  float: right; }

.small-up-5 .column:last-child:last-child:last-child,
.small-up-5 .columns:last-child:last-child:last-child {
  float: right; }

.small-up-6 .column:last-child:last-child:last-child,
.small-up-6 .columns:last-child:last-child:last-child {
  float: right; }

.small-up-7 .column:last-child:last-child:last-child,
.small-up-7 .columns:last-child:last-child:last-child {
  float: right; }

.small-up-8 .column:last-child:last-child:last-child,
.small-up-8 .columns:last-child:last-child:last-child {
  float: right; }

@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: right; }
  .medium-up-2 .column:last-child:last-child:last-child,
  .medium-up-2 .columns:last-child:last-child:last-child {
    float: right; }
  .medium-up-3 .column:last-child:last-child:last-child,
  .medium-up-3 .columns:last-child:last-child:last-child {
    float: right; }
  .medium-up-4 .column:last-child:last-child:last-child,
  .medium-up-4 .columns:last-child:last-child:last-child {
    float: right; }
  .medium-up-5 .column:last-child:last-child:last-child,
  .medium-up-5 .columns:last-child:last-child:last-child {
    float: right; }
  .medium-up-6 .column:last-child:last-child:last-child,
  .medium-up-6 .columns:last-child:last-child:last-child {
    float: right; }
  .medium-up-7 .column:last-child:last-child:last-child,
  .medium-up-7 .columns:last-child:last-child:last-child {
    float: right; }
  .medium-up-8 .column:last-child:last-child:last-child,
  .medium-up-8 .columns:last-child:last-child:last-child {
    float: right; } }

@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: right; }
  .large-up-2 .column:last-child:last-child:last-child,
  .large-up-2 .columns:last-child:last-child:last-child {
    float: right; }
  .large-up-3 .column:last-child:last-child:last-child,
  .large-up-3 .columns:last-child:last-child:last-child {
    float: right; }
  .large-up-4 .column:last-child:last-child:last-child,
  .large-up-4 .columns:last-child:last-child:last-child {
    float: right; }
  .large-up-5 .column:last-child:last-child:last-child,
  .large-up-5 .columns:last-child:last-child:last-child {
    float: right; }
  .large-up-6 .column:last-child:last-child:last-child,
  .large-up-6 .columns:last-child:last-child:last-child {
    float: right; }
  .large-up-7 .column:last-child:last-child:last-child,
  .large-up-7 .columns:last-child:last-child:last-child {
    float: right; }
  .large-up-8 .column:last-child:last-child:last-child,
  .large-up-8 .columns:last-child:last-child:last-child {
    float: right; } }

@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: right; }
  .xlarge-up-2 .column:last-child:last-child:last-child,
  .xlarge-up-2 .columns:last-child:last-child:last-child {
    float: right; }
  .xlarge-up-3 .column:last-child:last-child:last-child,
  .xlarge-up-3 .columns:last-child:last-child:last-child {
    float: right; }
  .xlarge-up-4 .column:last-child:last-child:last-child,
  .xlarge-up-4 .columns:last-child:last-child:last-child {
    float: right; }
  .xlarge-up-5 .column:last-child:last-child:last-child,
  .xlarge-up-5 .columns:last-child:last-child:last-child {
    float: right; }
  .xlarge-up-6 .column:last-child:last-child:last-child,
  .xlarge-up-6 .columns:last-child:last-child:last-child {
    float: right; }
  .xlarge-up-7 .column:last-child:last-child:last-child,
  .xlarge-up-7 .columns:last-child:last-child:last-child {
    float: right; }
  .xlarge-up-8 .column:last-child:last-child:last-child,
  .xlarge-up-8 .columns:last-child:last-child:last-child {
    float: right; } }

@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-left: 1.25rem;
    padding-right: 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-left: auto;
  margin-right: 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;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw; }

@media print, screen and (max-width: 39.99875em) {
  .full-bg-sm, .newsletter-holder {
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCJnbG9iYWwvX3dlYmZvbnRzLnNjc3MiLCJnbG9iYWwvX2ljb21vb24uc2NzcyIsImdsb2JhbC9fdmFyaWFibGVzLnNjc3MiLCJfc2V0dGluZ3Muc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm91bmRhdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19icmVha3BvaW50LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3JldmVhbC5zY3NzIiwiZ2xvYmFsL190eXBvZ3JhcGh5LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX3VuaXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdmVuZG9yL25vcm1hbGl6ZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fdGV4dC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fY2hlY2tib3guc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2xhYmVsLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19oZWxwLXRleHQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19maWVsZHNldC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fc2VsZWN0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19lcnJvci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2hlbHBlcnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYWxpZ25tZW50LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX3ByaW50LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NsYXNzZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZ3V0dGVycy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19ncmlkLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NlbGwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWF0aC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19sYXlvdXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fY29sbGFwc2Uuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fcG9zaXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZnJhbWUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Nsb3NlLWJ1dHRvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19sYWJlbC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jYWxsb3V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lZGlhLW9iamVjdC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXNwb25zaXZlLWVtYmVkLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fY29sb3Iuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi1tZW51LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2ZsZXguc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fZmxleC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3Byb3RvdHlwZS9fZm9udC1zdHlsaW5nLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3Byb3RvdHlwZS9fc3BhY2luZy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9wcm90b3R5cGUvX3NlcGFyYXRvci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9wcm90b3R5cGUvX3Bvc2l0aW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3Byb3RvdHlwZS9fc2l6aW5nLnNjc3MiLCJ2ZW5kb3IvX3NsaWNrLnNjc3MiLCJ2ZW5kb3IvX2N1c3RvbVNjcm9sbC5zY3NzIiwidmVuZG9yL19vd2wuc2NzcyIsInZlbmRvci9fb3dsLXRoZW1lLnNjc3MiLCJjb21wb25lbnRzL19zbWFydGlja2VyLnNjc3MiLCJjb21wb25lbnRzL19oZWFkZXItdjMuc2NzcyIsImdsb2JhbC9fbWl4aW5zLnNjc3MiLCJjb21wb25lbnRzL19mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvX2FjbWV0aWNrZXIuc2NzcyIsImNvbXBvbmVudHMvX2F1ZGlvLXBsYXllci5zY3NzIiwiY29tcG9uZW50cy9fYWJvdXQuc2NzcyIsImNvbXBvbmVudHMvX3dyaXRlcnMuc2NzcyIsImNvbXBvbmVudHMvX2pvdXJuZXkuc2NzcyIsImNvbXBvbmVudHMvX2Nvb2tpZS5zY3NzIiwiY29tcG9uZW50cy9fbGl2ZS1ibG9nLnNjc3MiLCJjb21wb25lbnRzL19nYW1lLnNjc3MiLCJfZ3JpZHMuc2NzcyIsIl9jdXN0b20uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fZ3V0dGVyLnNjc3MiLCJnbG9iYWwvX2hlbHBlcnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcG9zaXRpb24uc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNHaEIsNEhBQVk7QUNEWjtFQUNFLHNCQUFzQztFQUN0QyxpTkFJbUc7RUFDbkcsbUJBQW1CO0VBQ25CLGtCQUFrQjtFQUNsQixtQkFBbUIsRUFBQTs7QUFHckI7RUFDRSwrRUFBQTtFQUNBLGlDQUFpRDtFQUNqRCxZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLG1CQUFtQjtFQUNuQixvQkFBb0I7RUFDcEIsb0JBQW9CO0VBQ3BCLGNBQWM7RUFFZCxzQ0FBQTtFQUNBLG1DQUFtQztFQUNuQyxrQ0FBa0MsRUFBQTs7QUFHcEM7RUFFSSxZQzVCUTtFRDZCUixXQUFXLEVBQUE7O0FBR2Y7RUFFSSxZQ2pDZTtFRGtDZixjQUFjLEVBQUE7O0FBR2xCO0VBRUksWUN0Q2M7RUR1Q2QsY0FBYyxFQUFBOztBQUdsQjtFQUVJLFlDM0NlO0VENENmLGNBQWMsRUFBQTs7QUFHbEI7RUFFSSxZQ2hEZ0I7RURpRGhCLGNBQWMsRUFBQTs7QUFHbEI7RUFFSSxZQ3JEUyxFQUFPOztBRHdEcEI7RUFFSSxZQ3pEUTtFRDBEUixXQUFXLEVBQUE7O0FBR2Y7RUFFSSxZQzlEZTtFRCtEZixjQUFjLEVBQUE7O0FBR2xCO0VBRUksWUNuRW9CO0VEb0VwQixjQUFjLEVBQUE7O0FBR2xCO0VBRUksWUN4RWtCO0VEeUVsQixjQUFjLEVBQUE7O0FBR2xCO0VBRUksWUM3RXVCLEVBQU87O0FEZ0ZsQztFQUVJLFlDakZZLEVBQU87O0FEb0Z2QjtFQUVJLFlDckZvQjtFRHNGcEIsV0FBVyxFQUFBOztBQUdmO0VBRUksWUMxRmUsRUFBTzs7QUQ2RjFCO0VBRUksWUM5RmU7RUQrRmYsY0FBYyxFQUFBOztBQUdsQjtFQUVJLFlDbkdpQixFQUFPOztBRHNHNUI7RUFFSSxZQ3ZHUTtFRHdHUixXQUFXLEVBQUE7O0FBR2Y7RUFFSSxZQzVHUTtFRDZHUixjQUFjLEVBQUE7O0FBR2xCO0VBRUksWUNqSFE7RURrSFIsY0FBYyxFQUFBOztBQUdsQjtFQUVJLFlDdEhZO0VEdUhaLFdBQVcsRUFBQTs7QUFHZjtFQUVJLFlDM0hZO0VENEhaLGNBQWMsRUFBQTs7QUFHbEI7RUFFSSxZQ2hJaUI7RURpSWpCLGNBQWMsRUFBQTs7QUFHbEI7RUFFSSxZQ3JJaUIsRUFBTzs7QUR3STVCO0VBRUksWUN6SVU7RUQwSVYsY0FBYyxFQUFBOztBQUdsQjtFQUVJLFlDOUlTO0VEK0lULGNBQWMsRUFBQTs7QUFHbEI7RUFFSSxZQ25KVTtFRG9KVixjQUFjLEVBQUE7O0FBR2xCO0VBRUksWUN4SmlCO0VEeUpqQixjQUFjLEVBQUE7O0FBR2xCO0VBRUksWUM3Slk7RUQ4SlosV0FBVyxFQUFBOztBQUdmO0VBRUksWUNsS1E7RURtS1IsY0FBYyxFQUFBOztBQUdsQjtFQUVJLFlDdktPO0VEd0tQLGNBQWMsRUFBQTs7QUFHbEI7RUFFSSxZQzVLUSxFQUFPOztBRCtLbkI7RUFFSSxZQ2hMYztFRGlMZCxjQUFjLEVBQUE7O0FBR2xCO0VBRUksWUNyTFcsRUFBTzs7QUR3THRCO0VBRUksWUN6TFM7RUQwTFQsV0FBVyxFQUFBOztBQUdmO0VBRUksWUM5THFCLEVBQU87O0FEaU1oQztFQUVJLFlDbE1RO0VEbU1SLGNBQWMsRUFBQTs7QUFHbEI7RUFFSSxZQ3ZNWTtFRHdNWixjQUFjLEVBQUE7O0FBR2xCO0VBRUksWUM1TVE7RUQ2TVIsV0FBVyxFQUFBOztBQUdmO0VBRUksWUNqTlUsRUFBTzs7QURvTnJCO0VBRUksWUNyTlk7RURzTlosY0FBYyxFQUFBOztBQUdsQjtFQUVJLFlDMU5TLEVBQU87O0FENk5wQjtFQUVJLFlDOU5hLEVBQU87O0FEaU94QjtFQUVJLFlDbE9VLEVBQU87O0FEcU9yQjtFQUVJLFlDdE9TLEVBQU87O0FEeU9wQjtFQUVJLFlDMU9VLEVBQU87O0FENk9yQjtFQUVJLFlDOU9VLEVBQU87O0FEaVByQjtFQUVJLFlDbFBRLEVBQU87O0FEcVBuQjtFQUVJLFlDdFBVLEVBQU87O0FEeVByQjtFQUVJLFlDMVBRLEVBQU87O0FENlBuQjtFQUVJLFlDOVBjLEVBQU87O0FEaVF6QjtFQUVJLFlDbFFRLEVBQU87O0FEcVFuQjtFQUVJLFlDdFFXLEVBQU87O0FEeVF0QjtFQUVJLFlDMVFhLEVBQU87O0FENlF4QjtFQUVJLFlDOVFPLEVBQU87O0FEaVJsQjtFQUVJLFlDbFJRLEVBQU87O0FEcVJuQjtFQUVJLFlDdFJZLEVBQU87O0FEeVJ2QjtFQUVJLFlDMVJhLEVBQU87O0FENlJ4QjtFQUVJLFlDOVJhLEVBQU87O0FEaVN4QjtFQUVJLFlDbFNhLEVBQU87O0FEcVN4QjtFQUVJLFlDdFNTLEVBQU87O0FEeVNwQjtFQUVJLFlDMVNRLEVBQU87O0FENlNuQjtFQUVJLFlDOVNVLEVBQU87O0FEaVRyQjtFQUVJLFlDbFRTLEVBQU87O0FEcVRwQjtFQUVJLFlDdFRTLEVBQU87O0FEeVRw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Y2hCdUNVLEVBQUE7RWdCeENaO0lBQ0UsY2hCdUNVLEVBQUE7O0FnQmJaO0VBQ0UsY2hCWVUsRUFBQTs7QWdCUGQ7RUF6QkEsYUFBYTtFQUNiLG1CQUFnQztFQUNoQyxtQlhvQzhEO0VXbEM5RCxrQlhrQzhEO0VXakM5RCxpQmhCbUd1QjtFZ0JsR3ZCLGNoQjBCYyxFQUFBO0VnQlBkO0lBSUksY0FBYyxFQUFBOztBQzhJbEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFtQkUsU0FBUztFQUNULFVBQVUsRUFBQTs7QWJoTmQ7RWFxTkksbUJqQmlCMEI7RWlCZjFCLGtCQUFrQjtFQUNsQixnQmpCYXNCO0VpQlp0QixrQ2pCY3lDLEVBQUE7O0FpQlYzQzs7RUFFRSxrQkFBa0I7RUFDbEIsb0JBQW9CLEVBQUE7O0FBSXRCOztFQUVFLGlCakI3R3FCO0VpQjhHckIsb0JBQW9CLEVBQUE7O0FYckx0QjtFVzBMRSxjakJUaUI7RWlCVWpCLG9CQUFvQixFQUFBOztBQUl0Qjs7Ozs7O0VBTUUsa0ZqQmpEb0Y7RWlCa0RwRixrQmpCaERzQjtFaUJpRHRCLG1CakJqSXlCO0VpQmtJekIsY2pCaERrQjtFaUJpRGxCLGtDakJ6QnNDLEVBQUE7RWlCZXhDOzs7Ozs7SUFhSSxjQUFjO0lBQ2QsY2pCdExlLEVBQUE7O0FpQitMYjtFQUlJLGVack5vRDtFWWlPcEQsZ0JqQjdFVztFaUJxRlgsYUFBYTtFQU9iLHFCakIzRmlCLEVBQUE7O0FpQjREckI7RUFJSSxtQlpyTm9EO0VZaU9wRCxnQmpCN0VXO0VpQnFGWCxhQUFhO0VBT2IscUJqQjNGaUIsRUFBQTs7QWlCNERyQjtFQUlJLG1CWnJOb0Q7RVlpT3BELGdCakI3RVc7RWlCcUZYLGFBQWE7RUFPYixxQmpCM0ZpQixFQUFBOztBaUI0RHJCO0VBSUksZVpyTm9EO0VZaU9wRCxnQmpCN0VXO0VpQnFGWCxhQUFhO0VBT2IscUJqQjNGaUIsRUFBQTs7QWlCNERyQjtFQUlJLG9CWnJOb0Q7RVlpT3BELGdCakI3RVc7RWlCcUZYLGFBQWE7RUFPYixxQmpCM0ZpQixFQUFBOztBaUI0RHJCO0VBSUksbUJack5vRDtFWWlPcEQsZ0JqQjdFVztFaUJxRlgsYUFBYTtFQU9iLHFCakIzRmlCLEVBQUE7O0FFaEVyQjtFZTRIQTtJQUlJLG1CWnJOb0QsRUFBQTtFWWlOeEQ7SUFJSSxtQlpyTm9ELEVBQUE7RVlpTnhEO0lBSUksbUJack5vRCxFQUFBO0VZaU54RDtJQUlJLGVack5vRCxFQUFBO0VZaU54RDtJQUlJLG9CWnJOb0QsRUFBQTtFWWlOeEQ7SUFJSSxtQlpyTm9ELEVBQUEsRVlrUHZEOztBWHRSUDtFVzZSRSxvQkFBb0I7RUFDcEIsY2pCN09XO0VpQjhPWCxxQmpCdkV5QjtFaUJ5RXpCLGVBQWUsRUFBQTtFQUxqQjtJQVNJLGNqQjNRWSxFQUFBO0VpQmtRaEI7SUFnQkksU0FBUyxFQUFBOztBWC9UYjtFV3FVRSxXQUFXO0VBRVgsa0JaaFI0RDtFWWlSNUQsU0FBUztFQUNULG9CakIxRnlCO0VpQjRGekIsYUFBYTtFQUNiLGVBQWU7RUFDZixnQ2pCcFFpQjtFaUJxUWpCLGNBQWMsRUFBQTs7QUFJaEI7OztFQUdFLG1CakIvRzBCO0VpQmdIMUIsNEJqQm5HeUI7RWlCb0d6QixnQmpCbEhzQixFQUFBOztBaUJzSHhCO0VBQ0Usa0JBQWtCLEVBQUE7O0FBSXBCO0VBQ0UscUJqQjdHc0I7RWlCOEd0QixxQmpCaEhrQixFQUFBOztBaUJvSHBCO0VBQ0UscUJqQm5Ic0IsRUFBQTs7QWlCdUh4QjtFQUVJLHFCakJ4SDJCO0VpQnlIM0IsZ0JBQWdCLEVBQUE7O0FBS3BCO0VBQ0UsbUJqQjlIeUIsRUFBQTtFaUI2SDNCO0lBSUkscUJqQi9IOEI7SWlCZ0k5QixpQmpCL1BtQixFQUFBOztBaUJvUXZCO0VBQ0UsZ0JqQnhKMEI7RWlCeUoxQixzQ1p4VTREO0VZeVU1RCwrQmpCdlRpQixFQUFBO0VpQm9UbkI7SUFNSSxnQmpCOUpvQjtJaUIrSnBCLGNqQjFUYSxFQUFBOztBaUJ3VWpCO0VBQ0UsaUNqQi9VVztFaUJnVlgsWUFBWTtFQUNaLHFCQUFxQixFQUFBOztBQUl2QjtFQUNFLFNBQVMsRUFBQTs7QUFX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RixXQ25CZ0UsRUFBQTs7QXZCa0M1RDtFbUI1R0Y7SUdrREosV0FBTTtJQTJDSixXQWxGWSxFQUFBO0VITlo7SUc2Q0YsY0FBTSxFQUFBO0VIdkNGO0lHa0ZGLFdBbEZZLEVBQUE7RUhTVjtJR3lFRixlQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsZ0JDbkJnRSxFQUFBO0VKdEQ5RDtJR3lFRixVQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsZ0JDbkJnRSxFQUFBO0VKdEQ5RDtJR3lFRixnQkNuQmdFLEVBQUE7RUp0RDlEO0lHeUVGLFVDbkJnRSxFQUFBO0VKdEQ5RDtJR3lFRixnQkNuQmdFLEVBQUE7RUp0RDlEO0lHeUVGLGdCQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsVUNuQmdFLEVBQUE7RUp0RDlEO0lHeUVGLGdCQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsZ0JDbkJnRSxFQUFBO0VKdEQ5RDtJR3lFRixXQ25CZ0UsRUFBQSxFSm5EN0Q7O0FuQnFGQztFbUI1R0Y7SUdrREosV0FBTTtJQTJDSixXQWxGWSxFQUFBO0VITlo7SUc2Q0YsY0FBTSxFQUFBO0VIdkNGO0lHa0ZGLFdBbEZZLEVBQUE7RUhTVjtJR3lFRixlQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsZ0JDbkJnRSxFQUFBO0VKdEQ5RDtJR3lFRixVQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsZ0JDbkJnRSxFQUFBO0VKdEQ5RDtJR3lFRixnQkNuQmdFLEVBQUE7RUp0RDlEO0lHeUVGLFVDbkJnRSxFQUFBO0VKdEQ5RDtJR3lFRixnQkNuQmdFLEVBQUE7RUp0RDlEO0lHeUVGLGdCQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsVUNuQmdFLEVBQUE7RUp0RDlEO0lHeUVGLGdCQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsZ0JDbkJnRSxFQUFBO0VKdEQ5RDtJR3lFRixXQ25CZ0UsRUFBQSxFSm5EN0Q7O0FuQjBGQztFbUJqSEY7SUdrREosV0FBTTtJQTJDSixXQWxGWSxFQUFBO0VITlo7SUc2Q0YsY0FBTSxFQUFBO0VIdkNGO0lHa0ZGLFdBbEZZLEVBQUE7RUhTVjtJR3lFRixlQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsZ0JDbkJnRSxFQUFBO0VKdEQ5RDtJR3lFRixVQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsZ0JDbkJnRSxFQUFBO0VKdEQ5RDtJR3lFRixnQkNuQmdFLEVBQUE7RUp0RDlEO0lHeUVGLFVDbkJnRSxFQUFBO0VKdEQ5RDtJR3lFRixnQkNuQmdFLEVBQUE7RUp0RDlEO0lHeUVGLGdCQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsVUNuQmdFLEVBQUE7RUp0RDlEO0lHeUVGLGdCQ25CZ0UsRUFBQTtFSnREOUQ7SUd5RUYsZ0JDbkJnRSxFQUFBO0VKdEQ5RDtJR3lFRixXQ25CZ0UsRUFBQSxFSm5EN0Q7O0FBS0w7RUFDRSxXQUFXLEVBQUE7O0FBSWI7RUFDRSxZQUFZLEVBQUE7O0FBOEJkO0VDdkdNLHNCQUE2RDtFQUE3RCx1QkFBNkQsRUFBQTtFcEJtSjdEO0ltQjVDTjtNQ3ZHTSx3QkFBNkQ7TUFBN0QseUJBQTZELEVBQUEsRURzSWxFO0VBL0JEO0lHNkJFLDJCQXREOEY7SUZyRTVGLHFCQUE2RDtJQUE3RCxzQkFBNkQsRUFBQTtFcEIwSTNEO0ltQjVDTjtNRzZCRSw2QkF0RDhGO01GckU1Rix1QkFBNkQ7TUFBN0Qsd0JBQTZELEVBQUEsRUQyRzFEO0VBckNQO0lHcURFLFdBbEZZLEVBQUE7RUhpQ2Q7SUdpREUsV0FsRlksRUFBQTtFSHlDWjtJR3lDQSwrQkF0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsZ0NBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDBCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxnQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsZ0NBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDBCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxnQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsZ0NBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDBCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxnQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsZ0NBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDJCQXREOEYsRUFBQTtFdEJxRTFGO0ltQnBFTjtNR3FERSxXQWxGWSxFQUFBO0lIaUNkO01HaURFLFdBbEZZLEVBQUE7SUh5Q1o7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhDaEc7TUdxREUsV0FsRlksRUFBQTtJSGlDZDtNR2lERSxXQWxGWSxFQUFBO0lIeUNaO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNkJBdEQ4RixFQUFBLEVIZTdGO0VuQnNERztJbUJwRU47TUdxREUsV0FsRlksRUFBQTtJSGlDZDtNR2lERSxXQWxGWSxFQUFBO0lIeUNaO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNkJBdEQ4RixFQUFBLEVIZTdGO0VuQjJERztJbUJ6RU47TUdxREUsV0FsRlksRUFBQTtJSGlDZDtNR2lERSxXQWxGWSxFQUFBO0lIeUNaO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNkJBdEQ4RixFQUFBLEVIZTdGOztBQThDSDtFQzNJTSx1QkFBNkQ7RUFBN0Qsc0JBQTZELEVBQUE7RXBCbUo3RDtJbUJSTjtNQzNJTSx5QkFBNkQ7TUFBN0Qsd0JBQTZELEVBQUEsRURnSmhFOztBQUlEO0VDcEpJLHVCQUE2RDtFQUE3RCxzQkFBNkQsRUFBQTtFcEJtSjdEO0ltQkNKO01DcEpJLHlCQUE2RDtNQUE3RCx3QkFBNkQsRUFBQSxFRHNKaEU7O0FBWEg7RUMzSU0sdUJBQTZEO0VBQTdELHNCQUE2RCxFQUFBO0VwQm1KN0Q7SW1CUk47TUMzSU0seUJBQTZEO01BQTdELHdCQUE2RCxFQUFBLEVEMkpoRTs7QUszSkg7RUZvSUUsV0NuQmdFLEVBQUE7O0FDakhsRTtFRm9JRSxVQ25CZ0UsRUFBQTs7QUNqSGxFO0VGb0lFLGdCQ25CZ0UsRUFBQTs7QUNqSGxFO0VGb0lFLFVDbkJnRSxFQUFBOztBQ2pIbEU7RUZvSUUsVUNuQmdFLEVBQUE7O0FDakhsRTtFRm9JRSxnQkNuQmdFLEVBQUE7O0FDakhsRTtFRm9JRSxnQkNuQmdFLEVBQUE7O0FDakhsRTtFRm9JRSxZQ25CZ0UsRUFBQTs7QXZCa0M1RDtFd0JuSk47SUZvSUUsV0NuQmdFLEVBQUE7RUNqSGxFO0lGb0lFLFVDbkJnRSxFQUFBO0VDakhsRTtJRm9JRSxnQkNuQmdFLEVBQUE7RUNqSGxFO0lGb0lFLFVDbkJnRSxFQUFBO0VDakhsRTtJRm9JRSxVQ25CZ0UsRUFBQTtFQ2pIbEU7SUZvSUUsZ0JDbkJnRSxFQUFBO0VDakhsRTtJRm9JRSxnQkNuQmdFLEVBQUE7RUNqSGxFO0lGb0lFLFlDbkJnRSxFQUFBLEVDL0dqRTs7QXhCaUpLO0V3Qm5KTjtJRm9JRSxXQ25CZ0UsRUFBQTtFQ2pIbEU7SUZvSUUsVUNuQmdFLEVBQUE7RUNqSGxFO0lGb0lFLGdCQ25CZ0UsRUFBQTtFQ2pIbEU7SUZvSUUsVUNuQmdFLEVBQUE7RUNqSGxFO0lGb0lFLFVDbkJnRSxFQUFBO0VDakhsRTtJRm9JRSxnQkNuQmdFLEVBQUE7RUNqSGxFO0lGb0lFLGdCQ25CZ0UsRUFBQTtFQ2pIbEU7SUZvSUUsWUNuQmdFLEVBQUEsRUMvR2pFOztBeEJzSks7RXdCeEpOO0lGb0lFLFdDbkJnRSxFQUFBO0VDakhsRTtJRm9JRSxVQ25CZ0UsRUFBQTtFQ2pIbEU7SUZvSUUsZ0JDbkJnRSxFQUFBO0VDakhsRTtJRm9JRSxVQ25CZ0UsRUFBQTtFQ2pIbEU7SUZvSUUsVUNuQmdFLEVBQUE7RUNqSGxFO0lGb0lFLGdCQ25CZ0UsRUFBQTtFQ2pIbEU7SUZvSUUsZ0JDbkJnRSxFQUFBO0VDakhsRTtJRm9JRSxZQ25CZ0UsRUFBQSxFQy9HakU7O0FBRkQ7RUZvSUUsMkJBdEQ4RixFQUFBOztBRTlFaEc7RUZvSUUsMEJBdEQ4RixFQUFBOztBRTlFaEc7RUZvSUUsZ0NBdEQ4RixFQUFBOztBRTlFaEc7RUZvSUUsMEJBdEQ4RixFQUFBOztBRTlFaEc7RUZvSUUsMEJBdEQ4RixFQUFBOztBRTlFaEc7RUZvSUUsZ0NBdEQ4RixFQUFBOztBRTlFaEc7RUZvSUUsZ0NBdEQ4RixFQUFBOztBRTlFaEc7RUZvSUUsNEJBdEQ4RixFQUFBOztBdEJxRTFGO0V3Qm5KTjtJRm9JRSw2QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDRCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsa0NBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSw0QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDRCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsa0NBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSxrQ0F0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDhCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsNkJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSw0QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLGtDQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsNEJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSw0QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLGtDQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsa0NBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSw4QkF0RDhGLEVBQUEsRUU1RS9GOztBeEJpSks7RXdCbkpOO0lGb0lFLDZCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsNEJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSxrQ0F0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDRCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsNEJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSxrQ0F0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLGtDQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsOEJBdEQ4RixFQUFBLEVFNUUvRjs7QXhCc0pLO0V3QnhKTjtJRm9JRSw2QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDRCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsa0NBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSw0QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDRCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsa0NBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSxrQ0F0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDhCQXREOEYsRUFBQSxFRTVFL0Y7O0FMcU1HO0VNOU1FLGVBQTBCO0VBQTFCLGNBQTBCLEVBQUE7RUFHNUI7SUFFSSxlQUEwQjtJQUExQixjQUEwQixFQUFBO0VBc0J4QjtJSGdIUixlQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixVQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLFVDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsVUNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixXQ25CZ0UsRUFBQTtFdkJrQzVEO0l5Qi9ISTtNSGdIUixlQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsZ0JDbkJnRSxFQUFBO0lFN0Z4RDtNSGdIUixVQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsZ0JDbkJnRSxFQUFBO0lFN0Z4RDtNSGdIUixnQkNuQmdFLEVBQUE7SUU3RnhEO01IZ0hSLFVDbkJnRSxFQUFBO0lFN0Z4RDtNSGdIUixnQkNuQmdFLEVBQUE7SUU3RnhEO01IZ0hSLGdCQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsVUNuQmdFLEVBQUE7SUU3RnhEO01IZ0hSLGdCQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsZ0JDbkJnRSxFQUFBO0lFN0Z4RDtNSGdIUixXQ25CZ0UsRUFBQSxFRTNGdkQ7RXpCNkhMO0l5Qi9ISTtNSGdIUixlQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsZ0JDbkJnRSxFQUFBO0lFN0Z4RDtNSGdIUixVQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsZ0JDbkJnRSxFQUFBO0lFN0Z4RDtNSGdIUixnQkNuQmdFLEVBQUE7SUU3RnhEO01IZ0hSLFVDbkJnRSxFQUFBO0lFN0Z4RDtNSGdIUixnQkNuQmdFLEVBQUE7SUU3RnhEO01IZ0hSLGdCQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsVUNuQmdFLEVBQUE7SUU3RnhEO01IZ0hSLGdCQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsZ0JDbkJnRSxFQUFBO0lFN0Z4RDtNSGdIUixXQ25CZ0UsRUFBQSxFRTNGdkQ7RXpCa0lMO0l5QnBJSTtNSGdIUixlQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsZ0JDbkJnRSxFQUFBO0lFN0Z4RDtNSGdIUixVQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsZ0JDbkJnRSxFQUFBO0lFN0Z4RDtNSGdIUixnQkNuQmdFLEVBQUE7SUU3RnhEO01IZ0hSLFVDbkJnRSxFQUFBO0lFN0Z4RDtNSGdIUixnQkNuQmdFLEVBQUE7SUU3RnhEO01IZ0hSLGdCQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsVUNuQmdFLEVBQUE7SUU3RnhEO01IZ0hSLGdCQ25CZ0UsRUFBQTtJRTdGeEQ7TUhnSFIsZ0JDbkJnRSxFQUFBO0lFN0Z4RDtNSGdIUixXQ25CZ0UsRUFBQSxFRTNGdkQ7O0FOdUxQO0VNN0tFLGVBQTBCO0VBQTFCLGNBQTBCLEVBQUE7RUFHNUI7SUFFSSxnQkFBNEI7SUFBNUIsZUFBNEIsRUFBQTs7QXpCOEc5QjtFbUJvREY7SU05TUUsZUFBMEI7SUFBMUIsY0FBMEIsRUFBQTtJQUc1QjtNQUVJLGVBQTBCO01BQTFCLGNBQTBCLEVBQUEsRUFFN0I7O0F6Qm1KQztFeUJ4SUk7SUh5SFIsZUNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsVUNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixVQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLFVDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsV0NuQmdFLEVBQUEsRUVwR3ZEOztBekJzSUw7RXlCL0hJO0lIZ0hSLGVDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLFVDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsVUNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixVQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLFdDbkJnRSxFQUFBLEVFM0Z2RDs7QXpCNkhMO0V5Qi9ISTtJSGdIUixlQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixVQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLFVDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsVUNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixXQ25CZ0UsRUFBQSxFRTNGdkQ7O0F6QmtJTDtFeUJwSUk7SUhnSFIsZUNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsVUNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixVQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLFVDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsV0NuQmdFLEVBQUEsRUUzRnZEOztBekI2SEw7RW1CMERGO0lNN0tFLGVBQTBCO0lBQTFCLGNBQTBCLEVBQUE7SUFHNUI7TUFFSSxnQkFBNEI7TUFBNUIsZUFBNEIsRUFBQSxFQUUvQjs7QXpCNEdDO0VtQm9ERjtJTTlNRSxlQUEwQjtJQUExQixjQUEwQixFQUFBO0lBRzVCO01BRUksZUFBMEI7TUFBMUIsY0FBMEIsRUFBQSxFQUU3Qjs7QXpCbUpDO0V5QnhJSTtJSHlIUixlQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixVQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLFVDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsVUNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixXQ25CZ0UsRUFBQSxFRXBHdkQ7O0F6QnNJTDtFeUJ4SUk7SUh5SFIsZUNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsVUNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixVQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLFVDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsV0NuQmdFLEVBQUEsRUVwR3ZEOztBekJzSUw7RXlCL0hJO0lIZ0hSLGVDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLFVDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsVUNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixVQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLFdDbkJnRSxFQUFBLEVFM0Z2RDs7QXpCa0lMO0V5QnBJSTtJSGdIUixlQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixVQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLFVDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsVUNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixXQ25CZ0UsRUFBQSxFRTNGdkQ7O0F6QjZITDtFbUIwREY7SU03S0UsZUFBMEI7SUFBMUIsY0FBMEIsRUFBQTtJQUc1QjtNQUVJLGdCQUE0QjtNQUE1QixlQUE0QixFQUFBLEVBRS9COztBekJpSEM7RW1CK0NGO0lNOU1FLGVBQTBCO0lBQTFCLGNBQTBCLEVBQUE7SUFHNUI7TUFFSSxlQUEwQjtNQUExQixjQUEwQixFQUFBLEVBRTdCOztBekJ3SkM7RXlCN0lJO0lIeUhSLGVDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLFVDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsVUNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixVQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLFdDbkJnRSxFQUFBLEVFcEd2RDs7QXpCMklMO0V5QjdJSTtJSHlIUixlQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixVQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLFVDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsVUNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixXQ25CZ0UsRUFBQSxFRXBHdkQ7O0F6QjJJTDtFeUI3SUk7SUh5SFIsZUNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsVUNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixVQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsZ0JDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLFVDbkJnRSxFQUFBO0VFdEd4RDtJSHlIUixnQkNuQmdFLEVBQUE7RUV0R3hEO0lIeUhSLGdCQ25CZ0UsRUFBQTtFRXRHeEQ7SUh5SFIsV0NuQmdFLEVBQUEsRUVwR3ZEOztBekIySUw7RXlCcElJO0lIZ0hSLGVDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLFVDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsVUNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLGdCQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixVQ25CZ0UsRUFBQTtFRTdGeEQ7SUhnSFIsZ0JDbkJnRSxFQUFBO0VFN0Z4RDtJSGdIUixnQkNuQmdFLEVBQUE7RUU3RnhEO0lIZ0hSLFdDbkJnRSxFQUFBLEVFM0Z2RDs7QXpCa0lMO0VtQnFERjtJTTdLRSxlQUEwQjtJQUExQixjQUEwQixFQUFBO0lBRzVCO01BRUksZ0JBQTRCO01BQTVCLGVBQTRCLEVBQUEsRUFFL0I7O0FOb0xEO0VPdk1GLGdCQUE2QixFQUFBOztBUDJNM0I7RU8zTUYsb0NBQTZCLEVBQUE7O0FQdU0zQjtFT3ZNRixzQkFBNkIsRUFBQTs7QVAyTTNCO0VPM01GLDBDQUE2QixFQUFBOztBUHVNM0I7RU92TUYsdUJBQTZCLEVBQUE7O0FQMk0zQjtFTzNNRiwyQ0FBNkIsRUFBQTs7QVB1TTNCO0VPdk1GLGlCQUE2QixFQUFBOztBUDJNM0I7RU8zTUYscUNBQTZCLEVBQUE7O0FQdU0zQjtFT3ZNRix1QkFBNkIsRUFBQTs7QVAyTTNCO0VPM01GLDJDQUE2QixFQUFBOztBUHVNM0I7RU92TUYsdUJBQTZCLEVBQUE7O0FQMk0zQjtFTzNNRiwyQ0FBNkIsRUFBQTs7QVB1TTNCO0VPdk1GLGlCQUE2QixFQUFBOztBUDJNM0I7RU8zTUYscUNBQTZCLEVBQUE7O0FQdU0zQjtFT3ZNRix1QkFBNkIsRUFBQTs7QVAyTTNCO0VPM01GLDJDQUE2QixFQUFBOztBUHVNM0I7RU92TUYsdUJBQTZCLEVBQUE7O0FQMk0zQjtFTzNNRiwyQ0FBNkIsRUFBQTs7QVB1TTNCO0VPdk1GLGlCQUE2QixFQUFBOztBUDJNM0I7RU8zTUYscUNBQTZCLEVBQUE7O0FQdU0zQjtFT3ZNRix1QkFBNkIsRUFBQTs7QVAyTTNCO0VPM01GLDJDQUE2QixFQUFBOztBUHVNM0I7RU92TUYsdUJBQTZCLEVBQUE7O0FQMk0zQjtFTzNNRiwyQ0FBNkIsRUFBQTs7QTFCK0h6QjtFbUJ3RUY7SU92TUYsZ0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHNDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsNENBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHVCQUE2QixFQUFBO0VQMk0zQjtJTzNNRiw2Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsaUJBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHVDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRix1QkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsNkNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHVCQUE2QixFQUFBO0VQMk0zQjtJTzNNRiw2Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsaUJBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHVDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRix1QkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsNkNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHVCQUE2QixFQUFBO0VQMk0zQjtJTzNNRiw2Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsaUJBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHVDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRix1QkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsNkNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHVCQUE2QixFQUFBO0VQMk0zQjtJTzNNRiw2Q0FBNkIsRUFBQSxFUDZNMUI7O0FuQjlFQztFbUJ3RUY7SU92TUYsZ0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHNDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsNENBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHVCQUE2QixFQUFBO0VQMk0zQjtJTzNNRiw2Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsaUJBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHVDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRix1QkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsNkNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHVCQUE2QixFQUFBO0VQMk0zQjtJTzNNRiw2Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsaUJBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHVDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRix1QkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsNkNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHVCQUE2QixFQUFBO0VQMk0zQjtJTzNNRiw2Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsaUJBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHVDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRix1QkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsNkNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHVCQUE2QixFQUFBO0VQMk0zQjtJTzNNRiw2Q0FBNkIsRUFBQSxFUDZNMUI7O0FuQnpFQztFbUJtRUY7SU92TUYsZ0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHNDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsNENBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHVCQUE2QixFQUFBO0VQMk0zQjtJTzNNRiw2Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsaUJBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHVDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRix1QkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsNkNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHVCQUE2QixFQUFBO0VQMk0zQjtJTzNNRiw2Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsaUJBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHVDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRix1QkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsNkNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHVCQUE2QixFQUFBO0VQMk0zQjtJTzNNRiw2Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsaUJBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHVDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRix1QkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsNkNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHVCQUE2QixFQUFBO0VQMk0zQjtJTzNNRiw2Q0FBNkIsRUFBQSxFUDZNMUI7O0FBekpTO0VFdEVkLGFBQWE7RUFDYix3QkFINkIsRUFBQTtFRmlQN0I7SUcxSUEsWUFBbUI7SUFDbkIsZ0JBQTJCLEVBQUE7RUh5STNCO0lHN0dFLFlBbEZZLEVBQUE7RUgrTGQ7SUc3R0UsWUFsRlksRUFBQTtFSCtMZDtJQTJCTSxnQkFBZ0IsRUFBQTtFbkJ6SGhCO0ltQjhGTjtNQTJCTSxnQkFBZ0IsRUFBQSxFQUNqQjtFbkIxSEM7SW1COEZOO01BMkJNLGdCQUFnQixFQUFBLEVBQ2pCO0VuQnJIQztJbUJ5Rk47TUEyQk0sZ0JBQWdCLEVBQUEsRUFDakI7RUE1Qkw7SUd4SkEsY0FBTSxFQUFBO0VId0pOO0lHN0dFLGdCQ25CZ0UsRUFBQTtFSmdJbEU7SUc3R0UsaUJDbkJnRSxFQUFBO0VKZ0lsRTtJRzdHRSxXQ25CZ0UsRUFBQTtFSmdJbEU7SUc3R0UsaUJDbkJnRSxFQUFBO0VKZ0lsRTtJRzdHRSxpQkNuQmdFLEVBQUE7RUpnSWxFO0lHN0dFLFdDbkJnRSxFQUFBO0VKZ0lsRTtJRzdHRSxpQkNuQmdFLEVBQUE7RUpnSWxFO0lHN0dFLGlCQ25CZ0UsRUFBQTtFSmdJbEU7SUc3R0UsV0NuQmdFLEVBQUE7RUpnSWxFO0lHN0dFLGlCQ25CZ0UsRUFBQTtFSmdJbEU7SUc3R0UsaUJDbkJnRSxFQUFBO0VKZ0lsRTtJRzdHRSxZQ25CZ0UsRUFBQTtFdkJrQzVEO0ltQjhGTjtNR3hKQSxXQUFNO01BMkNKLFlBbEZZLEVBQUE7SUgrTGQ7TUd4SkEsY0FBTSxFQUFBO0lId0pOO01HN0dFLFlBbEZZLEVBQUE7SUgrTGQ7TUc3R0UsZ0JDbkJnRSxFQUFBO0lKZ0lsRTtNRzdHRSxpQkNuQmdFLEVBQUE7SUpnSWxFO01HN0dFLFdDbkJnRSxFQUFBO0lKZ0lsRTtNRzdHRSxpQkNuQmdFLEVBQUE7SUpnSWxFO01HN0dFLGlCQ25CZ0UsRUFBQTtJSmdJbEU7TUc3R0UsV0NuQmdFLEVBQUE7SUpnSWxFO01HN0dFLGlCQ25CZ0UsRUFBQTtJSmdJbEU7TUc3R0UsaUJDbkJnRSxFQUFBO0lKZ0lsRTtNRzdHRSxXQ25CZ0UsRUFBQTtJSmdJbEU7TUc3R0UsaUJDbkJnRSxFQUFBO0lKZ0lsRTtNRzdHRSxpQkNuQmdFLEVBQUE7SUpnSWxFO01HN0dFLFlDbkJnRSxFQUFBLEVKeUwzRDtFbkJ2SkQ7SW1COEZOO01HeEpBLFdBQU07TUEyQ0osWUFsRlksRUFBQTtJSCtMZDtNR3hKQSxjQUFNLEVBQUE7SUh3Sk47TUc3R0UsWUFsRlksRUFBQTtJSCtMZDtNRzdHRSxnQkNuQmdFLEVBQUE7SUpnSWxFO01HN0dFLGlCQ25CZ0UsRUFBQTtJSmdJbEU7TUc3R0UsV0NuQmdFLEVBQUE7SUpnSWxFO01HN0dFLGlCQ25CZ0UsRUFBQTtJSmdJbEU7TUc3R0UsaUJDbkJnRSxFQUFBO0lKZ0lsRTtNRzdHRSxXQ25CZ0UsRUFBQTtJSmdJbEU7TUc3R0UsaUJDbkJnRSxFQUFBO0lKZ0lsRTtNRzdHRSxpQkNuQmdFLEVBQUE7SUpnSWxFO01HN0dFLFdDbkJnRSxFQUFBO0lKZ0lsRTtNRzdHRSxpQkNuQmdFLEVBQUE7SUpnSWxFO01HN0dFLGlCQ25CZ0UsRUFBQTtJSmdJbEU7TUc3R0UsWUNuQmdFLEVBQUEsRUp5TDNEO0VuQmxKRDtJbUJ5Rk47TUd4SkEsV0FBTTtNQTJDSixZQWxGWSxFQUFBO0lIK0xkO01HeEpBLGNBQU0sRUFBQTtJSHdKTjtNRzdHRSxZQWxGWSxFQUFBO0lIK0xkO01HN0dFLGdCQ25CZ0UsRUFBQTtJSmdJbEU7TUc3R0UsaUJDbkJnRSxFQUFBO0lKZ0lsRTtNRzdHRSxXQ25CZ0UsRUFBQTtJSmdJbEU7TUc3R0UsaUJDbkJnRSxFQUFBO0lKZ0lsRTtNRzdHRSxpQkNuQmdFLEVBQUE7SUpnSWxFO01HN0dFLFdDbkJnRSxFQUFBO0lKZ0lsRTtNRzdHRSxpQkNuQmdFLEVBQUE7SUpnSWxFO01HN0dFLGlCQ25CZ0UsRUFBQTtJSmdJbEU7TUc3R0UsV0NuQmdFLEVBQUE7SUpnSWxFO01HN0dFLGlCQ25CZ0UsRUFBQTtJSmdJbEU7TUc3R0UsaUJDbkJnRSxFQUFBO0lKZ0lsRTtNRzdHRSxZQ25CZ0UsRUFBQSxFSnlMM0Q7O0FBT0w7RUNqVEkscUJBQTZEO0VBQTdELHdCQUE2RCxFQUFBO0VwQm1KN0Q7SW1COEpKO01DalRJLHVCQUE2RDtNQUE3RCwwQkFBNkQsRUFBQSxFRHFUOUQ7O0FBSkg7RUNqVEkscUJBQTZEO0VBQTdELHdCQUE2RCxFQUFBO0VwQm1KN0Q7SW1COEpKO01DalRJLHVCQUE2RDtNQUE3RCwwQkFBNkQsRUFBQSxFRDBUOUQ7O0FBbk5MO0VDdkdNLHFCQUE2RDtFQUE3RCx3QkFBNkQsRUFBQTtFcEJtSjdEO0ltQjVDTjtNQ3ZHTSx1QkFBNkQ7TUFBN0QsMEJBQTZELEVBQUEsRURzSWxFO0VBL0JEO0lHNkJFLDRCQXREOEY7SUZyRTVGLG9CQUE2RDtJQUE3RCx1QkFBNkQsRUFBQTtFcEIwSTNEO0ltQjVDTjtNRzZCRSw4QkF0RDhGO01GckU1RixzQkFBNkQ7TUFBN0QseUJBQTZELEVBQUEsRUQyRzFEO0VBckNQO0lHcURFLFlBbEZZLEVBQUE7RUhpQ2Q7SUdpREUsWUFsRlksRUFBQTtFSHlDWjtJR3lDQSxnQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDJCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDJCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDJCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsaUNBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLDRCQXREOEYsRUFBQTtFdEJxRTFGO0ltQnBFTjtNR3FERSxZQWxGWSxFQUFBO0lIaUNkO01HaURFLFlBbEZZLEVBQUE7SUh5Q1o7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw4QkF0RDhGLEVBQUE7SUhDaEc7TUdxREUsWUFsRlksRUFBQTtJSGlDZDtNR2lERSxZQWxGWSxFQUFBO0lIeUNaO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNkJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNkJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNkJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsOEJBdEQ4RixFQUFBLEVIZTdGO0VuQnNERztJbUJwRU47TUdxREUsWUFsRlksRUFBQTtJSGlDZDtNR2lERSxZQWxGWSxFQUFBO0lIeUNaO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNkJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYs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QTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMkJBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMkJBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMkJBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsNEJBdEQ4RixFQUFBO0V0QnFFMUY7SW1CcEVOO01HcURFLFlBbEZZLEVBQUE7SUhpQ2Q7TUdpREUsWUFsRlksRUFBQTtJSHlDWjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDZCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDZCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDZCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDhCQXREOEYsRUFBQTtJSENoRztNR3FERSxZQWxGWSxFQUFBO0lIaUNkO01HaURFLFlBbEZZLEVBQUE7SUh5Q1o7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw4QkF0RDhGLEVBQUEsRUhlN0Y7RW5Cc0RHO0ltQnBFTjtNR3FERSxZQWxGWSxFQUFBO0lIaUNkO01HaURFLFlBbEZZLEVBQUE7SUh5Q1o7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw4QkF0RDhGLEVBQUEsRUhlN0Y7RW5CMkRHO0ltQnpFTjtNR3FERSxZQWxGWSxFQUFBO0lIaUNkO01HaURFLFlBbEZZLEVBQUE7SUh5Q1o7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw4QkF0RDhGLEVBQUEsRUhlN0Y7O0FBa1REO0VRMVlJLDZCQUFtQyxFQUFBO0UzQjhJbkM7SW1CNFBKO01RMVlJLCtCQUFtQyxFQUFBLEVSNFl0QztFbkI5UEc7SW1CNFBKO01RMVlJLCtCQUFtQyxFQUFBLEVSNFl0QztFbkJ6UEc7SW1CdVBKO01RMVlJLCtCQUFtQyxFQUFBLEVSNFl0Qzs7QW5COVBHO0VtQmdRRjtJUTlZRSwrQkFBbUMsRUFBQSxFUmdacEM7O0FuQmxRQztFbUJnUUY7SVE5WUUsK0JBQW1DLEVBQUEsRVJnWnBDOztBbkI3UEM7RW1CMlBGO0lROVlFLCtCQUFtQyxFQUFBLEVSZ1pwQzs7QVN6R0w7RUExT0EscUJBQXFCO0VBQ3JCLHNCQUFzQjtFQUN0QixrQjlCeVNrQztFOEIvUmhDLG1COUI4UnVCO0U4QjNSekIsNkI5Qm1TbUM7RThCbFNuQyxnQjlCK0NlO0U4QjlDZixpRTlCNlN1RTtFOEI1U3ZFLG9COUJzUjBCO0U4QnJSMUIsaUI5Qm9TZTtFOEJsU2Ysd0JBQXdCO0VBQ3hCLGNBQWM7RUFDZCxrQkFBa0I7RUFDbEIsZUFBZSxFQUFBO0VsQ3c3RmY7SVl4MkZFLFVBQVUsRUFBQTtFc0JrSVo7SUFNTSxpQjlCcUVNLEVBQUE7RThCM0VaO0lBTU0sa0I5QnNFUSxFQUFBO0U4QjVFZDtJQU1NLGtCOUJ3RVEsRUFBQTtFOEI5RWQ7SUEzTUUsY0FBYztJQUNkLFdBQVc7SUFDWCxlQUFlO0lBQ2YsY0FBYyxFQUFBO0VBaUVoQjtJQUlFLHlCOUJySGM7SThCc0hkLGM5QjNHVyxFQUFBO0U4QjhHYjtJQUNFLHlCOUJrTXVFO0k4QmpNdkUsYzlCaEhXLEVBQUE7RThCc0diO0lBSUUseUI5QnJIYztJOEJzSGQsYzlCL0ZXLEVBQUE7RThCa0diO0lBQ0UseUJBYm9GO0lBY3BGLGM5QnBHVyxFQUFBO0U4QjBGYjtJQUlFLHlCOUJwSGdCO0k4QnFIaEIsYzlCL0ZXLEVBQUE7RThCa0diO0lBQ0UseUJBYm9GO0lBY3BGLGM5QnBHVyxFQUFBO0U4QjBGYjtJQUlFLHlCOUJuSGM7SThCb0hkLGM5Qi9GVyxFQUFBO0U4QmtHYjtJQUNFLHlCQWJvRjtJQWNwRixjOUJwR1csRUFBQTtFOEIwRmI7SUFJRSx5QjlCbEhjO0k4Qm1IZCxjOUIvRlcsRUFBQTtFOEJrR2I7SUFDRSx5QkFib0Y7SUFjcEYsYzlCcEdX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O0FEK0UzQztFQzFCRiwyQkFwRGdELEVBQUE7O0FEOEU5QztFQzFCRix1QkFuRGtCLEVBQUE7O0FEd0ZoQjtFQ3BDRix1QkExQ2lCLEVBQUE7O0FEa0ZmO0VDeEJGLHNCQTFEaUIsRUFBQTs7QUQ4RWY7RUNwQ0YscUJBekNrQixFQUFBOztBRGlGaEI7RUN4QkYsb0JBekRrQixFQUFBOztBRDZFaEI7RUNwQ0YsbUJBeENnQixFQUFBOztBRGdGZDtFQ3hCRixrQkF4RGdCLEVBQUE7O0FENEVkO0VDcENGLG9CQXZDa0IsRUFBQTs7QUQrRWhCO0VDeEJGLG1CQXZEa0IsRUFBQTs7QURxRmxCO0VDL0NBLHVCQW5Ea0I7RUFvRGxCLG1CQXhDZ0I7RUR3RmQscUJBQXFCLEVBQUE7O0FBTW5CO0VDaENKLFFEK0JnQixFQUFBOztBQUNaO0VDaENKLFFEK0JnQixFQUFBOztBQUNaO0VDaENKLFFEK0JnQixFQUFBOztBQUNaO0VDaENKLFFEK0JnQixFQUFBOztBQUNaO0VDaENKLFFEK0JnQixFQUFBOztBQUNaO0VDaENKLFFEK0JnQixFQUFBOztBMUNzRVY7RTBDckVGO0lDaENKLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osUUQrQmdCLEVBQUE7RUFDWjtJQ2hDSixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osUUQrQmdCLEVBQUE7RUFDWjtJQ2hDSixRRCtCZ0IsRUFBQSxFQUdYOztBMUNtRUM7RTBDckVGO0lDaENKLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osUUQrQmdCLEVBQUE7RUFDWjtJQ2hDSixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osUUQrQmdCLEVBQUE7RUFDWjtJQ2hDSixRRCtCZ0IsRUFBQSxFQUdYOztBMUN3RUM7RTBDMUVGO0lDaENKLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osUUQrQmdCLEVBQUE7RUFDWjtJQ2hDSixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osUUQrQmdCLEVBQUE7RUFD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ckI7RUFFUSxhQUFhLEVBQUE7O0FBR3JCO0VBRVEsYUFBYSxFQUFBOztBQUdyQjtFQUVRLGFBQWEsRUFBQTs7QUFJckI7RUFFUSxhQUFhLEVBQUE7O0FBR3JCO0VBRVEsYUFBYSxFQUFBOztBQUlyQjs7RUFJWSxhQUFhLEVBQUE7O0FBSXpCOztFQUdRLGFBQWEsRUFBQTs7QXJFMUliO0VxRThJUjs7SUFJWSxhQUFhLEVBQUEsRUFDaEI7O0FBR1Q7RUFFUSx3QkFBd0IsRUFBQTs7QUFHaEM7RUFFUSxhQUFhLEVBQUE7O0FyRTdKYjtFcUVnS1I7SUFHWSxhQUFhLEVBQUEsRUFDaEI7O0FBR1Q7RUFFUSxhQUFhLEVBQUE7O0FBR3JCO0VBRVEsd0JBQXdCLEVBQUE7O0FBMURoQztFQStEUSxhQUFhLEVBQUE7O0FBSXJCO0VBQ0ksZ0JBQWdCLEVBQUE7RUFEcEI7SUFNUSwwQkFBMEIsRUFDd0I7RUFQMUQ7SUFZWSxzQkFBc0IsRUFBQTs7QUFLbEM7RUFFSSxrQ0FBQTtFQUNBLHdCQUF3QjtFQUN4Qix3Q0FBQTtFQUNBLHFCQUFxQjtFQUNyQixnQkFBZ0I7RUFHaEIsU0FBUyxFQUFBIiwiZmlsZSI6ImFwcC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG5AaW1wb3J0IHVybChcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9Um9ib3RvK1NlcmlmOm9wc3osd2dodEA4Li4xNDQsNDAwOzguLjE0NCw3MDA7OC4uMTQ0LDgwMCZkaXNwbGF5PXN3YXBcIik7XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ljb21vb24ud29mZjI/dnM1XCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9pY29tb29uLnR0Zj92czVcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL2ljb21vb24ud29mZj92czVcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvaWNvbW9vbi5zdmc/djUjaWNvbW9vblwiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBibG9jazsgfVxuXG4uaWNvbW9vbi1pY29uIHtcbiAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiICFpbXBvcnRhbnQ7XG4gIHNwZWFrOiBuZXZlcjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuLmljb24tbGl2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6lgFwiO1xuICBjb2xvcjogI2YwMDsgfVxuXG4uaWNvbi1jaGVjay1ncmVlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kvFwiO1xuICBjb2xvcjogIzJjOGE4MjsgfVxuXG4uaWNvbi1wbHVzLWdyZWVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qS7XCI7XG4gIGNvbG9yOiAjMmM4YTgyOyB9XG5cbi5pY29uLXBsYXktY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qS5XCI7XG4gIGNvbG9yOiAjZjJmMmYyOyB9XG5cbi5pY29uLWhvbGxvdy1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ksVwiO1xuICBjb2xvcjogIzkyOTg5ODsgfVxuXG4uaWNvbi1lYXJ0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6lk1wiOyB9XG5cbi5pY29uLWNvcHk6YmVmb3JlIHtcbiAgY29udGVudDogXCLupZFcIjtcbiAgY29sb3I6ICNmZmY7IH1cblxuLmljb24tZ3JlZW4tY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLupLJcIjtcbiAgY29sb3I6ICMyYzhhODI7IH1cblxuLmljb24tZmFjZWJvb2stY29sb3JlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kuFwiO1xuICBjb2xvcjogIzE4NzdmMjsgfVxuXG4uaWNvbi1ib29rbWFyay1ncmVlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kvVwiO1xuICBjb2xvcjogIzJjOGE4MjsgfVxuXG4uaWNvbi11c2VyLWNpcmNsZS1vLWJsYWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qS/XCI7IH1cblxuLmljb24tc2lnbi1vdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupYhcIjsgfVxuXG4uaWNvbi1ib29rbWFyay1vdXRsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qWKXCI7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbi5pY29uLWFycm93LWxlZnQzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qWPXCI7IH1cblxuLmljb24tYXJyb3ctbGVmdDQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupZBcIjtcbiAgY29sb3I6ICNlZmVjZTI7IH1cblxuLmljb24tYXBwbGUtY29sb3JlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kvlwiOyB9XG5cbi5pY29uLW5ld3M6YmVmb3JlIHtcbiAgY29udGVudDogXCLupYJcIjtcbiAgY29sb3I6ICNmZmY7IH1cblxuLmljb24tZXllMTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6lg1wiO1xuICBjb2xvcjogIzlhOWE5YTsgfVxuXG4uaWNvbi1sb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qWEXCI7XG4gIGNvbG9yOiAjOWE5YTlhOyB9XG5cbi5pY29uLWVudmVsb3AxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qWGXCI7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbi5pY29uLWVudmVsb3AyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qWHXCI7XG4gIGNvbG9yOiAjOWE5YTlhOyB9XG5cbi5pY29uLWVudmVsb3AtZ3JlZW46YmVmb3JlIHtcbiAgY29udGVudDogXCLupYlcIjtcbiAgY29sb3I6ICMyYzhhODI7IH1cblxuLmljb24tZHJhZy12ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kt1wiOyB9XG5cbi5pY29uLXNoYXJlMjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ktlwiO1xuICBjb2xvcjogIzJjOGE4MjsgfVxuXG4uaWNvbi1zaGFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kp1wiO1xuICBjb2xvcjogIzRkNGQ0ZDsgfVxuXG4uaWNvbi11cGxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupYFcIjtcbiAgY29sb3I6ICM0ZDRkNGQ7IH1cblxuLmljb24tdXNlci1jaXJjbGUtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kulwiO1xuICBjb2xvcjogI2Y3ZmFmYTsgfVxuXG4uaWNvbi1maWxlLXBkZjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ktVwiO1xuICBjb2xvcjogI2ZmZjsgfVxuXG4uaWNvbi1kYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSmXCI7XG4gIGNvbG9yOiAjYWZhZmFmOyB9XG5cbi5pY29uLWV5ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kqFwiO1xuICBjb2xvcjogI2FmYWZhZjsgfVxuXG4uaWNvbi1wbGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSpXCI7IH1cblxuLmljb24tcGxheS1ncmVlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kpVwiO1xuICBjb2xvcjogIzJjOGE4MjsgfVxuXG4uaWNvbi1hcmNoaXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qWOXCI7IH1cblxuLmljb24tYWxidW06YmVmb3JlIHtcbiAgY29udGVudDogXCLupYVcIjtcbiAgY29sb3I6ICNmZmY7IH1cblxuLmljb24tYXJyb3ctcmlnaHQtYmxhY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLupKRcIjsgfVxuXG4uaWNvbi1lZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qWSXCI7XG4gIGNvbG9yOiAjMmM4YTgyOyB9XG5cbi5pY29uLWNhbGVuZGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qShXCI7XG4gIGNvbG9yOiAjYWZhZmFmOyB9XG5cbi5pY29uLW1lbnU6YmVmb3JlIHtcbiAgY29udGVudDogXCLupKJcIjtcbiAgY29sb3I6ICNmZmY7IH1cblxuLmljb24tdGlrdG9rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qWUXCI7IH1cblxuLmljb24tdGVsZWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLupIFcIjtcbiAgY29sb3I6ICMyY2E1ZTA7IH1cblxuLmljb24tcGF1c2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLupKNcIjsgfVxuXG4uaWNvbi1pbnN0YWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLupJ9cIjsgfVxuXG4uaWNvbi1zZWFyY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIBcIjsgfVxuXG4uaWNvbi1wcmludDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6li1wiOyB9XG5cbi5pY29uLXByaW50MTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ljFwiOyB9XG5cbi5pY29uLXByaW50MjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ljVwiOyB9XG5cbi5pY29uLXdpbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupKpcIjsgfVxuXG4uaWNvbi1jbG91ZHk6YmVmb3JlIHtcbiAgY29udGVudDogXCLupKtcIjsgfVxuXG4uaWNvbi1yYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSsXCI7IH1cblxuLmljb24tbGlnaHRuaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6krVwiOyB9XG5cbi5pY29uLXNub3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLupK9cIjsgfVxuXG4uaWNvbi13ZWF0aGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSPXCI7IH1cblxuLmljb24tZmlsZS1wZGYxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qS0XCI7IH1cblxuLmljb24tbWljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSzXCI7IH1cblxuLmljb24tZmlyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6koFwiOyB9XG5cbi5pY29uLWJvb2ttYXJrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSuXCI7IH1cblxuLmljb24tYm9va21hcmsxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSwXCI7IH1cblxuLmljb24taGVhZHBob25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSeXCI7IH1cblxuLmljb24tY2FsZW5kYXIxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSVXCI7IH1cblxuLmljb24tdGltZTE6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJhcIjsgfVxuXG4uaWNvbi10aW1lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSZXCI7IH1cblxuLmljb24tY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSUXCI7IH1cblxuLmljb24tY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJNcIjsgfVxuXG4uaWNvbi1tZW51MTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kkFwiOyB9XG5cbi5pY29uLXF1b3Rlcy1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSRXCI7IH1cblxuLmljb24tcXVvdGVzLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSSXCI7IH1cblxuLmljb24tYXJyb3ctcmlnaHQxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSaXCI7IH1cblxuLmljb24tYXJyb3ctZG93bjE6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJtcIjsgfVxuXG4uaWNvbi1hcnJvdy1sZWZ0MTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6knFwiOyB9XG5cbi5pY29uLWFycm93LXVwMTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6knVwiOyB9XG5cbi5pY29uLWFycm93LWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIJcIjsgfVxuXG4uaWNvbi1hcnJvdy1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kg1wiOyB9XG5cbi5pY29uLWFycm93LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSXXCI7IH1cblxuLmljb24tYXJyb3ctZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kllwiOyB9XG5cbi5pY29uLXZvbHVtZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6khFwiOyB9XG5cbi5pY29uLXBob3RvczpiZWZvcmUge1xuICBjb250ZW50OiBcIu6khVwiOyB9XG5cbi5pY29uLXBsYXkxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSGXCI7IH1cblxuLmljb24tc2VhcmNoMTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kh1wiOyB9XG5cbi5pY29uLXRlbGVncmFtMTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kiFwiOyB9XG5cbi5pY29uLXdoYXRzYXBwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSJXCI7IH1cblxuLmljb24teW91dHViZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ki1wiOyB9XG5cbi5pY29uLWxpbmtlZGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSKXCI7IH1cblxuLmljb24tZmFjZWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIxcIjsgfVxuXG4uaWNvbi1mYWNlYm9vazE6YmVmb3JlIHtcbiAgY29udGVudDogXCLupI1cIjsgfVxuXG4uaWNvbi10d2l0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSOXCI7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQXdzYXQgRGlnaXRhbCc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvQXdzYXREaWdpdGFsLUJvbGQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL0F3c2F0RGlnaXRhbC1Cb2xkLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvQXdzYXREaWdpdGFsLUJvbGQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQXdzYXQgRGlnaXRhbCc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvQXdzYXREaWdpdGFsLVJlZ3VsYXIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL0F3c2F0RGlnaXRhbC1SZWd1bGFyLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvQXdzYXREaWdpdGFsLVJlZ3VsYXIudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogc3dhcDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdBd3NhdCBEaWdpdGFsJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9Bd3NhdERpZ2l0YWwtQmxhY2sud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL0F3c2F0RGlnaXRhbC1CbGFjay53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL0F3c2F0RGlnaXRhbC1CbGFjay50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJFZmZyYVwiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0VmZnJhLVJlZ3VsYXIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL0VmZnJhLVJlZ3VsYXIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogc3dhcDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiQmVpcnV0XCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvQmVpcnV0LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9CZWlydXQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICBmb250LXdlaWdodDogMTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogc3dhcDsgfVxuXG4vKm9rKi9cbi8qZW5kIG9rKi9cbi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXNcbiAqIFZlcnNpb24gNi43LjRcbiAqIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucmV2ZWFsLCAucmV2ZWFsLnRpbnksIC5yZXZlYWwuc21hbGwsIC5yZXZlYWwubGFyZ2Uge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luOiAwIGF1dG87IH0gfVxuXG4udXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG5cbi5jYXBpdGFsaXplIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cblxuLmdyYXktZm9udC1jb2xvciB7XG4gIGNvbG9yOiAjNzE3MTcxOyB9XG4gIC5ncmF5LWZvbnQtY29sb3IgYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgICAuZ3JheS1mb250LWNvbG9yIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICMyQzhBODI7IH1cblxuLnByaW1hcnktZm9udC1jb2xvciB7XG4gIGNvbG9yOiAjMkM4QTgyOyB9XG5cbi5mb250LXNlY29uZGFyeS1ib2xkIHtcbiAgZm9udC1mYW1pbHk6IFwiRWZmcmFcIjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLmZvbnQtc2VtaWJvbGQge1xuICBmb250LXdlaWdodDogNjAwOyB9XG5cbnAge1xuICBmb250LWZhbWlseTogXCJFZmZyYVwiOyB9XG5cbmgzIHtcbiAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuXG4uZnQtc3otMTQge1xuICBmb250LXNpemU6IDAuODc1cmVtOyB9XG4gIC5hcnRpY2xlLWl0ZW0tY29udGVudCAuZnQtc3otMTQge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjk7IH1cblxuLmZ0LXN6LTE1IHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07IH1cblxuLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IH1cblxuYm9keSB7XG4gIG1hcmdpbjogMDsgfVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTsgfVxuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAwO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IH1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7IH1cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtOyB9XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7IH1cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07IH1cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lOyB9XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICBtYXJnaW46IDA7IH1cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyB9XG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwOyB9XG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0OyB9XG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtOyB9XG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyB9XG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAwOyB9XG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IH1cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICBmb250OiBpbmhlcml0OyB9XG5cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyB9XG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuW2RhdGEtd2hhdGludGVudD1cIm1vdXNlXCJdICosIFtkYXRhLXdoYXRpbnRlbnQ9XCJtb3VzZVwiXSAqOmZvY3VzLFxuW2RhdGEtd2hhdGludGVudD1cInRvdWNoXCJdICosXG5bZGF0YS13aGF0aW50ZW50PVwidG91Y2hcIl0gKjpmb2N1cyxcbltkYXRhLXdoYXRpbnB1dD1cIm1vdXNlXCJdICosXG5bZGF0YS13aGF0aW5wdXQ9XCJtb3VzZVwiXSAqOmZvY3VzLFxuW2RhdGEtd2hhdGlucHV0PVwidG91Y2hcIl0gKixcbltkYXRhLXdoYXRpbnB1dD1cInRvdWNoXCJdICo6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lOyB9XG5cbltkcmFnZ2FibGU9ZmFsc2VdIHtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lOyB9XG5cbi5mb3VuZGF0aW9uLW1xIHtcbiAgZm9udC1mYW1pbHk6IFwic21hbGw9MGVtJm1lZGl1bT00MGVtJmxhcmdlPTY0ZW0meGxhcmdlPTc1ZW0meHhsYXJnZT05MGVtXCI7IH1cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogMTAwJTsgfVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0OyB9XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6ICNFOUYyRUY7XG4gIGZvbnQtZmFtaWx5OiBcIkF3c2F0IERpZ2l0YWxcIiwgSGVsdmV0aWNhIE5ldWUsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbmltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7IH1cblxudGV4dGFyZWEge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuc2VsZWN0IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLm1hcF9jYW52YXMgaW1nLFxuLm1hcF9jYW52YXMgZW1iZWQsXG4ubWFwX2NhbnZhcyBvYmplY3QsXG4ubXFhLWRpc3BsYXkgaW1nLFxuLm1xYS1kaXNwbGF5IGVtYmVkLFxuLm1xYS1kaXNwbGF5IG9iamVjdCB7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50OyB9XG5cbmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IGF1dG87IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIGJ1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoOyB9XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyB9XG5cbi5pcy12aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuXG4uaXMtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cblt0eXBlPSd0ZXh0J10sIFt0eXBlPSdwYXNzd29yZCddLCBbdHlwZT0nZGF0ZSddLCBbdHlwZT0nZGF0ZXRpbWUnXSwgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sIFt0eXBlPSdtb250aCddLCBbdHlwZT0nd2VlayddLCBbdHlwZT0nZW1haWwnXSwgW3R5cGU9J251bWJlciddLCBbdHlwZT0nc2VhcmNoJ10sIFt0eXBlPSd0ZWwnXSwgW3R5cGU9J3RpbWUnXSwgW3R5cGU9J3VybCddLCBbdHlwZT0nY29sb3InXSxcbnRleHRhcmVhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIuNzM3NXJlbTtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTU5MjkyO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS44O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgW3R5cGU9J3RleHQnXTpmb2N1cywgW3R5cGU9J3Bhc3N3b3JkJ106Zm9jdXMsIFt0eXBlPSdkYXRlJ106Zm9jdXMsIFt0eXBlPSdkYXRldGltZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTpmb2N1cywgW3R5cGU9J21vbnRoJ106Zm9jdXMsIFt0eXBlPSd3ZWVrJ106Zm9jdXMsIFt0eXBlPSdlbWFpbCddOmZvY3VzLCBbdHlwZT0nbnVtYmVyJ106Zm9jdXMsIFt0eXBlPSdzZWFyY2gnXTpmb2N1cywgW3R5cGU9J3RlbCddOmZvY3VzLCBbdHlwZT0ndGltZSddOmZvY3VzLCBbdHlwZT0ndXJsJ106Zm9jdXMsIFt0eXBlPSdjb2xvciddOmZvY3VzLFxuICB0ZXh0YXJlYTpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNTU1NTU1O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgYm94LXNoYWRvdzogMCAwIDVweCAjOTU5MjkyO1xuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG5cbnRleHRhcmVhIHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIHRleHRhcmVhW3Jvd3NdIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cblxuaW5wdXQ6ZGlzYWJsZWQsIGlucHV0W3JlYWRvbmx5XSxcbnRleHRhcmVhOmRpc2FibGVkLFxudGV4dGFyZWFbcmVhZG9ubHldIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RDREZERjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG5bdHlwZT0nc3VibWl0J10sXG5bdHlwZT0nYnV0dG9uJ10ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbmlucHV0W3R5cGU9J3NlYXJjaCddIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG46OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM5NTkyOTI7IH1cblxuW3R5cGU9J2ZpbGUnXSxcblt0eXBlPSdjaGVja2JveCddLFxuW3R5cGU9J3JhZGlvJ10ge1xuICBtYXJnaW46IDAgMCAxcmVtOyB9XG5cblt0eXBlPSdjaGVja2JveCddICsgbGFiZWwsXG5bdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsW2Zvcl0sXG4gIFt0eXBlPSdyYWRpbyddICsgbGFiZWxbZm9yXSB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbmxhYmVsID4gW3R5cGU9J2NoZWNrYm94J10sXG5sYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTsgfVxuXG5bdHlwZT0nZmlsZSddIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxubGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS44O1xuICBjb2xvcjogIzAwMDAwMDsgfVxuICBsYWJlbC5taWRkbGUge1xuICAgIG1hcmdpbjogMCAwIDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgICBwYWRkaW5nOiAwLjU2MjVyZW0gMDsgfVxuXG4uaGVscC10ZXh0IHtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxuLmlucHV0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIC5pbnB1dC1ncm91cCA+IDpmaXJzdC1jaGlsZCwgLmlucHV0LWdyb3VwID4gOmZpcnN0LWNoaWxkLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cbiAgLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQsIC5pbnB1dC1ncm91cCA+IDpsYXN0LWNoaWxkLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsLCAuaW5wdXQtZ3JvdXAtZmllbGQsIC5pbnB1dC1ncm91cC1idXR0b24sIC5pbnB1dC1ncm91cC1idXR0b24gYSxcbi5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbixcbi5pbnB1dC1ncm91cC1idXR0b24gbGFiZWwge1xuICBtYXJnaW46IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgcGFkZGluZzogMCAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTU5MjkyO1xuICBiYWNrZ3JvdW5kOiAjRENERkRGO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDAgYXV0bztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuaW5wdXQtZ3JvdXAtbGFiZWw6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1sZWZ0OiAwOyB9XG4gIC5pbnB1dC1ncm91cC1sYWJlbDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItcmlnaHQ6IDA7IH1cblxuLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZmxleDogMSAxIDBweDtcbiAgbWluLXdpZHRoOiAwOyB9XG5cbi5pbnB1dC1ncm91cC1idXR0b24ge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwIGF1dG87IH1cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbixcbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCB7XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG5cbmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7IH1cblxubGVnZW5kIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuLmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAxLjEyNXJlbSAwO1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTU5MjkyOyB9XG4gIC5maWVsZHNldCBsZWdlbmQge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjE4NzVyZW07XG4gICAgcGFkZGluZzogMCAwLjE4NzVyZW07IH1cblxuc2VsZWN0IHtcbiAgaGVpZ2h0OiAyLjczNzVyZW07XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzk1OTI5MjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmVyc2lvbj1cIjEuMVwiIHdpZHRoPVwiMzJcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMzIgMjRcIj48cG9seWdvbiBwb2ludHM9XCIwLDAgMzIsMCAxNiwyNFwiIHN0eWxlPVwiZmlsbDogcmdiJTI4ODUsIDg1LCA4NSUyOVwiPjwvcG9seWdvbj48L3N2Zz4nKTtcbiAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IC0xcmVtIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCkge1xuICAgIHNlbGVjdCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09XCIpOyB9IH1cbiAgc2VsZWN0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM1NTU1NTU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBib3gtc2hhZG93OiAwIDAgNXB4ICM5NTkyOTI7XG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cbiAgc2VsZWN0OmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRENERkRGO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHNlbGVjdFttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gIHNlbGVjdDpub3QoW211bHRpcGxlXSkge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG5cbi5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpIHtcbiAgYm9yZGVyLWNvbG9yOiAjQkQzQzJGO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhlY2VhOyB9XG4gIC5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICNCRDNDMkY7IH1cblxuLmlzLWludmFsaWQtbGFiZWwge1xuICBjb2xvcjogI0JEM0MyRjsgfVxuXG4uZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjQkQzQzJGOyB9XG4gIC5mb3JtLWVycm9yLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbmRpdixcbmRsLFxuZHQsXG5kZCxcbnVsLFxub2wsXG5saSxcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbnByZSxcbmZvcm0sXG5wLFxuYmxvY2txdW90ZSxcbnRoLFxudGQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxucCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnN0cm9uZyxcbmIge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuaDEsIC5oMSxcbmgyLCAuaDIsXG5oMywgLmgzLFxuaDQsIC5oNCxcbmg1LCAuaDUsXG5oNiwgLmg2IHtcbiAgZm9udC1mYW1pbHk6IFwiQXdzYXQgRGlnaXRhbFwiLCBIZWx2ZXRpY2EgTmV1ZSwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG4gIGgxIHNtYWxsLCAuaDEgc21hbGwsXG4gIGgyIHNtYWxsLCAuaDIgc21hbGwsXG4gIGgzIHNtYWxsLCAuaDMgc21hbGwsXG4gIGg0IHNtYWxsLCAuaDQgc21hbGwsXG4gIGg1IHNtYWxsLCAuaDUgc21hbGwsXG4gIGg2IHNtYWxsLCAuaDYgc21hbGwge1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIGNvbG9yOiAjOTU5MjkyOyB9XG5cbmgxLCAuaDEge1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oMiwgLmgyIHtcbiAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbmgzLCAuaDMge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDQsIC5oNCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbmg1LCAuaDUge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbmg2LCAuaDYge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgaDEsIC5oMSB7XG4gICAgZm9udC1zaXplOiAzLjEyNXJlbTsgfVxuICBoMiwgLmgyIHtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtOyB9XG4gIGgzLCAuaDMge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH1cbiAgaDQsIC5oNCB7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG4gIGg1LCAuaDUge1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG4gIGg2LCAuaDYge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH0gfVxuXG5hIHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBhOmhvdmVyLCBhOmZvY3VzIHtcbiAgICBjb2xvcjogIzJDOEE4MjsgfVxuICBhIGltZyB7XG4gICAgYm9yZGVyOiAwOyB9XG5cbmhyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1heC13aWR0aDogODcuNXJlbTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IDEuMjVyZW0gYXV0bztcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk1OTI5MjtcbiAgYm9yZGVyLWxlZnQ6IDA7IH1cblxudWwsXG5vbCxcbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgbGluZS1oZWlnaHQ6IDEuNjsgfVxuXG5saSB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDsgfVxuXG51bCB7XG4gIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjOyB9XG5cbm9sIHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtOyB9XG5cbnVsIHVsLCBvbCB1bCwgdWwgb2wsIG9sIG9sIHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICBkbCBkdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjU2MjVyZW0gMS4yNXJlbSAwIDEuMTg3NXJlbTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzk1OTI5MjsgfVxuICBibG9ja3F1b3RlLCBibG9ja3F1b3RlIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgY29sb3I6ICM1NTU1NTU7IH1cblxuYWJiciwgYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICMwMDAwMDA7XG4gIGN1cnNvcjogaGVscDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDsgfVxuXG5rYmQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMjVyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RDREZERjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi5zdWJoZWFkZXIge1xuICBtYXJnaW4tdG9wOiAwLjJyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY29sb3I6ICM1NTU1NTU7IH1cblxuLmxlYWQge1xuICBmb250LXNpemU6IDEyNSU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxuLnN0YXQge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgcCArIC5zdGF0IHtcbiAgICBtYXJnaW4tdG9wOiAtMXJlbTsgfVxuXG51bC5uby1idWxsZXQsIG9sLm5vLWJ1bGxldCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG5jaXRlLCAuY2l0ZS1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogIzU1NTU1NTtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07IH1cbiAgY2l0ZTpiZWZvcmUsIC5jaXRlLWJsb2NrOmJlZm9yZSB7XG4gICAgY29udGVudDogXCLigJQgXCI7IH1cblxuY29kZSwgLmNvZGUtaW5saW5lIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzk1OTI5MjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RDREZERjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBwYWRkaW5nOiAwLjEyNXJlbSAwLjMxMjVyZW0gMC4wNjI1cmVtOyB9XG5cbi5jb2RlLWJsb2NrIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzk1OTI5MjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RDREZERjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubWVkaXVtLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5tZWRpdW0tdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubWVkaXVtLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLmxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5sYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5sYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC54bGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLnhsYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC54bGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuLnNob3ctZm9yLXByaW50IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSBwcmludCB7XG4gICoge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgY29sb3ItYWRqdXN0OiBlY29ub215O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAuaGlkZS1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICB0YWJsZS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0aGVhZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdGJvZHkuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRyLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0ZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIHRoLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgYSxcbiAgYTp2aXNpdGVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjsgfVxuICAuaXIgYTphZnRlcixcbiAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgYVtocmVmXj0nIyddOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJzsgfVxuICBhYmJyW3RpdGxlXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiOyB9XG4gIHByZSxcbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzU1NTU1NTtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgdGhlYWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuICB0cixcbiAgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICBAcGFnZSB7XG4gICAgbWFyZ2luOiAwLjVjbTsgfVxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzOyB9XG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cbiAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87IH0gfVxuXG4uZ3JpZC1jb250YWluZXIge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgbWF4LXdpZHRoOiA4Ny41cmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuMjgxMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuMjgxMjVyZW07IH0gfVxuICAuZ3JpZC1jb250YWluZXIuZmx1aWQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZ3JpZC1jb250YWluZXIuZmx1aWQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI4MTI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuMjgxMjVyZW07IH0gfVxuICAuZ3JpZC1jb250YWluZXIuZnVsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG4uZ3JpZC14IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDsgfVxuXG4uY2VsbCB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBtaW4taGVpZ2h0OiAwO1xuICBtaW4td2lkdGg6IDA7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5jZWxsLmF1dG8ge1xuICAgIGZsZXg6IDEgMSAwOyB9XG4gIC5jZWxsLnNocmluayB7XG4gICAgZmxleDogMCAwIGF1dG87IH1cblxuLmdyaWQteCA+IC5hdXRvIHtcbiAgd2lkdGg6IGF1dG87IH1cblxuLmdyaWQteCA+IC5zaHJpbmsge1xuICB3aWR0aDogYXV0bzsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLXNocmluaywgLmdyaWQteCA+IC5zbWFsbC1mdWxsLCAuZ3JpZC14ID4gLnNtYWxsLTEsIC5ncmlkLXggPiAuc21hbGwtMiwgLmdyaWQteCA+IC5zbWFsbC0zLCAuZ3JpZC14ID4gLnNtYWxsLTQsIC5ncmlkLXggPiAuc21hbGwtNSwgLmdyaWQteCA+IC5zbWFsbC02LCAuZ3JpZC14ID4gLnNtYWxsLTcsIC5ncmlkLXggPiAuc21hbGwtOCwgLmdyaWQteCA+IC5zbWFsbC05LCAuZ3JpZC14ID4gLnNtYWxsLTEwLCAuZ3JpZC14ID4gLnNtYWxsLTExLCAuZ3JpZC14ID4gLnNtYWxsLTEyIHtcbiAgZmxleC1iYXNpczogYXV0bzsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC14ID4gLm1lZGl1bS1zaHJpbmssIC5ncmlkLXggPiAubWVkaXVtLWZ1bGwsIC5ncmlkLXggPiAubWVkaXVtLTEsIC5ncmlkLXggPiAubWVkaXVtLTIsIC5ncmlkLXggPiAubWVkaXVtLTMsIC5ncmlkLXggPiAubWVkaXVtLTQsIC5ncmlkLXggPiAubWVkaXVtLTUsIC5ncmlkLXggPiAubWVkaXVtLTYsIC5ncmlkLXggPiAubWVkaXVtLTcsIC5ncmlkLXggPiAubWVkaXVtLTgsIC5ncmlkLXggPiAubWVkaXVtLTksIC5ncmlkLXggPiAubWVkaXVtLTEwLCAuZ3JpZC14ID4gLm1lZGl1bS0xMSwgLmdyaWQteCA+IC5tZWRpdW0tMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC14ID4gLmxhcmdlLXNocmluaywgLmdyaWQteCA+IC5sYXJnZS1mdWxsLCAuZ3JpZC14ID4gLmxhcmdlLTEsIC5ncmlkLXggPiAubGFyZ2UtMiwgLmdyaWQteCA+IC5sYXJnZS0zLCAuZ3JpZC14ID4gLmxhcmdlLTQsIC5ncmlkLXggPiAubGFyZ2UtNSwgLmdyaWQteCA+IC5sYXJnZS02LCAuZ3JpZC14ID4gLmxhcmdlLTcsIC5ncmlkLXggPiAubGFyZ2UtOCwgLmdyaWQteCA+IC5sYXJnZS05LCAuZ3JpZC14ID4gLmxhcmdlLTEwLCAuZ3JpZC14ID4gLmxhcmdlLTExLCAuZ3JpZC14ID4gLmxhcmdlLTEyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuZ3JpZC14ID4gLnhsYXJnZS1zaHJpbmssIC5ncmlkLXggPiAueGxhcmdlLWZ1bGwsIC5ncmlkLXggPiAueGxhcmdlLTEsIC5ncmlkLXggPiAueGxhcmdlLTIsIC5ncmlkLXggPiAueGxhcmdlLTMsIC5ncmlkLXggPiAueGxhcmdlLTQsIC5ncmlkLXggPiAueGxhcmdlLTUsIC5ncmlkLXggPiAueGxhcmdlLTYsIC5ncmlkLXggPiAueGxhcmdlLTcsIC5ncmlkLXggPiAueGxhcmdlLTgsIC5ncmlkLXggPiAueGxhcmdlLTksIC5ncmlkLXggPiAueGxhcmdlLTEwLCAuZ3JpZC14ID4gLnhsYXJnZS0xMSwgLmdyaWQteCA+IC54bGFyZ2UtMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEsIC5ncmlkLXggPiAuc21hbGwtMiwgLmdyaWQteCA+IC5zbWFsbC0zLCAuZ3JpZC14ID4gLnNtYWxsLTQsIC5ncmlkLXggPiAuc21hbGwtNSwgLmdyaWQteCA+IC5zbWFsbC02LCAuZ3JpZC14ID4gLnNtYWxsLTcsIC5ncmlkLXggPiAuc21hbGwtOCwgLmdyaWQteCA+IC5zbWFsbC05LCAuZ3JpZC14ID4gLnNtYWxsLTEwLCAuZ3JpZC14ID4gLnNtYWxsLTExLCAuZ3JpZC14ID4gLnNtYWxsLTEyIHtcbiAgZmxleDogMCAwIGF1dG87IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xIHtcbiAgd2lkdGg6IDguMzMzMzMlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMiB7XG4gIHdpZHRoOiAxNi42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0zIHtcbiAgd2lkdGg6IDI1JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTQge1xuICB3aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtNSB7XG4gIHdpZHRoOiA0MS42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC02IHtcbiAgd2lkdGg6IDUwJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTcge1xuICB3aWR0aDogNTguMzMzMzMlOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtOCB7XG4gIHdpZHRoOiA2Ni42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC05IHtcbiAgd2lkdGg6IDc1JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEwIHtcbiAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTExIHtcbiAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTEyIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQteCA+IC5tZWRpdW0tYXV0byB7XG4gICAgZmxleDogMSAxIDA7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tc2hyaW5rLCAuZ3JpZC14ID4gLm1lZGl1bS0xLCAuZ3JpZC14ID4gLm1lZGl1bS0yLCAuZ3JpZC14ID4gLm1lZGl1bS0zLCAuZ3JpZC14ID4gLm1lZGl1bS00LCAuZ3JpZC14ID4gLm1lZGl1bS01LCAuZ3JpZC14ID4gLm1lZGl1bS02LCAuZ3JpZC14ID4gLm1lZGl1bS03LCAuZ3JpZC14ID4gLm1lZGl1bS04LCAuZ3JpZC14ID4gLm1lZGl1bS05LCAuZ3JpZC14ID4gLm1lZGl1bS0xMCwgLmdyaWQteCA+IC5tZWRpdW0tMTEsIC5ncmlkLXggPiAubWVkaXVtLTEyIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQteCA+IC5sYXJnZS1hdXRvIHtcbiAgICBmbGV4OiAxIDEgMDtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLXNocmluaywgLmdyaWQteCA+IC5sYXJnZS0xLCAuZ3JpZC14ID4gLmxhcmdlLTIsIC5ncmlkLXggPiAubGFyZ2UtMywgLmdyaWQteCA+IC5sYXJnZS00LCAuZ3JpZC14ID4gLmxhcmdlLTUsIC5ncmlkLXggPiAubGFyZ2UtNiwgLmdyaWQteCA+IC5sYXJnZS03LCAuZ3JpZC14ID4gLmxhcmdlLTgsIC5ncmlkLXggPiAubGFyZ2UtOSwgLmdyaWQteCA+IC5sYXJnZS0xMCwgLmdyaWQteCA+IC5sYXJnZS0xMSwgLmdyaWQteCA+IC5sYXJnZS0xMiB7XG4gICAgZmxleDogMCAwIGF1dG87IH1cbiAgLmdyaWQteCA+IC5sYXJnZS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuZ3JpZC14ID4gLnhsYXJnZS1hdXRvIHtcbiAgICBmbGV4OiAxIDEgMDtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS1zaHJpbmssIC5ncmlkLXggPiAueGxhcmdlLTEsIC5ncmlkLXggPiAueGxhcmdlLTIsIC5ncmlkLXggPiAueGxhcmdlLTMsIC5ncmlkLXggPiAueGxhcmdlLTQsIC5ncmlkLXggPiAueGxhcmdlLTUsIC5ncmlkLXggPiAueGxhcmdlLTYsIC5ncmlkLXggPiAueGxhcmdlLTcsIC5ncmlkLXggPiAueGxhcmdlLTgsIC5ncmlkLXggPiAueGxhcmdlLTksIC5ncmlkLXggPiAueGxhcmdlLTEwLCAuZ3JpZC14ID4gLnhsYXJnZS0xMSwgLmdyaWQteCA+IC54bGFyZ2UtMTIge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLXNocmluayB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uZ3JpZC1tYXJnaW4teDpub3QoLmdyaWQteCkgPiAuY2VsbCB7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbi5ncmlkLW1hcmdpbi15Om5vdCguZ3JpZC15KSA+IC5jZWxsIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5ncmlkLW1hcmdpbi14IHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCB7XG4gICAgICBtYXJnaW4tbGVmdDogLTEuMjgxMjVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xLjI4MTI1cmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuY2VsbCB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMi41NjI1cmVtKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxLjI4MTI1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjI4MTI1cmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14ID4gLmF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTMge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTYge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTkge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTMge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTYge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTkge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIuNTYyNXJlbSk7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTMge1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTYge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTkge1xuICAgICAgd2lkdGg6IGNhbGMoNzUlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIuNTYyNXJlbSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLWF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utc2hyaW5rIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS02IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS05IHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTEyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyLjU2MjVyZW0pOyB9IH1cblxuLmdyaWQtcGFkZGluZy14IC5ncmlkLXBhZGRpbmcteCB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy14IC5ncmlkLXBhZGRpbmcteCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xLjI4MTI1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xLjI4MTI1cmVtOyB9IH1cblxuLmdyaWQtY29udGFpbmVyOm5vdCguZnVsbCkgPiAuZ3JpZC1wYWRkaW5nLXgge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTEuMjgxMjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTEuMjgxMjVyZW07IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXggPiAuY2VsbCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy14ID4gLmNlbGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMS4yODEyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS4yODEyNXJlbTsgfSB9XG5cbi5zbWFsbC11cC0xID4gLmNlbGwge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uc21hbGwtdXAtMiA+IC5jZWxsIHtcbiAgd2lkdGg6IDUwJTsgfVxuXG4uc21hbGwtdXAtMyA+IC5jZWxsIHtcbiAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtdXAtNCA+IC5jZWxsIHtcbiAgd2lkdGg6IDI1JTsgfVxuXG4uc21hbGwtdXAtNSA+IC5jZWxsIHtcbiAgd2lkdGg6IDIwJTsgfVxuXG4uc21hbGwtdXAtNiA+IC5jZWxsIHtcbiAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuXG4uc21hbGwtdXAtNyA+IC5jZWxsIHtcbiAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuXG4uc21hbGwtdXAtOCA+IC5jZWxsIHtcbiAgd2lkdGg6IDEyLjUlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubWVkaXVtLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDIwJTsgfVxuICAubWVkaXVtLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAubWVkaXVtLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEyLjUlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDIwJTsgfVxuICAubGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLmxhcmdlLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEyLjUlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnhsYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnhsYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnhsYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgLnhsYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLnhsYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMi41JTsgfSB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0yID4gLmNlbGwge1xuICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0zID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC00ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC01ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygyMCUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC02ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC03ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC04ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxMi41JSAtIDEuMjVyZW0pOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIuNTYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAyLjU2MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDIuNTYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAyLjU2MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDIuNTYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDIuNTYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIuNTYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMi41NjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDIuNTYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMi41NjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDIuNTYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAyLjU2MjVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMi41NjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIuNTYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMi41NjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDIuNTYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMi41NjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMi41NjI1cmVtKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIuNTYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMi41NjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDIuNTYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMi41NjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDIuNTYyNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAyLjU2MjVyZW0pOyB9IH1cblxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIge1xuICAgICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgICAgd2lkdGg6IDI1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUge1xuICAgICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTYge1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTkge1xuICAgICAgd2lkdGg6IDc1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7XG4gICAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgICB3aWR0aDogMjUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgICB3aWR0aDogNTAlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOSB7XG4gICAgICB3aWR0aDogNzUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xIHtcbiAgICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTIge1xuICAgICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTMge1xuICAgICAgd2lkdGg6IDI1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTQge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTUge1xuICAgICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTYge1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTcge1xuICAgICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTgge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTkge1xuICAgICAgd2lkdGg6IDc1JTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEwIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMSB7XG4gICAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTIge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uc21hbGwtcGFkZGluZy1jb2xsYXBzZSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnNtYWxsLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubWVkaXVtLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubGFyZ2UtcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAueGxhcmdlLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cblxuLnNtYWxsLW9mZnNldC0wIHtcbiAgbWFyZ2luLXJpZ2h0OiAwJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1yaWdodDogY2FsYygwJSArIDEuMjVyZW0gLyAyKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEge1xuICBtYXJnaW4tcmlnaHQ6IDguMzMzMzMlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xIHtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKDguMzMzMzMlICsgMS4yNXJlbSAvIDIpOyB9XG5cbi5zbWFsbC1vZmZzZXQtMiB7XG4gIG1hcmdpbi1yaWdodDogMTYuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKDE2LjY2NjY3JSArIDEuMjVyZW0gLyAyKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tcmlnaHQ6IDI1JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1yaWdodDogY2FsYygyNSUgKyAxLjI1cmVtIC8gMik7IH1cblxuLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLXJpZ2h0OiAzMy4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTQge1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoMzMuMzMzMzMlICsgMS4yNXJlbSAvIDIpOyB9XG5cbi5zbWFsbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1yaWdodDogNDEuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKDQxLjY2NjY3JSArIDEuMjVyZW0gLyAyKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tcmlnaHQ6IDUwJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1yaWdodDogY2FsYyg1MCUgKyAxLjI1cmVtIC8gMik7IH1cblxuLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLXJpZ2h0OiA1OC4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTcge1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoNTguMzMzMzMlICsgMS4yNXJlbSAvIDIpOyB9XG5cbi5zbWFsbC1vZmZzZXQtOCB7XG4gIG1hcmdpbi1yaWdodDogNjYuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKDY2LjY2NjY3JSArIDEuMjVyZW0gLyAyKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tcmlnaHQ6IDc1JTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtOSB7XG4gIG1hcmdpbi1yaWdodDogY2FsYyg3NSUgKyAxLjI1cmVtIC8gMik7IH1cblxuLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1yaWdodDogODMuMzMzMzMlOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1yaWdodDogY2FsYyg4My4zMzMzMyUgKyAxLjI1cmVtIC8gMik7IH1cblxuLnNtYWxsLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1yaWdodDogOTEuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1yaWdodDogY2FsYyg5MS42NjY2NyUgKyAxLjI1cmVtIC8gMik7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygwJSArIDIuNTYyNXJlbSAvIDIpOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1yaWdodDogOC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoOC4zMzMzMyUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAubWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygxNi42NjY2NyUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAubWVkaXVtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygyNSUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygzMy4zMzMzMyUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyg0MS42NjY2NyUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAubWVkaXVtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDUwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyg1MCUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAubWVkaXVtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyg1OC4zMzMzMyUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyg2Ni42NjY2NyUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAubWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDc1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyg3NSUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAubWVkaXVtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDgzLjMzMzMzJSArIDIuNTYyNXJlbSAvIDIpOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoOTEuNjY2NjclICsgMi41NjI1cmVtIC8gMik7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1yaWdodDogMCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygwJSArIDIuNTYyNXJlbSAvIDIpOyB9XG4gIC5sYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDguMzMzMzMlICsgMi41NjI1cmVtIC8gMik7IH1cbiAgLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDE2LjY2NjY3JSArIDIuNTYyNXJlbSAvIDIpOyB9XG4gIC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygyNSUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1yaWdodDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoMzMuMzMzMzMlICsgMi41NjI1cmVtIC8gMik7IH1cbiAgLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDQxLjY2NjY3JSArIDIuNTYyNXJlbSAvIDIpOyB9XG4gIC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA1MCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyg1MCUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1yaWdodDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoNTguMzMzMzMlICsgMi41NjI1cmVtIC8gMik7IH1cbiAgLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDY2LjY2NjY3JSArIDIuNTYyNXJlbSAvIDIpOyB9XG4gIC5sYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA3NSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyg3NSUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyg4My4zMzMzMyUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyg5MS42NjY2NyUgKyAyLjU2MjVyZW0gLyAyKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygwJSArIDIuNTYyNXJlbSAvIDIpOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1yaWdodDogOC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoOC4zMzMzMyUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAueGxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygxNi42NjY2NyUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAueGxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygyNSUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAueGxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygzMy4zMzMzMyUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAueGxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyg0MS42NjY2NyUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAueGxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDUwJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyg1MCUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAueGxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyg1OC4zMzMzMyUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAueGxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyg2Ni42NjY2NyUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAueGxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDc1JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyg3NSUgKyAyLjU2MjVyZW0gLyAyKTsgfVxuICAueGxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDgzLjMzMzMzJSArIDIuNTYyNXJlbSAvIDIpOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoOTEuNjY2NjclICsgMi41NjI1cmVtIC8gMik7IH0gfVxuXG4uZ3JpZC15IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwOyB9XG4gIC5ncmlkLXkgPiAuY2VsbCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IG5vbmU7IH1cbiAgLmdyaWQteSA+IC5hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdyaWQteSA+IC5zaHJpbmsge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLXNocmluaywgLmdyaWQteSA+IC5zbWFsbC1mdWxsLCAuZ3JpZC15ID4gLnNtYWxsLTEsIC5ncmlkLXkgPiAuc21hbGwtMiwgLmdyaWQteSA+IC5zbWFsbC0zLCAuZ3JpZC15ID4gLnNtYWxsLTQsIC5ncmlkLXkgPiAuc21hbGwtNSwgLmdyaWQteSA+IC5zbWFsbC02LCAuZ3JpZC15ID4gLnNtYWxsLTcsIC5ncmlkLXkgPiAuc21hbGwtOCwgLmdyaWQteSA+IC5zbWFsbC05LCAuZ3JpZC15ID4gLnNtYWxsLTEwLCAuZ3JpZC15ID4gLnNtYWxsLTExLCAuZ3JpZC15ID4gLnNtYWxsLTEyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tc2hyaW5rLCAuZ3JpZC15ID4gLm1lZGl1bS1mdWxsLCAuZ3JpZC15ID4gLm1lZGl1bS0xLCAuZ3JpZC15ID4gLm1lZGl1bS0yLCAuZ3JpZC15ID4gLm1lZGl1bS0zLCAuZ3JpZC15ID4gLm1lZGl1bS00LCAuZ3JpZC15ID4gLm1lZGl1bS01LCAuZ3JpZC15ID4gLm1lZGl1bS02LCAuZ3JpZC15ID4gLm1lZGl1bS03LCAuZ3JpZC15ID4gLm1lZGl1bS04LCAuZ3JpZC15ID4gLm1lZGl1bS05LCAuZ3JpZC15ID4gLm1lZGl1bS0xMCwgLmdyaWQteSA+IC5tZWRpdW0tMTEsIC5ncmlkLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGZsZXgtYmFzaXM6IGF1dG87IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLXkgPiAubGFyZ2Utc2hyaW5rLCAuZ3JpZC15ID4gLmxhcmdlLWZ1bGwsIC5ncmlkLXkgPiAubGFyZ2UtMSwgLmdyaWQteSA+IC5sYXJnZS0yLCAuZ3JpZC15ID4gLmxhcmdlLTMsIC5ncmlkLXkgPiAubGFyZ2UtNCwgLmdyaWQteSA+IC5sYXJnZS01LCAuZ3JpZC15ID4gLmxhcmdlLTYsIC5ncmlkLXkgPiAubGFyZ2UtNywgLmdyaWQteSA+IC5sYXJnZS04LCAuZ3JpZC15ID4gLmxhcmdlLTksIC5ncmlkLXkgPiAubGFyZ2UtMTAsIC5ncmlkLXkgPiAubGFyZ2UtMTEsIC5ncmlkLXkgPiAubGFyZ2UtMTIge1xuICAgICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZ3JpZC15ID4gLnhsYXJnZS1zaHJpbmssIC5ncmlkLXkgPiAueGxhcmdlLWZ1bGwsIC5ncmlkLXkgPiAueGxhcmdlLTEsIC5ncmlkLXkgPiAueGxhcmdlLTIsIC5ncmlkLXkgPiAueGxhcmdlLTMsIC5ncmlkLXkgPiAueGxhcmdlLTQsIC5ncmlkLXkgPiAueGxhcmdlLTUsIC5ncmlkLXkgPiAueGxhcmdlLTYsIC5ncmlkLXkgPiAueGxhcmdlLTcsIC5ncmlkLXkgPiAueGxhcmdlLTgsIC5ncmlkLXkgPiAueGxhcmdlLTksIC5ncmlkLXkgPiAueGxhcmdlLTEwLCAuZ3JpZC15ID4gLnhsYXJnZS0xMSwgLmdyaWQteSA+IC54bGFyZ2UtMTIge1xuICAgICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMSwgLmdyaWQteSA+IC5zbWFsbC0yLCAuZ3JpZC15ID4gLnNtYWxsLTMsIC5ncmlkLXkgPiAuc21hbGwtNCwgLmdyaWQteSA+IC5zbWFsbC01LCAuZ3JpZC15ID4gLnNtYWxsLTYsIC5ncmlkLXkgPiAuc21hbGwtNywgLmdyaWQteSA+IC5zbWFsbC04LCAuZ3JpZC15ID4gLnNtYWxsLTksIC5ncmlkLXkgPiAuc21hbGwtMTAsIC5ncmlkLXkgPiAuc21hbGwtMTEsIC5ncmlkLXkgPiAuc21hbGwtMTIge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMSB7XG4gICAgaGVpZ2h0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTIge1xuICAgIGhlaWdodDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMyB7XG4gICAgaGVpZ2h0OiAyNSU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC00IHtcbiAgICBoZWlnaHQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTUge1xuICAgIGhlaWdodDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtNiB7XG4gICAgaGVpZ2h0OiA1MCU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC03IHtcbiAgICBoZWlnaHQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTgge1xuICAgIGhlaWdodDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtOSB7XG4gICAgaGVpZ2h0OiA3NSU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0xMCB7XG4gICAgaGVpZ2h0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0xMSB7XG4gICAgaGVpZ2h0OiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0xMiB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tYXV0byB7XG4gICAgICBmbGV4OiAxIDEgMDtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLXNocmluaywgLmdyaWQteSA+IC5tZWRpdW0tMSwgLmdyaWQteSA+IC5tZWRpdW0tMiwgLmdyaWQteSA+IC5tZWRpdW0tMywgLmdyaWQteSA+IC5tZWRpdW0tNCwgLmdyaWQteSA+IC5tZWRpdW0tNSwgLmdyaWQteSA+IC5tZWRpdW0tNiwgLmdyaWQteSA+IC5tZWRpdW0tNywgLmdyaWQteSA+IC5tZWRpdW0tOCwgLmdyaWQteSA+IC5tZWRpdW0tOSwgLmdyaWQteSA+IC5tZWRpdW0tMTAsIC5ncmlkLXkgPiAubWVkaXVtLTExLCAuZ3JpZC15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0xIHtcbiAgICAgIGhlaWdodDogOC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0yIHtcbiAgICAgIGhlaWdodDogMTYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMyB7XG4gICAgICBoZWlnaHQ6IDI1JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTQge1xuICAgICAgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS01IHtcbiAgICAgIGhlaWdodDogNDEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tNiB7XG4gICAgICBoZWlnaHQ6IDUwJTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTcge1xuICAgICAgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS04IHtcbiAgICAgIGhlaWdodDogNjYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tOSB7XG4gICAgICBoZWlnaHQ6IDc1JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTEwIHtcbiAgICAgIGhlaWdodDogODMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMTEge1xuICAgICAgaGVpZ2h0OiA5MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLXkgPiAubGFyZ2UtYXV0byB7XG4gICAgICBmbGV4OiAxIDEgMDtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2Utc2hyaW5rLCAuZ3JpZC15ID4gLmxhcmdlLTEsIC5ncmlkLXkgPiAubGFyZ2UtMiwgLmdyaWQteSA+IC5sYXJnZS0zLCAuZ3JpZC15ID4gLmxhcmdlLTQsIC5ncmlkLXkgPiAubGFyZ2UtNSwgLmdyaWQteSA+IC5sYXJnZS02LCAuZ3JpZC15ID4gLmxhcmdlLTcsIC5ncmlkLXkgPiAubGFyZ2UtOCwgLmdyaWQteSA+IC5sYXJnZS05LCAuZ3JpZC15ID4gLmxhcmdlLTEwLCAuZ3JpZC15ID4gLmxhcmdlLTExLCAuZ3JpZC15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0xIHtcbiAgICAgIGhlaWdodDogOC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiAxNi42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiAyNSU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiA0MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiA1MCU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiA3NSU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogODMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IDkxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLXkgPiAueGxhcmdlLWF1dG8ge1xuICAgICAgZmxleDogMSAxIDA7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS1zaHJpbmssIC5ncmlkLXkgPiAueGxhcmdlLTEsIC5ncmlkLXkgPiAueGxhcmdlLTIsIC5ncmlkLXkgPiAueGxhcmdlLTMsIC5ncmlkLXkgPiAueGxhcmdlLTQsIC5ncmlkLXkgPiAueGxhcmdlLTUsIC5ncmlkLXkgPiAueGxhcmdlLTYsIC5ncmlkLXkgPiAueGxhcmdlLTcsIC5ncmlkLXkgPiAueGxhcmdlLTgsIC5ncmlkLXkgPiAueGxhcmdlLTksIC5ncmlkLXkgPiAueGxhcmdlLTEwLCAuZ3JpZC15ID4gLnhsYXJnZS0xMSwgLmdyaWQteSA+IC54bGFyZ2UtMTIge1xuICAgICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IDguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IDE2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiAyNSU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS00IHtcbiAgICAgIGhlaWdodDogMzMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IDQxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiA1MCU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS03IHtcbiAgICAgIGhlaWdodDogNTguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IDY2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiA3NSU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IDgzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogOTEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuLmdyaWQtcGFkZGluZy15IC5ncmlkLXBhZGRpbmcteSB7XG4gIG1hcmdpbi10b3A6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy15IC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMS4yODEyNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0xLjI4MTI1cmVtOyB9IH1cblxuLmdyaWQtcGFkZGluZy15ID4gLmNlbGwge1xuICBwYWRkaW5nLXRvcDogMC42MjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxLjI4MTI1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEuMjgxMjVyZW07IH0gfVxuXG4uZ3JpZC1tYXJnaW4teSB7XG4gIG1hcmdpbi10b3A6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkge1xuICAgICAgbWFyZ2luLXRvcDogLTEuMjgxMjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMS4yODEyNXJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMi41NjI1cmVtKTtcbiAgICAgIG1hcmdpbi10b3A6IDEuMjgxMjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjI4MTI1cmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIuNTYyNXJlbSk7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMi41NjI1cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMi41NjI1cmVtKTsgfSB9XG5cbi5ncmlkLWZyYW1lIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDB2dzsgfVxuXG4uY2VsbCAuZ3JpZC1mcmFtZSB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5jZWxsLWJsb2NrIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG5cbi5jZWxsLWJsb2NrLXkge1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG5cbi5jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgLmNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIHdpZHRoOiAxMDB2dzsgfVxuICAuY2VsbCAubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5tZWRpdW0tY2VsbC1ibG9jayB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG4gIC5tZWRpdW0tY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gICAgLm1lZGl1bS1jZWxsLWJsb2NrLWNvbnRhaW5lciA+IC5ncmlkLXgge1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gIC5tZWRpdW0tY2VsbC1ibG9jay15IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgd2lkdGg6IDEwMHZ3OyB9XG4gIC5jZWxsIC5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubGFyZ2UtY2VsbC1ibG9jayB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgICAubGFyZ2UtY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAubGFyZ2UtY2VsbC1ibG9jay15IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgd2lkdGg6IDEwMHZ3OyB9XG4gIC5jZWxsIC54bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnhsYXJnZS1jZWxsLWJsb2NrIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH1cbiAgLnhsYXJnZS1jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgICAueGxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLnhsYXJnZS1jZWxsLWJsb2NrLXkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfSB9XG5cbi5ncmlkLXkuZ3JpZC1mcmFtZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBoZWlnaHQ6IDEwMHZoO1xuICB3aWR0aDogYXV0bzsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ3JpZC15Lm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHdpZHRoOiBhdXRvOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQteS5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHdpZHRoOiBhdXRvOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuZ3JpZC15LnhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHdpZHRoOiBhdXRvOyB9IH1cblxuLmNlbGwgLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5jZWxsIC5ncmlkLXkubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jZWxsIC5ncmlkLXkubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuY2VsbCAuZ3JpZC15LnhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG4uZ3JpZC1tYXJnaW4teSB7XG4gIG1hcmdpbi10b3A6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkge1xuICAgICAgbWFyZ2luLXRvcDogLTEuMjgxMjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMS4yODEyNXJlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMi41NjI1cmVtKTtcbiAgICAgIG1hcmdpbi10b3A6IDEuMjgxMjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjI4MTI1cmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIuNTYyNXJlbSk7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMi41NjI1cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDIuNTYyNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMi41NjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAyLjU2MjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMi41NjI1cmVtKTsgfSB9XG5cbi5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjI1cmVtKTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMi41NjI1cmVtKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAyLjU2MjVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMi41NjI1cmVtKTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLW1hcmdpbi15Lm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAyLjU2MjVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMi41NjI1cmVtKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkueGxhcmdlLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDIuNTYyNXJlbSk7IH0gfVxuXG4uYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIHBhZGRpbmc6IDAuODVlbSAyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmJ1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuICAuYnV0dG9uLnRpbnkge1xuICAgIGZvbnQtc2l6ZTogMC42cmVtOyB9XG4gIC5idXR0b24uc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAuYnV0dG9uLmxhcmdlIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgLmJ1dHRvbi5leHBhbmRlZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5idXR0b24sIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyQzhBODI7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI1NzU2ZjtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYnV0dG9uLnByaW1hcnksIC5idXR0b24ucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLnByaW1hcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyQzhBODI7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmJ1dHRvbi5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLnByaW1hcnk6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMzZlNjg7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmJ1dHRvbi5zZWNvbmRhcnksIC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF0sIC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0ZDk5OGE7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2U3YTZlO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5idXR0b24uc3VjY2VzcywgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkLCAuYnV0dG9uLnN1Y2Nlc3NbZGlzYWJsZWRdLCAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uc3VjY2Vzcy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uc3VjY2Vzczpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIyYmI1YjtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYnV0dG9uLndhcm5pbmcsIC5idXR0b24ud2FybmluZy5kaXNhYmxlZCwgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLndhcm5pbmdbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmJ1dHRvbi53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLndhcm5pbmc6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzhiMDA7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmJ1dHRvbi5hbGVydCwgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZCwgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF0sIC5idXR0b24uYWxlcnQuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uYWxlcnRbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0JEM0MyRjtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYnV0dG9uLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmFsZXJ0OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTczMDI2O1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5idXR0b24uaG9sbG93LCAuYnV0dG9uLmhvbGxvdzpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMsIC5idXR0b24uaG9sbG93LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5idXR0b24uaG9sbG93LCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMkM4QTgyO1xuICAgIGNvbG9yOiAjMkM4QTgyOyB9XG4gIC5idXR0b24uaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTY0NTQxO1xuICAgIGNvbG9yOiAjMTY0NTQxOyB9XG4gIC5idXR0b24uaG9sbG93LnByaW1hcnksIC5idXR0b24uaG9sbG93LnByaW1hcnkuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnByaW1hcnlbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMyQzhBODI7XG4gICAgY29sb3I6ICMyQzhBODI7IH1cbiAgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTY0NTQxO1xuICAgIGNvbG9yOiAjMTY0NTQxOyB9XG4gIC5idXR0b24uaG9sbG93LnNlY29uZGFyeSwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnlbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzRkOTk4YTtcbiAgICBjb2xvcjogIzRkOTk4YTsgfVxuICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMjc0ZDQ1O1xuICAgIGNvbG9yOiAjMjc0ZDQ1OyB9XG4gIC5idXR0b24uaG9sbG93LnN1Y2Nlc3MsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3MuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3NbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzcy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzc1tkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gICAgY29sb3I6ICMzYWRiNzY7IH1cbiAgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTU3NTM5O1xuICAgIGNvbG9yOiAjMTU3NTM5OyB9XG4gIC5idXR0b24uaG9sbG93Lndhcm5pbmcsIC5idXR0b24uaG9sbG93Lndhcm5pbmcuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93Lndhcm5pbmdbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3cud2FybmluZ1tkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjODA1NzAwO1xuICAgIGNvbG9yOiAjODA1NzAwOyB9XG4gIC5idXR0b24uaG9sbG93LmFsZXJ0LCAuYnV0dG9uLmhvbGxvdy5hbGVydC5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuYWxlcnRbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5hbGVydC5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuYWxlcnRbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydC5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3cuYWxlcnRbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjQkQzQzJGO1xuICAgIGNvbG9yOiAjQkQzQzJGOyB9XG4gIC5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjNWYxZTE4O1xuICAgIGNvbG9yOiAjNWYxZTE4OyB9XG4gIC5idXR0b24uY2xlYXIsIC5idXR0b24uY2xlYXI6aG92ZXIsIC5idXR0b24uY2xlYXI6Zm9jdXMsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmJ1dHRvbi5jbGVhciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgY29sb3I6ICMyQzhBODI7IH1cbiAgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpmb2N1cyB7XG4gICAgY29sb3I6ICMxNjQ1NDE7IH1cbiAgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LCAuYnV0dG9uLmNsZWFyLnByaW1hcnkuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeVtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIucHJpbWFyeS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmNsZWFyLnByaW1hcnlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBjb2xvcjogIzJDOEE4MjsgfVxuICAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cyB7XG4gICAgY29sb3I6ICMxNjQ1NDE7IH1cbiAgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnksIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeVtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICAgIGNvbG9yOiAjNGQ5OThhOyB9XG4gIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cyB7XG4gICAgY29sb3I6ICMyNzRkNDU7IH1cbiAgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3MuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzc1tkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc3VjY2Vzcy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3NbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cyB7XG4gICAgY29sb3I6ICMxNTc1Mzk7IH1cbiAgLmJ1dHRvbi5jbGVhci53YXJuaW5nLCAuYnV0dG9uLmNsZWFyLndhcm5pbmcuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZ1tkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIud2FybmluZy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci53YXJuaW5nW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhci53YXJuaW5nLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmNsZWFyLndhcm5pbmdbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBjb2xvcjogI2ZmYWUwMDsgfVxuICAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXIsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1cyB7XG4gICAgY29sb3I6ICM4MDU3MDA7IH1cbiAgLmJ1dHRvbi5jbGVhci5hbGVydCwgLmJ1dHRvbi5jbGVhci5hbGVydC5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydFtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWxlcnQuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIuYWxlcnRbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmNsZWFyLmFsZXJ0W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgY29sb3I6ICNCRDNDMkY7IH1cbiAgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlciwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1cyB7XG4gICAgY29sb3I6ICM1ZjFlMTg7IH1cbiAgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbltkaXNhYmxlZF0ge1xuICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAuYnV0dG9uLmRyb3Bkb3duOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAwLjRlbTtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogI2ZmZmZmZiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAyZW07IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3c6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyOjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzJDOEE4MjsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5wcmltYXJ5OjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5wcmltYXJ5OjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzJDOEE4MjsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5zZWNvbmRhcnk6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLnNlY29uZGFyeTo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICM0ZDk5OGE7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc3VjY2Vzczo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuc3VjY2Vzczo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICMzYWRiNzY7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cud2FybmluZzo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIud2FybmluZzo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNmZmFlMDA7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuYWxlcnQ6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLmFsZXJ0OjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI0JEM0MyRjsgfVxuICAuYnV0dG9uLmFycm93LW9ubHk6OmFmdGVyIHtcbiAgICB0b3A6IC0wLjFlbTtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuYS5idXR0b246aG92ZXIsIGEuYnV0dG9uOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuICBjb2xvcjogIzU1NTU1NTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuY2xvc2UtYnV0dG9uIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5jbG9zZS1idXR0b246aG92ZXIsIC5jbG9zZS1idXR0b246Zm9jdXMge1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5jbG9zZS1idXR0b24uc21hbGwge1xuICAgIHJpZ2h0OiAwLjY2cmVtO1xuICAgIHRvcDogMC4zM2VtO1xuICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLmNsb3NlLWJ1dHRvbiwgLmNsb3NlLWJ1dHRvbi5tZWRpdW0ge1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIHRvcDogMC41cmVtO1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG5cbi5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBiYWNrZ3JvdW5kOiAjMkM4QTgyO1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuICAubGFiZWwucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogIzJDOEE4MjtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAubGFiZWwuc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAjNGQ5OThhO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5sYWJlbC5zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kOiAjM2FkYjc2O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5sYWJlbC53YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZhZTAwO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5sYWJlbC5hbGVydCB7XG4gICAgYmFja2dyb3VuZDogI0JEM0MyRjtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4uYnJlYWRjcnVtYnMge1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLmJyZWFkY3J1bWJzOjpiZWZvcmUsIC5icmVhZGNydW1iczo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIC5icmVhZGNydW1iczo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5icmVhZGNydW1icyBsaSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgLmJyZWFkY3J1bWJzIGxpOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbjogMCAwLjc1cmVtO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGNvbnRlbnQ6IFwiXFxcXFwiO1xuICAgICAgY29sb3I6ICM5NTkyOTI7IH1cbiAgLmJyZWFkY3J1bWJzIGEge1xuICAgIGNvbG9yOiAjMkM4QTgyOyB9XG4gICAgLmJyZWFkY3J1bWJzIGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLmJyZWFkY3J1bWJzIC5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICM5NTkyOTI7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4uY2FsbG91dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmNhbGxvdXQgPiA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLmNhbGxvdXQgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuY2FsbG91dC5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmM4YTgyO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5jYWxsb3V0LnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzRkOTk4YTtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuY2FsbG91dC5zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5jYWxsb3V0Lndhcm5pbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmNhbGxvdXQuYWxlcnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiZDNjMmY7XG4gICAgY29sb3I6ICNFOUYyRUY7IH1cbiAgLmNhbGxvdXQuc21hbGwge1xuICAgIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07IH1cbiAgLmNhbGxvdXQubGFyZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtOyB9XG5cbi5kcm9wZG93bi1wYW5lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDMwMHB4O1xuICBwYWRkaW5nOiAxcmVtO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5NTkyOTI7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFOUYyRUY7XG4gIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAuZHJvcGRvd24tcGFuZS5pcy1vcGVuaW5nIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuZHJvcGRvd24tcGFuZS5pcy1vcGVuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG5cbi5kcm9wZG93bi1wYW5lLnRpbnkge1xuICB3aWR0aDogMTAwcHg7IH1cblxuLmRyb3Bkb3duLXBhbmUuc21hbGwge1xuICB3aWR0aDogMjAwcHg7IH1cblxuLmRyb3Bkb3duLXBhbmUubGFyZ2Uge1xuICB3aWR0aDogNDAwcHg7IH1cblxuLnBhZ2luYXRpb24ge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLnBhZ2luYXRpb246OmJlZm9yZSwgLnBhZ2luYXRpb246OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICAucGFnaW5hdGlvbjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5wYWdpbmF0aW9uIGxpIHtcbiAgICBtYXJnaW4tbGVmdDogMC4wNjI1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnBhZ2luYXRpb24gbGk6bGFzdC1jaGlsZCwgLnBhZ2luYXRpb24gbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wYWdpbmF0aW9uIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgLnBhZ2luYXRpb24gYSxcbiAgLnBhZ2luYXRpb24gYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5wYWdpbmF0aW9uIGE6aG92ZXIsXG4gICAgLnBhZ2luYXRpb24gYnV0dG9uOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNEQ0RGREY7IH1cbiAgLnBhZ2luYXRpb24gLmN1cnJlbnQge1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBiYWNrZ3JvdW5kOiAjMkM4QTgyO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuICAucGFnaW5hdGlvbiAuZGlzYWJsZWQge1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBjb2xvcjogIzk1OTI5MjtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgLnBhZ2luYXRpb24gLmRpc2FibGVkOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5wYWdpbmF0aW9uIC5lbGxpcHNpczo6YWZ0ZXIge1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBjb250ZW50OiAnXFwyMDI2JztcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuXG4ucGFnaW5hdGlvbi1wcmV2aW91cyBhOjpiZWZvcmUsXG4ucGFnaW5hdGlvbi1wcmV2aW91cy5kaXNhYmxlZDo6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBjb250ZW50OiBcIsKrXCI7IH1cblxuLnBhZ2luYXRpb24tbmV4dCBhOjphZnRlcixcbi5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgY29udGVudDogXCLCu1wiOyB9XG5cbi5hY2NvcmRpb24ge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICAuYWNjb3JkaW9uW2Rpc2FibGVkXSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi5hY2NvcmRpb24taXRlbTpmaXJzdC1jaGlsZCA+IDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cblxuLmFjY29yZGlvbi1pdGVtOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cblxuLmFjY29yZGlvbi10aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0RDREZERjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICMyQzhBODI7IH1cbiAgOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gLmFjY29yZGlvbi10aXRsZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEQ0RGREY7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuICAuYWNjb3JkaW9uLXRpdGxlOmhvdmVyLCAuYWNjb3JkaW9uLXRpdGxlOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRENERkRGOyB9XG4gIC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDFyZW07XG4gICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICBjb250ZW50OiBcIitcIjsgfVxuICAuaXMtYWN0aXZlID4gLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIuKAk1wiOyB9XG5cbi5hY2NvcmRpb24tY29udGVudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNEQ0RGREY7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG4gIDpsYXN0LWNoaWxkID4gLmFjY29yZGlvbi1jb250ZW50Omxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRENERkRGOyB9XG5cbi5tZWRpYS1vYmplY3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAubWVkaWEtb2JqZWN0IGltZyB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLm1lZGlhLW9iamVjdC5zdGFjay1mb3Itc21hbGwge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9IH1cblxuLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgZmxleDogMCAxIGF1dG87IH1cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07IH1cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmxhc3QtY2hpbGQ6bm90KDpudGgtY2hpbGQoMikpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtOyB9XG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnN0YWNrLWZvci1zbWFsbCAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgICAgLnN0YWNrLWZvci1zbWFsbCAubWVkaWEtb2JqZWN0LXNlY3Rpb24gaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24ubWFpbi1zZWN0aW9uIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9XG5cbi5yZXNwb25zaXZlLWVtYmVkLFxuLmZsZXgtdmlkZW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAucmVzcG9uc2l2ZS1lbWJlZCBpZnJhbWUsXG4gIC5yZXNwb25zaXZlLWVtYmVkIG9iamVjdCxcbiAgLnJlc3BvbnNpdmUtZW1iZWQgZW1iZWQsXG4gIC5yZXNwb25zaXZlLWVtYmVkIHZpZGVvLFxuICAuZmxleC12aWRlbyBpZnJhbWUsXG4gIC5mbGV4LXZpZGVvIG9iamVjdCxcbiAgLmZsZXgtdmlkZW8gZW1iZWQsXG4gIC5mbGV4LXZpZGVvIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAucmVzcG9uc2l2ZS1lbWJlZC53aWRlc2NyZWVuLFxuICAuZmxleC12aWRlby53aWRlc2NyZWVuIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlOyB9XG5cbi50YWJzIHtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjRENERkRGO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cbiAgLnRhYnM6OmJlZm9yZSwgLnRhYnM6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICAudGFiczo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi50YWJzLnZlcnRpY2FsID4gbGkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbi50YWJzLnNpbXBsZSA+IGxpID4gYSB7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLnRhYnMuc2ltcGxlID4gbGkgPiBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4udGFicy5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogIzJDOEE4MjsgfVxuICAudGFicy5wcmltYXJ5ID4gbGkgPiBhIHtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC50YWJzLnByaW1hcnkgPiBsaSA+IGE6aG92ZXIsIC50YWJzLnByaW1hcnkgPiBsaSA+IGE6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZDogIzMwOTY4ZTsgfVxuXG4udGFicy10aXRsZSB7XG4gIGZsb2F0OiByaWdodDsgfVxuICAudGFicy10aXRsZSA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogIzJDOEE4MjsgfVxuICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAudGFicy10aXRsZSA+IGEge1xuICAgICAgb3V0bGluZTogMDsgfVxuICAgIC50YWJzLXRpdGxlID4gYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgY29sb3I6ICMyNjc3NzA7IH1cbiAgICAudGFicy10aXRsZSA+IGE6Zm9jdXMsIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgYmFja2dyb3VuZDogI0RDREZERjtcbiAgICAgIGNvbG9yOiAjMkM4QTgyOyB9XG5cbi50YWJzLWNvbnRlbnQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjRENERkRGO1xuICBib3JkZXItdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsgfVxuXG4udGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0RDREZERjtcbiAgYm9yZGVyLXJpZ2h0OiAwOyB9XG5cbi50YWJzLXBhbmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTsgfVxuICAudGFicy1wYW5lbC5pcy1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5tZW51IHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm1lbnUgbGkge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLm1lbnUgYSxcbiAgLm1lbnUgLmJ1dHRvbiB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDAuN3JlbSAxcmVtOyB9XG4gIC5tZW51IGlucHV0LFxuICAubWVudSBzZWxlY3QsXG4gIC5tZW51IGEsXG4gIC5tZW51IGJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAubWVudSBpbnB1dCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5tZW51LCAubWVudS5ob3Jpem9udGFsIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAubWVudS52ZXJ0aWNhbCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5tZW51LnZlcnRpY2FsLmljb24tdG9wIGxpIGEgaW1nLFxuICAgIC5tZW51LnZlcnRpY2FsLmljb24tdG9wIGxpIGEgaSxcbiAgICAubWVudS52ZXJ0aWNhbC5pY29uLXRvcCBsaSBhIHN2ZywgLm1lbnUudmVydGljYWwuaWNvbi1ib3R0b20gbGkgYSBpbWcsXG4gICAgLm1lbnUudmVydGljYWwuaWNvbi1ib3R0b20gbGkgYSBpLFxuICAgIC5tZW51LnZlcnRpY2FsLmljb24tYm90dG9tIGxpIGEgc3ZnIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLm1lbnUuZXhwYW5kZWQgbGkge1xuICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgLm1lbnUuZXhwYW5kZWQuaWNvbi10b3AgbGkgYSBpbWcsXG4gIC5tZW51LmV4cGFuZGVkLmljb24tdG9wIGxpIGEgaSxcbiAgLm1lbnUuZXhwYW5kZWQuaWNvbi10b3AgbGkgYSBzdmcsIC5tZW51LmV4cGFuZGVkLmljb24tYm90dG9tIGxpIGEgaW1nLFxuICAubWVudS5leHBhbmRlZC5pY29uLWJvdHRvbSBsaSBhIGksXG4gIC5tZW51LmV4cGFuZGVkLmljb24tYm90dG9tIGxpIGEgc3ZnIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5tZW51LnNpbXBsZSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5tZW51LnNpbXBsZSBsaSArIGxpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMXJlbTsgfVxuICAgIC5tZW51LnNpbXBsZSBhIHtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWVudS5tZWRpdW0taG9yaXpvbnRhbCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgLm1lbnUubWVkaXVtLXZlcnRpY2FsIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5tZW51Lm1lZGl1bS1leHBhbmRlZCBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9XG4gICAgLm1lbnUubWVkaXVtLXNpbXBsZSBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWVudS5sYXJnZS1ob3Jpem9udGFsIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAubWVudS5sYXJnZS12ZXJ0aWNhbCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAubWVudS5sYXJnZS1leHBhbmRlZCBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9XG4gICAgLm1lbnUubGFyZ2Utc2ltcGxlIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLm1lbnUueGxhcmdlLWhvcml6b250YWwge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgIC5tZW51LnhsYXJnZS12ZXJ0aWNhbCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAubWVudS54bGFyZ2UtZXhwYW5kZWQgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfVxuICAgIC5tZW51LnhsYXJnZS1zaW1wbGUgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG4gIC5tZW51Lm5lc3RlZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9XG4gIC5tZW51Lmljb25zIGEge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLm1lbnUuaWNvbi10b3AgYSwgLm1lbnUuaWNvbi1yaWdodCBhLCAubWVudS5pY29uLWJvdHRvbSBhLCAubWVudS5pY29uLWxlZnQgYSB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubWVudS5pY29uLWxlZnQgbGkgYSwgLm1lbnUubmVzdGVkLmljb24tbGVmdCBsaSBhIHtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7IH1cbiAgICAubWVudS5pY29uLWxlZnQgbGkgYSBpbWcsXG4gICAgLm1lbnUuaWNvbi1sZWZ0IGxpIGEgaSxcbiAgICAubWVudS5pY29uLWxlZnQgbGkgYSBzdmcsIC5tZW51Lm5lc3RlZC5pY29uLWxlZnQgbGkgYSBpbWcsXG4gICAgLm1lbnUubmVzdGVkLmljb24tbGVmdCBsaSBhIGksXG4gICAgLm1lbnUubmVzdGVkLmljb24tbGVmdCBsaSBhIHN2ZyB7XG4gICAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTsgfVxuICAubWVudS5pY29uLXJpZ2h0IGxpIGEsIC5tZW51Lm5lc3RlZC5pY29uLXJpZ2h0IGxpIGEge1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDsgfVxuICAgIC5tZW51Lmljb24tcmlnaHQgbGkgYSBpbWcsXG4gICAgLm1lbnUuaWNvbi1yaWdodCBsaSBhIGksXG4gICAgLm1lbnUuaWNvbi1yaWdodCBsaSBhIHN2ZywgLm1lbnUubmVzdGVkLmljb24tcmlnaHQgbGkgYSBpbWcsXG4gICAgLm1lbnUubmVzdGVkLmljb24tcmlnaHQgbGkgYSBpLFxuICAgIC5tZW51Lm5lc3RlZC5pY29uLXJpZ2h0IGxpIGEgc3ZnIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTsgfVxuICAubWVudS5pY29uLXRvcCBsaSBhLCAubWVudS5uZXN0ZWQuaWNvbi10b3AgbGkgYSB7XG4gICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwOyB9XG4gICAgLm1lbnUuaWNvbi10b3AgbGkgYSBpbWcsXG4gICAgLm1lbnUuaWNvbi10b3AgbGkgYSBpLFxuICAgIC5tZW51Lmljb24tdG9wIGxpIGEgc3ZnLCAubWVudS5uZXN0ZWQuaWNvbi10b3AgbGkgYSBpbWcsXG4gICAgLm1lbnUubmVzdGVkLmljb24tdG9wIGxpIGEgaSxcbiAgICAubWVudS5uZXN0ZWQuaWNvbi10b3AgbGkgYSBzdmcge1xuICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1lbnUuaWNvbi1ib3R0b20gbGkgYSwgLm1lbnUubmVzdGVkLmljb24tYm90dG9tIGxpIGEge1xuICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDsgfVxuICAgIC5tZW51Lmljb24tYm90dG9tIGxpIGEgaW1nLFxuICAgIC5tZW51Lmljb24tYm90dG9tIGxpIGEgaSxcbiAgICAubWVudS5pY29uLWJvdHRvbSBsaSBhIHN2ZywgLm1lbnUubmVzdGVkLmljb24tYm90dG9tIGxpIGEgaW1nLFxuICAgIC5tZW51Lm5lc3RlZC5pY29uLWJvdHRvbSBsaSBhIGksXG4gICAgLm1lbnUubmVzdGVkLmljb24tYm90dG9tIGxpIGEgc3ZnIHtcbiAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZW51IC5pcy1hY3RpdmUgPiBhIHtcbiAgICBiYWNrZ3JvdW5kOiAjMkM4QTgyO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5tZW51IC5hY3RpdmUgPiBhIHtcbiAgICBiYWNrZ3JvdW5kOiAjMkM4QTgyO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5tZW51LmFsaWduLXJpZ2h0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLm1lbnUuYWxpZ24tbGVmdCBsaSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gICAgLm1lbnUuYWxpZ24tbGVmdCBsaSAuc3VibWVudSBsaSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLm1lbnUuYWxpZ24tbGVmdC52ZXJ0aWNhbCBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgIC5tZW51LmFsaWduLWxlZnQudmVydGljYWwgbGkgLnN1Ym1lbnUgbGkge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubWVudS5hbGlnbi1sZWZ0Lmljb24tdG9wIGxpIGEgaW1nLFxuICAubWVudS5hbGlnbi1sZWZ0Lmljb24tdG9wIGxpIGEgaSxcbiAgLm1lbnUuYWxpZ24tbGVmdC5pY29uLXRvcCBsaSBhIHN2ZywgLm1lbnUuYWxpZ24tbGVmdC5pY29uLWJvdHRvbSBsaSBhIGltZyxcbiAgLm1lbnUuYWxpZ24tbGVmdC5pY29uLWJvdHRvbSBsaSBhIGksXG4gIC5tZW51LmFsaWduLWxlZnQuaWNvbi1ib3R0b20gbGkgYSBzdmcge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5tZW51LmFsaWduLWxlZnQgLm5lc3RlZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5tZW51LmFsaWduLWNlbnRlciBsaSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC5tZW51LmFsaWduLWNlbnRlciBsaSAuc3VibWVudSBsaSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLm1lbnUgLm1lbnUtdGV4dCB7XG4gICAgcGFkZGluZzogMC43cmVtIDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cblxuLm1lbnUtY2VudGVyZWQgPiAubWVudSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5tZW51LWNlbnRlcmVkID4gLm1lbnUgbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAubWVudS1jZW50ZXJlZCA+IC5tZW51IGxpIC5zdWJtZW51IGxpIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4ubm8tanMgW2RhdGEtcmVzcG9uc2l2ZS1tZW51XSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvOyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMS41cmVtOyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci1jb2xvcjogIzAwMDAwMCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgbGVmdDogNXB4O1xuICByaWdodDogYXV0bztcbiAgbWFyZ2luLXRvcDogLTNweDsgfVxuXG5bZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmRyb3Bkb3duLm1lbnUgYSB7XG4gIG91dGxpbmU6IDA7IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaSA+IGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWFjdGl2ZSA+IGEge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICMyQzhBODI7IH1cblxuLm5vLWpzIC5kcm9wZG93bi5tZW51IHVsIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZHJvcGRvd24ubWVudSAubmVzdGVkLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDA7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxMDAlOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gIGxlZnQ6IDE0cHg7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMDAwMDAwIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICByaWdodDogYXV0bztcbiAgbGVmdDogNXB4OyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDZweDtcbiAgY29udGVudDogJyc7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMDAwMDAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogIzAwMDAwMCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBsZWZ0OiA1cHg7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICBsZWZ0OiAxNHB4OyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMDAwMDAwIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMDAwMDAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6ICMwMDAwMDAgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgbGVmdDogNXB4O1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICBsZWZ0OiAxNHB4OyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwMDAwMDAgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4OyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzAwMDAwMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDAwMDAwIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGxlZnQ6IDVweDtcbiAgICByaWdodDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIGxlZnQ6IDE0cHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDZweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwMDAwMDAgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4OyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogNnB4O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwMDAwMDA7IH0gfVxuXG4uZHJvcGRvd24ubWVudS5hbGlnbi1yaWdodCAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWIge1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvOyB9XG5cbi5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsIHtcbiAgd2lkdGg6IDEwMHB4OyB9XG4gIC5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsLmFsaWduLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCBhOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDVweDtcbiAgICByaWdodDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAtNnB4OyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1pbm5lciA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bzsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzk1OTI5MjtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjsgfVxuICAuZHJvcGRvd24gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgYSB7XG4gICAgcGFkZGluZzogMC43cmVtIDFyZW07IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGxlZnQ6IDE0cHg7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMDAwMDAwIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzAwMDAwMDsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgbWFyZ2luLXRvcDogLTFweDsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudSA+IGxpIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS5qcy1kcm9wZG93bi1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbmh0bWwuaXMtcmV2ZWFsLW9wZW4ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy15OiBoaWRkZW47IH1cbiAgaHRtbC5pcy1yZXZlYWwtb3Blbi56Zi1oYXMtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoOyB9XG4gIGh0bWwuaXMtcmV2ZWFsLW9wZW4gYm9keSB7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuOyB9XG5cbi5yZXZlYWwtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDA1O1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNDUpO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IH1cblxuLnJldmVhbCB7XG4gIHotaW5kZXg6IDEwMDY7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzk1OTI5MjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDEwMHB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5yZXZlYWwge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDA7IH0gfVxuICAucmV2ZWFsIC5jb2x1bW4ge1xuICAgIG1pbi13aWR0aDogMDsgfVxuICAucmV2ZWFsID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIHdpZHRoOiA2MDBweDtcbiAgICAgIG1heC13aWR0aDogODcuNXJlbTsgfSB9XG4gIC5yZXZlYWwuY29sbGFwc2Uge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsLnRpbnkge1xuICAgICAgd2lkdGg6IDMwJTtcbiAgICAgIG1heC13aWR0aDogODcuNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbC5zbWFsbCB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgbWF4LXdpZHRoOiA4Ny41cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsLmxhcmdlIHtcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgICBtYXgtd2lkdGg6IDg3LjVyZW07IH0gfVxuICAucmV2ZWFsLmZ1bGwge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDsgfSB9XG4gIC5yZXZlYWwud2l0aG91dC1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH1cblxuLmFsaWduLWxlZnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1yaWdodCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tY2VudGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmFsaWduLWp1c3RpZnkge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cblxuLmFsaWduLXNwYWNlZCB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG5cbi5hbGlnbi1sZWZ0LnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1yaWdodC52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG5cbi5hbGlnbi1jZW50ZXIudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi5hbGlnbi10b3Age1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tc2VsZi10b3Age1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0OyB9XG5cbi5hbGlnbi1ib3R0b20ge1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cblxuLmFsaWduLXNlbGYtYm90dG9tIHtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQ7IH1cblxuLmFsaWduLW1pZGRsZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLmFsaWduLXNlbGYtbWlkZGxlIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyOyB9XG5cbi5hbGlnbi1zdHJldGNoIHtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cblxuLmFsaWduLXNlbGYtc3RyZXRjaCB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7IH1cblxuLmFsaWduLWNlbnRlci1taWRkbGUge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYWxpZ24tY29udGVudDogY2VudGVyOyB9XG5cbi5zbWFsbC1vcmRlci0xIHtcbiAgb3JkZXI6IDE7IH1cblxuLnNtYWxsLW9yZGVyLTIge1xuICBvcmRlcjogMjsgfVxuXG4uc21hbGwtb3JkZXItMyB7XG4gIG9yZGVyOiAzOyB9XG5cbi5zbWFsbC1vcmRlci00IHtcbiAgb3JkZXI6IDQ7IH1cblxuLnNtYWxsLW9yZGVyLTUge1xuICBvcmRlcjogNTsgfVxuXG4uc21hbGwtb3JkZXItNiB7XG4gIG9yZGVyOiA2OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLm1lZGl1bS1vcmRlci0yIHtcbiAgICBvcmRlcjogMjsgfVxuICAubWVkaXVtLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC5tZWRpdW0tb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLm1lZGl1bS1vcmRlci01IHtcbiAgICBvcmRlcjogNTsgfVxuICAubWVkaXVtLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC5sYXJnZS1vcmRlci0yIHtcbiAgICBvcmRlcjogMjsgfVxuICAubGFyZ2Utb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLmxhcmdlLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC5sYXJnZS1vcmRlci01IHtcbiAgICBvcmRlcjogNTsgfVxuICAubGFyZ2Utb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnhsYXJnZS1vcmRlci0yIHtcbiAgICBvcmRlcjogMjsgfVxuICAueGxhcmdlLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC54bGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLnhsYXJnZS1vcmRlci01IHtcbiAgICBvcmRlcjogNTsgfVxuICAueGxhcmdlLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9IH1cblxuLmZsZXgtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDsgfVxuXG4uZmxleC1jaGlsZC1hdXRvIHtcbiAgZmxleDogMSAxIGF1dG87IH1cblxuLmZsZXgtY2hpbGQtZ3JvdyB7XG4gIGZsZXg6IDEgMCBhdXRvOyB9XG5cbi5mbGV4LWNoaWxkLXNocmluayB7XG4gIGZsZXg6IDAgMSBhdXRvOyB9XG5cbi5mbGV4LWRpci1yb3cge1xuICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG5cbi5mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuXG4uZmxleC1kaXItY29sdW1uIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG4uZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87IH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5tZWRpdW0tZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87IH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87IH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfVxuICAubGFyZ2UtZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5sYXJnZS1mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gIC5sYXJnZS1mbGV4LWRpci1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLmxhcmdlLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLnhsYXJnZS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gIC54bGFyZ2UtZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAueGxhcmdlLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfVxuICAueGxhcmdlLWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAueGxhcmdlLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLnhsYXJnZS1mbGV4LWRpci1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLnhsYXJnZS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9IH1cblxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4udmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDBlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc2hvdy1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0tb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhpZGUtZm9yLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5oaWRlLWZvci14bGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pIHtcbiAgLnNob3ctZm9yLXhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtYXgtd2lkdGg6IDg5Ljk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLXhsYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5zaG93LWZvci14bGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnNob3ctZm9yLXNyLFxuLnNob3ctb24tZm9jdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKSAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XG5cbi5zaG93LW9uLWZvY3VzOmFjdGl2ZSwgLnNob3ctb24tZm9jdXM6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDsgfVxuXG4uc2hvdy1mb3ItbGFuZHNjYXBlLFxuLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLmhpZGUtZm9yLWxhbmRzY2FwZSxcbi5zaG93LWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cblxuLnNob3ctZm9yLWRhcmstbW9kZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmhpZGUtZm9yLWRhcmstbW9kZSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAuc2hvdy1mb3ItZGFyay1tb2RlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIC5oaWRlLWZvci1kYXJrLW1vZGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi5zaG93LWZvci1pZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgLnNob3ctZm9yLWllIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIC5oaWRlLWZvci1pZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnNob3ctZm9yLXN0aWNreSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmlzLXN0dWNrIC5zaG93LWZvci1zdGlja3kge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uaXMtc3R1Y2sgLmhpZGUtZm9yLXN0aWNreSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmZvbnQtd2lkZSB7XG4gIGxldHRlci1zcGFjaW5nOiAwLjI1cmVtOyB9XG5cbi5mb250LW5vcm1hbCB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cblxuLmZvbnQtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5mb250LWl0YWxpYyB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tMCB7XG4gIG1hcmdpbjogMHJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tdG9wLTAge1xuICBtYXJnaW4tdG9wOiAwcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1yaWdodC0wIHtcbiAgbWFyZ2luLXJpZ2h0OiAwcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1ib3R0b20tMCB7XG4gIG1hcmdpbi1ib3R0b206IDByZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLWxlZnQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1ob3Jpem9udGFsLTAge1xuICBtYXJnaW4tcmlnaHQ6IDByZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDByZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLXZlcnRpY2FsLTAge1xuICBtYXJnaW4tdG9wOiAwcmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDByZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy0wIHtcbiAgcGFkZGluZzogMHJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLXRvcC0wIHtcbiAgcGFkZGluZy10b3A6IDByZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1yaWdodC0wIHtcbiAgcGFkZGluZy1yaWdodDogMHJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLWJvdHRvbS0wIHtcbiAgcGFkZGluZy1ib3R0b206IDByZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1sZWZ0LTAge1xuICBwYWRkaW5nLWxlZnQ6IDByZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1ob3Jpem9udGFsLTAge1xuICBwYWRkaW5nLXJpZ2h0OiAwcmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMHJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLXZlcnRpY2FsLTAge1xuICBwYWRkaW5nLXRvcDogMHJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWJvdHRvbTogMHJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tMSB7XG4gIG1hcmdpbjogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tdG9wLTEge1xuICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1yaWdodC0xIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1ib3R0b20tMSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLWxlZnQtMSB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1ob3Jpem9udGFsLTEge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLXZlcnRpY2FsLTEge1xuICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy0xIHtcbiAgcGFkZGluZzogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLXRvcC0xIHtcbiAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1yaWdodC0xIHtcbiAgcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLWJvdHRvbS0xIHtcbiAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1sZWZ0LTEge1xuICBwYWRkaW5nLWxlZnQ6IDFyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1ob3Jpem9udGFsLTEge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLXZlcnRpY2FsLTEge1xuICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tMiB7XG4gIG1hcmdpbjogMnJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tdG9wLTIge1xuICBtYXJnaW4tdG9wOiAycmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1yaWdodC0yIHtcbiAgbWFyZ2luLXJpZ2h0OiAycmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1ib3R0b20tMiB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLWxlZnQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAycmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1ob3Jpem9udGFsLTIge1xuICBtYXJnaW4tcmlnaHQ6IDJyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLXZlcnRpY2FsLTIge1xuICBtYXJnaW4tdG9wOiAycmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy0yIHtcbiAgcGFkZGluZzogMnJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLXRvcC0yIHtcbiAgcGFkZGluZy10b3A6IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1yaWdodC0yIHtcbiAgcGFkZGluZy1yaWdodDogMnJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLWJvdHRvbS0yIHtcbiAgcGFkZGluZy1ib3R0b206IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1sZWZ0LTIge1xuICBwYWRkaW5nLWxlZnQ6IDJyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1ob3Jpem9udGFsLTIge1xuICBwYWRkaW5nLXJpZ2h0OiAycmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMnJlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLXZlcnRpY2FsLTIge1xuICBwYWRkaW5nLXRvcDogMnJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tMyB7XG4gIG1hcmdpbjogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5tYXJnaW4tdG9wLTMge1xuICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1yaWdodC0zIHtcbiAgbWFyZ2luLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1ib3R0b20tMyB7XG4gIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLWxlZnQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAzcmVtICFpbXBvcnRhbnQ7IH1cblxuLm1hcmdpbi1ob3Jpem9udGFsLTMge1xuICBtYXJnaW4tcmlnaHQ6IDNyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ubWFyZ2luLXZlcnRpY2FsLTMge1xuICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy0zIHtcbiAgcGFkZGluZzogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLXRvcC0zIHtcbiAgcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1yaWdodC0zIHtcbiAgcGFkZGluZy1yaWdodDogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLWJvdHRvbS0zIHtcbiAgcGFkZGluZy1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1sZWZ0LTMge1xuICBwYWRkaW5nLWxlZnQ6IDNyZW0gIWltcG9ydGFudDsgfVxuXG4ucGFkZGluZy1ob3Jpem9udGFsLTMge1xuICBwYWRkaW5nLXJpZ2h0OiAzcmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5wYWRkaW5nLXZlcnRpY2FsLTMge1xuICBwYWRkaW5nLXRvcDogM3JlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi5zZXBhcmF0b3ItY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgLnNlcGFyYXRvci1jZW50ZXI6OmJlZm9yZSwgLnNlcGFyYXRvci1jZW50ZXI6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICAuc2VwYXJhdG9yLWNlbnRlcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zZXBhcmF0b3ItY2VudGVyOjphZnRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDNyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMC4xMjVyZW0gc29saWQgIzJDOEE4MjtcbiAgICBtYXJnaW46IDFyZW0gYXV0byAwOyB9XG5cbi5zZXBhcmF0b3ItbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAuc2VwYXJhdG9yLWxlZnQ6OmJlZm9yZSwgLnNlcGFyYXRvci1sZWZ0OjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnNlcGFyYXRvci1sZWZ0OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNlcGFyYXRvci1sZWZ0OjphZnRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDNyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMC4xMjVyZW0gc29saWQgIzJDOEE4MjtcbiAgICBtYXJnaW46IDFyZW0gYXV0byAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuLnNlcGFyYXRvci1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgLnNlcGFyYXRvci1yaWdodDo6YmVmb3JlLCAuc2VwYXJhdG9yLXJpZ2h0OjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnNlcGFyYXRvci1yaWdodDo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zZXBhcmF0b3ItcmlnaHQ6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBib3JkZXItYm90dG9tOiAwLjEyNXJlbSBzb2xpZCAjMkM4QTgyO1xuICAgIG1hcmdpbjogMXJlbSBhdXRvIDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTI1IHtcbiAgd2lkdGg6IDI1JSAhaW1wb3J0YW50OyB9XG5cbi53aWR0aC01MCB7XG4gIHdpZHRoOiA1MCUgIWltcG9ydGFudDsgfVxuXG4ud2lkdGgtNzUge1xuICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7IH1cblxuLndpZHRoLTEwMCB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuLmhlaWdodC0yNSB7XG4gIGhlaWdodDogMjUlICFpbXBvcnRhbnQ7IH1cblxuLmhlaWdodC01MCB7XG4gIGhlaWdodDogNTAlICFpbXBvcnRhbnQ7IH1cblxuLmhlaWdodC03NSB7XG4gIGhlaWdodDogNzUlICFpbXBvcnRhbnQ7IH1cblxuLmhlaWdodC0xMDAge1xuICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4ubWF4LXdpZHRoLTEwMCB7XG4gIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbi5tYXgtaGVpZ2h0LTEwMCB7XG4gIG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4ucG9zaXRpb24tc3RhdGljIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50OyB9XG5cbi5wb3NpdGlvbi1yZWxhdGl2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50OyB9XG5cbi5wb3NpdGlvbi1hYnNvbHV0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50OyB9XG5cbi5wb3NpdGlvbi1maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50OyB9XG5cbi5wb3NpdGlvbi1maXhlZC10b3Age1xuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbiAgdG9wOiAwcmVtICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiAwcmVtICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDByZW0gIWltcG9ydGFudDtcbiAgei1pbmRleDogOTc1OyB9XG5cbi5wb3NpdGlvbi1maXhlZC1ib3R0b20ge1xuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbiAgcmlnaHQ6IDByZW0gIWltcG9ydGFudDtcbiAgYm90dG9tOiAwcmVtICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDByZW0gIWltcG9ydGFudDtcbiAgei1pbmRleDogOTc1OyB9XG5cbi8qIFNsaWRlciAqL1xuLyogSWNvbnMgKi9cbi8qIEFycm93cyAqL1xuLnNsaWNrLXByZXYsXG4uc2xpY2stbmV4dCB7XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiA2OHB4O1xuICB3aWR0aDogNDhweDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGZvbnQtc2l6ZTogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xuICBvdXRsaW5lOiBub25lO1xuICB6LWluZGV4OiAyOyB9XG4gIC5zbGljay1wcmV2OmhvdmVyLCAuc2xpY2stcHJldjpmb2N1cyxcbiAgLnNsaWNrLW5leHQ6aG92ZXIsXG4gIC5zbGljay1uZXh0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5zbGljay1wcmV2OmhvdmVyOmJlZm9yZSwgLnNsaWNrLXByZXY6Zm9jdXM6YmVmb3JlLFxuICAgIC5zbGljay1uZXh0OmhvdmVyOmJlZm9yZSxcbiAgICAuc2xpY2stbmV4dDpmb2N1czpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGNvbG9yOiAjMkM4QTgyOyB9XG4gIC5zbGljay1wcmV2LnNsaWNrLWRpc2FibGVkOmJlZm9yZSxcbiAgLnNsaWNrLW5leHQuc2xpY2stZGlzYWJsZWQ6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiAwLjU7IH1cbiAgLnNsaWNrLXByZXY6YmVmb3JlLFxuICAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgIHRleHQtc2hhZG93OiAwcHggMnB4IHJnYmEoMCwgNTEsIDEwMiwgMC40KTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgZm9udC1zaXplOiAzLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbi5zbGljay1wcmV2IHtcbiAgbGVmdDogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDRweDsgfVxuICBbZGlyPVwicnRsXCJdIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwOyB9XG4gIC5zbGljay1wcmV2OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29udGVudDogXCLupIJcIjsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnNsaWNrLXByZXY6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgY29udGVudDogXCLupINcIjsgfVxuXG4uc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiAwO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDsgfVxuICBbZGlyPVwicnRsXCJdIC5zbGljay1uZXh0IHtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29udGVudDogXCLupINcIjsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgY29udGVudDogXCLupIJcIjsgfVxuXG4vKiBEb3RzICovXG4uc2xpY2stZG90cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAtMjVweDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTsgfVxuICAuc2xpY2stZG90cyBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgbWFyZ2luOiAwIDVweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbiB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgbGluZS1oZWlnaHQ6IDBweDtcbiAgICAgIGZvbnQtc2l6ZTogMHB4O1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAuc2xpY2stZG90cyBsaSBidXR0b246aG92ZXIsIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgICAgICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmhvdmVyOmJlZm9yZSwgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmZvY3VzOmJlZm9yZSB7XG4gICAgICAgICAgb3BhY2l0eTogMTsgfVxuICAgICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBjb250ZW50OiBcIu6klFwiO1xuICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY29sb3I6ICNFOEU4RTg7XG4gICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cbiAgICAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG4gICAgICBjb2xvcjogIzI1M0MzQTtcbiAgICAgIG9wYWNpdHk6IDE7IH1cblxuLyogU2xpZGVyICovXG4uc2xpY2stc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5zbGljay1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5zbGljay1saXN0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5zbGljay1saXN0LmRyYWdnaW5nIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY3Vyc29yOiBoYW5kOyB9XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4uc2xpY2stdHJhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLnNsaWNrLXRyYWNrOmJlZm9yZSwgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5zbGljay10cmFjazphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXRyYWNrIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBkaXNwbGF5OiBub25lOyB9XG4gIFtkaXI9XCJydGxcIl0gLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLnNsaWNrLXNsaWRlIGltZyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5zbGljay1zbGlkZS5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuc2xpY2stc2xpZGUuZHJhZ2dpbmcgaW1nIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLXNsaWRlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2xpY2stbG9hZGluZyAuc2xpY2stc2xpZGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAuc2xpY2stdmVydGljYWwgLnNsaWNrLXNsaWRlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cblxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLypcbj09IG1hbGlodSBqcXVlcnkgY3VzdG9tIHNjcm9sbGJhciBwbHVnaW4gPT1cblBsdWdpbiBVUkk6IGh0dHA6Ly9tYW5vcy5tYWxpaHUuZ3IvanF1ZXJ5LWN1c3RvbS1jb250ZW50LXNjcm9sbGVyXG4qL1xuLypcbkNPTlRFTlRTOiBcblx0MS4gQkFTSUMgU1RZTEUgLSBQbHVnaW4ncyBiYXNpYy9lc3NlbnRpYWwgQ1NTIHByb3BlcnRpZXMgKG5vcm1hbGx5LCBzaG91bGQgbm90IGJlIGVkaXRlZCkuIFxuXHQyLiBWRVJUSUNBTCBTQ1JPTExCQVIgLSBQb3NpdGlvbmluZyBhbmQgZGltZW5zaW9ucyBvZiB2ZXJ0aWNhbCBzY3JvbGxiYXIuIFxuXHQzLiBIT1JJWk9OVEFMIFNDUk9MTEJBUiAtIFBvc2l0aW9uaW5nIGFuZCBkaW1lbnNpb25zIG9mIGhvcml6b250YWwgc2Nyb2xsYmFyLlxuXHQ0LiBWRVJUSUNBTCBBTkQgSE9SSVpPTlRBTCBTQ1JPTExCQVJTIC0gUG9zaXRpb25pbmcgYW5kIGRpbWVuc2lvbnMgb2YgMi1heGlzIHNjcm9sbGJhcnMuIFxuXHQ1LiBUUkFOU0lUSU9OUyAtIENTUzMgdHJhbnNpdGlvbnMgZm9yIGhvdmVyIGV2ZW50cywgYXV0by1leHBhbmRlZCBhbmQgYXV0by1oaWRkZW4gc2Nyb2xsYmFycy4gXG5cdDYuIFNDUk9MTEJBUiBDT0xPUlMsIE9QQUNJVFkgQU5EIEJBQ0tHUk9VTkRTIFxuXHRcdDYuMSBUSEVNRVMgLSBTY3JvbGxiYXIgY29sb3JzLCBvcGFjaXR5LCBkaW1lbnNpb25zLCBiYWNrZ3JvdW5kcyBldGMuIHZpYSByZWFkeS10by11c2UgdGhlbWVzLlxuKi9cbi8qIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLiBCQVNJQyBTVFlMRSAgXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG4ubUN1c3RvbVNjcm9sbGJhciB7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBpbmNoLXpvb207XG4gIHRvdWNoLWFjdGlvbjogcGluY2gtem9vbTtcbiAgLyogZGlyZWN0IHBvaW50ZXIgZXZlbnRzIHRvIGpzICovIH1cblxuLm1DdXN0b21TY3JvbGxiYXIubUNTX25vX3Njcm9sbGJhciwgLm1DdXN0b21TY3JvbGxiYXIubUNTX3RvdWNoX2FjdGlvbiB7XG4gIC1tcy10b3VjaC1hY3Rpb246IGF1dG87XG4gIHRvdWNoLWFjdGlvbjogYXV0bzsgfVxuXG4ubUN1c3RvbVNjcm9sbEJveCB7XG4gIC8qIGNvbnRhaW5zIHBsdWdpbidzIG1hcmt1cCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvdXRsaW5lOiBub25lO1xuICBkaXJlY3Rpb246IGx0cjsgfVxuXG4ubUNTQl9jb250YWluZXIge1xuICAvKiBjb250YWlucyB0aGUgb3JpZ2luYWwgY29udGVudCAqL1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4yLiBWRVJUSUNBTCBTQ1JPTExCQVIgXG55LWF4aXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lciB7XG4gIG1hcmdpbi1yaWdodDogMzBweDsgfVxuXG4ubUNTQl9jb250YWluZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbiB7XG4gIG1hcmdpbi1yaWdodDogMDsgfVxuXG4vKiBub24tdmlzaWJsZSBzY3JvbGxiYXIgKi9cbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lciB7XG4gIC8qIFJUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAzMHB4OyB9XG5cbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lci5tQ1Nfbm9fc2Nyb2xsYmFyX3kubUNTX3lfaGlkZGVuIHtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLyogUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXG4ubUNTQl9zY3JvbGxUb29scyB7XG4gIC8qIGNvbnRhaW5zIHNjcm9sbGJhciBtYXJrdXAgKGRyYWdnYWJsZSBlbGVtZW50LCBkcmFnZ2VyIHJhaWwsIGJ1dHRvbnMgZXRjLikgKi9cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7IH1cblxuLm1DU0Jfb3V0c2lkZSArIC5tQ1NCX3Njcm9sbFRvb2xzIHtcbiAgcmlnaHQ6IC0yNnB4OyB9XG5cbi8qIHNjcm9sbGJhciBwb3NpdGlvbjogb3V0c2lkZSAqL1xuLm1DUy1kaXItcnRsID4gLm1DU0JfaW5zaWRlID4gLm1DU0Jfc2Nyb2xsVG9vbHMsXG4ubUNTLWRpci1ydGwgPiAubUNTQl9vdXRzaWRlICsgLm1DU0Jfc2Nyb2xsVG9vbHMge1xuICAvKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7IH1cblxuLm1DUy1kaXItcnRsID4gLm1DU0Jfb3V0c2lkZSArIC5tQ1NCX3Njcm9sbFRvb2xzIHtcbiAgbGVmdDogLTI2cHg7IH1cblxuLyogUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyIChzY3JvbGxiYXIgcG9zaXRpb246IG91dHNpZGUpICovXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyQ29udGFpbmVyIHtcbiAgLyogY29udGFpbnMgdGhlIGRyYWdnYWJsZSBlbGVtZW50IGFuZCBkcmFnZ2VyIHJhaWwgbWFya3VwICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgYSArIC5tQ1NCX2RyYWdnZXJDb250YWluZXIge1xuICBtYXJnaW46IDIwcHggMDsgfVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIHdpZHRoOiAycHg7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTZweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAxNnB4O1xuICBib3JkZXItcmFkaXVzOiAxNnB4OyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIge1xuICAvKiB0aGUgZHJhZ2dhYmxlIGVsZW1lbnQgKi9cbiAgY3Vyc29yOiBwb2ludGVyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzMHB4O1xuICAvKiBtaW5pbXVtIGRyYWdnZXIgaGVpZ2h0ICovXG4gIHotaW5kZXg6IDE7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIC8qIHRoZSBkcmFnZ2VyIGVsZW1lbnQgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogNHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMTZweDtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgd2lkdGg6IDEycHg7XG4gIC8qIGF1dG8tZXhwYW5kZWQgc2Nyb2xsYmFyICovIH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCArIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWwge1xuICB3aWR0aDogOHB4O1xuICAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqLyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMjBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMCBhdXRvO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biB7XG4gIGJvdHRvbTogMDsgfVxuXG4vKiBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMy4gSE9SSVpPTlRBTCBTQ1JPTExCQVIgXG54LWF4aXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi5tQ1NCX2hvcml6b250YWwubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXIge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLm1DU0JfaG9yaXpvbnRhbC5tQ1NCX291dHNpZGUgPiAubUNTQl9jb250YWluZXIge1xuICBtaW4taGVpZ2h0OiAxMDAlOyB9XG5cbi5tQ1NCX2hvcml6b250YWwgPiAubUNTQl9jb250YWluZXIubUNTX25vX3Njcm9sbGJhcl94Lm1DU194X2hpZGRlbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLyogbm9uLXZpc2libGUgc2Nyb2xsYmFyICovXG4ubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwge1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiAxNnB4O1xuICB0b3A6IGF1dG87XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7IH1cblxuLm1DdXN0b21TY3JvbGxCb3ggKyAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwsXG4ubUN1c3RvbVNjcm9sbEJveCArIC5tQ1NCX3Njcm9sbFRvb2xzICsgLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIHtcbiAgYm90dG9tOiAtMjZweDsgfVxuXG4vKiBzY3JvbGxiYXIgcG9zaXRpb246IG91dHNpZGUgKi9cbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCBhICsgLm1DU0JfZHJhZ2dlckNvbnRhaW5lciB7XG4gIG1hcmdpbjogMCAyMHB4OyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDRweDtcbiAgbWFyZ2luOiA2cHggMDsgfVxuXG4ubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciB7XG4gIHdpZHRoOiAzMHB4O1xuICAvKiBtaW5pbXVtIGRyYWdnZXIgd2lkdGggKi9cbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNHB4O1xuICBtYXJnaW46IDZweCBhdXRvOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGhlaWdodDogMTJweDtcbiAgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi9cbiAgbWFyZ2luOiAycHggYXV0bzsgfVxuXG4ubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBoZWlnaHQ6IDhweDtcbiAgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi9cbiAgbWFyZ2luOiA0cHggMDsgfVxuXG4ubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfYnV0dG9uTGVmdCxcbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9idXR0b25SaWdodCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMCBhdXRvO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2J1dHRvbkxlZnQge1xuICBsZWZ0OiAwOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9idXR0b25SaWdodCB7XG4gIHJpZ2h0OiAwOyB9XG5cbi8qIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG40LiBWRVJUSUNBTCBBTkQgSE9SSVpPTlRBTCBTQ1JPTExCQVJTIFxueXgtYXhpcyBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIG1hcmdpbi1yaWdodDogMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuXG4ubUNTQl9jb250YWluZXJfd3JhcHBlciA+IC5tQ1NCX2NvbnRhaW5lciB7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4ubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsID4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCB7XG4gIGJvdHRvbTogMjBweDsgfVxuXG4ubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsID4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIHtcbiAgcmlnaHQ6IDIwcHg7IH1cblxuLyogbm9uLXZpc2libGUgaG9yaXpvbnRhbCBzY3JvbGxiYXIgKi9cbi5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyLm1DU19ub19zY3JvbGxiYXJfeC5tQ1NfeF9oaWRkZW4gKyAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsIHtcbiAgYm90dG9tOiAwOyB9XG5cbi8qIG5vbi12aXNpYmxlIHZlcnRpY2FsIHNjcm9sbGJhci9SVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cbi5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyLm1DU19ub19zY3JvbGxiYXJfeS5tQ1NfeV9oaWRkZW4gKyAubUNTQl9zY3JvbGxUb29scyB+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCxcbi5tQ1MtZGlyLXJ0bCA+IC5tQ3VzdG9tU2Nyb2xsQm94Lm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbC5tQ1NCX2luc2lkZSA+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCB7XG4gIHJpZ2h0OiAwOyB9XG5cbi8qIFJUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xuLm1DUy1kaXItcnRsID4gLm1DdXN0b21TY3JvbGxCb3gubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIHtcbiAgbGVmdDogMjBweDsgfVxuXG4vKiBub24tdmlzaWJsZSBzY3JvbGxiYXIvUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXG4ubUNTLWRpci1ydGwgPiAubUN1c3RvbVNjcm9sbEJveC5tQ1NCX3ZlcnRpY2FsX2hvcml6b250YWwubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3kubUNTX3lfaGlkZGVuICsgLm1DU0Jfc2Nyb2xsVG9vbHMgfiAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwge1xuICBsZWZ0OiAwOyB9XG5cbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyIHtcbiAgLyogUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDMwcHg7IH1cblxuLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbiA+IC5tQ1NCX2NvbnRhaW5lciB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl94Lm1DU194X2hpZGRlbiA+IC5tQ1NCX2NvbnRhaW5lciB7XG4gIHBhZGRpbmctYm90dG9tOiAwOyB9XG5cbi5tQ3VzdG9tU2Nyb2xsQm94Lm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyLm1DU19ub19zY3JvbGxiYXJfeS5tQ1NfeV9oaWRkZW4ge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIC8qIG5vbi12aXNpYmxlIHNjcm9sbGJhciAqL1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4vKiBub24tdmlzaWJsZSBob3Jpem9udGFsIHNjcm9sbGJhciAqL1xuLm1DdXN0b21TY3JvbGxCb3gubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl94Lm1DU194X2hpZGRlbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLyogXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjUuIFRSQU5TSVRJT05TICBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi5tQ1NCX3Njcm9sbFRvb2xzLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bixcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDtcbiAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogd2lkdGggLjJzIGVhc2Utb3V0IC4ycywgaGVpZ2h0IC4ycyBlYXNlLW91dCAuMnMsICBtYXJnaW4tbGVmdCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tcmlnaHQgLjJzIGVhc2Utb3V0IC4ycywgIG1hcmdpbi10b3AgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLWJvdHRvbSAuMnMgZWFzZS1vdXQgLjJzLCBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogd2lkdGggLjJzIGVhc2Utb3V0IC4ycywgaGVpZ2h0IC4ycyBlYXNlLW91dCAuMnMsICBtYXJnaW4tbGVmdCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tcmlnaHQgLjJzIGVhc2Utb3V0IC4ycywgIG1hcmdpbi10b3AgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLWJvdHRvbSAuMnMgZWFzZS1vdXQgLjJzLCBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IHdpZHRoIC4ycyBlYXNlLW91dCAuMnMsIGhlaWdodCAuMnMgZWFzZS1vdXQgLjJzLCAgbWFyZ2luLWxlZnQgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLXJpZ2h0IC4ycyBlYXNlLW91dCAuMnMsICBtYXJnaW4tdG9wIC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1ib3R0b20gLjJzIGVhc2Utb3V0IC4ycywgb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiB3aWR0aCAuMnMgZWFzZS1vdXQgLjJzLCBoZWlnaHQgLjJzIGVhc2Utb3V0IC4ycywgIG1hcmdpbi1sZWZ0IC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1yaWdodCAuMnMgZWFzZS1vdXQgLjJzLCAgbWFyZ2luLXRvcCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tYm90dG9tIC4ycyBlYXNlLW91dCAuMnMsIG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDsgfVxuXG4vKiBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuNi4gU0NST0xMQkFSIENPTE9SUywgT1BBQ0lUWSBBTkQgQkFDS0dST1VORFMgIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLyogXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG42LjEgVEhFTUVTIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cbi8qIGRlZmF1bHQgdGhlbWUgKFwibGlnaHRcIikgKi9cbi5tQ1NCX3Njcm9sbFRvb2xzIHtcbiAgb3BhY2l0eTogMC43NTtcbiAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NzUpXCI7XG4gIC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjsgfVxuXG4ubUNTLWF1dG9IaWRlID4gLm1DdXN0b21TY3JvbGxCb3ggPiAubUNTQl9zY3JvbGxUb29scyxcbi5tQ1MtYXV0b0hpZGUgPiAubUN1c3RvbVNjcm9sbEJveCB+IC5tQ1NCX3Njcm9sbFRvb2xzIHtcbiAgb3BhY2l0eTogMDtcbiAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MClcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTApXCI7IH1cblxuLm1DdXN0b21TY3JvbGxiYXIgPiAubUN1c3RvbVNjcm9sbEJveCA+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnLFxuLm1DdXN0b21TY3JvbGxiYXIgPiAubUN1c3RvbVNjcm9sbEJveCB+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnLFxuLm1DdXN0b21TY3JvbGxCb3g6aG92ZXIgPiAubUNTQl9zY3JvbGxUb29scyxcbi5tQ3VzdG9tU2Nyb2xsQm94OmhvdmVyIH4gLm1DU0Jfc2Nyb2xsVG9vbHMsXG4ubUNTLWF1dG9IaWRlOmhvdmVyID4gLm1DdXN0b21TY3JvbGxCb3ggPiAubUNTQl9zY3JvbGxUb29scyxcbi5tQ1MtYXV0b0hpZGU6aG92ZXIgPiAubUN1c3RvbVNjcm9sbEJveCB+IC5tQ1NCX3Njcm9sbFRvb2xzIHtcbiAgb3BhY2l0eTogMTtcbiAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MTAwKVwiO1xuICAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MTAwKVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT00MClcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTQwKVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTc1KVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT04NSlcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTg1KVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT05MClcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTkwKVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bixcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChtQ1NCX2J1dHRvbnMucG5nKTtcbiAgLyogY3NzIHNwcml0ZXMgKi9cbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgb3BhY2l0eTogMC40O1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT00MClcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTQwKVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xuICAvKiBcbiAgICBzcHJpdGVzIGxvY2F0aW9ucyBcbiAgICBsaWdodDogMCAwLCAtMTZweCAwLCAtMzJweCAwLCAtNDhweCAwLCAwIC03MnB4LCAtMTZweCAtNzJweCwgLTMycHggLTcycHhcbiAgICBkYXJrOiAtODBweCAwLCAtOTZweCAwLCAtMTEycHggMCwgLTEyOHB4IDAsIC04MHB4IC03MnB4LCAtOTZweCAtNzJweCwgLTExMnB4IC03MnB4XG4gICAgKi8gfVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjBweDtcbiAgLyogXG4gICAgc3ByaXRlcyBsb2NhdGlvbnNcbiAgICBsaWdodDogMCAtMjBweCwgLTE2cHggLTIwcHgsIC0zMnB4IC0yMHB4LCAtNDhweCAtMjBweCwgMCAtOTJweCwgLTE2cHggLTkycHgsIC0zMnB4IC05MnB4XG4gICAgZGFyazogLTgwcHggLTIwcHgsIC05NnB4IC0yMHB4LCAtMTEycHggLTIwcHgsIC0xMjhweCAtMjBweCwgLTgwcHggLTkycHgsIC05NnB4IC05MnB4LCAtMTEyIC05MnB4XG4gICAgKi8gfVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNDBweDtcbiAgLyogXG4gICAgc3ByaXRlcyBsb2NhdGlvbnMgXG4gICAgbGlnaHQ6IDAgLTQwcHgsIC0yMHB4IC00MHB4LCAtNDBweCAtNDBweCwgLTYwcHggLTQwcHgsIDAgLTExMnB4LCAtMjBweCAtMTEycHgsIC00MHB4IC0xMTJweFxuICAgIGRhcms6IC04MHB4IC00MHB4LCAtMTAwcHggLTQwcHgsIC0xMjBweCAtNDBweCwgLTE0MHB4IC00MHB4LCAtODBweCAtMTEycHgsIC0xMDBweCAtMTEycHgsIC0xMjBweCAtMTEycHhcbiAgICAqLyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNTZweDtcbiAgLyogXG4gICAgc3ByaXRlcyBsb2NhdGlvbnMgXG4gICAgbGlnaHQ6IDAgLTU2cHgsIC0yMHB4IC01NnB4LCAtNDBweCAtNTZweCwgLTYwcHggLTU2cHgsIDAgLTEyOHB4LCAtMjBweCAtMTI4cHgsIC00MHB4IC0xMjhweFxuICAgIGRhcms6IC04MHB4IC01NnB4LCAtMTAwcHggLTU2cHgsIC0xMjBweCAtNTZweCwgLTE0MHB4IC01NnB4LCAtODBweCAtMTI4cHgsIC0xMDBweCAtMTI4cHgsIC0xMjBweCAtMTI4cHhcbiAgICAqLyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwOmhvdmVyLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bjpob3Zlcixcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQ6aG92ZXIsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodDpob3ZlciB7XG4gIG9wYWNpdHk6IDAuNzU7XG4gIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTc1KVwiO1xuICAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NzUpXCI7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXA6YWN0aXZlLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bjphY3RpdmUsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0OmFjdGl2ZSxcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0OmFjdGl2ZSB7XG4gIG9wYWNpdHk6IDAuOTtcbiAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9OTApXCI7XG4gIC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT05MClcIjsgfVxuXG4vKiB0aGVtZTogXCJkYXJrXCIgKi9cbi5tQ1MtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjE1KTsgfVxuXG4ubUNTLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTsgfVxuXG4ubUNTLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTsgfVxuXG4ubUNTLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTsgfVxuXG4ubUNTLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IDA7IH1cblxuLm1DUy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0yMHB4OyB9XG5cbi5tQ1MtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtNDBweDsgfVxuXG4ubUNTLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC01NnB4OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIHRoZW1lOiBcImxpZ2h0LTJcIiwgXCJkYXJrLTJcIiAqL1xuLm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWRhcmstMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgd2lkdGg6IDRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDFweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAxcHg7XG4gIGJvcmRlci1yYWRpdXM6IDFweDsgfVxuXG4ubUNTLWxpZ2h0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgd2lkdGg6IDRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxcHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMXB4O1xuICBib3JkZXItcmFkaXVzOiAxcHg7IH1cblxuLm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtbGlnaHQtMi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNHB4O1xuICBtYXJnaW46IDZweCBhdXRvOyB9XG5cbi5tQ1MtbGlnaHQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpOyB9XG5cbi5tQ1MtbGlnaHQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpOyB9XG5cbi5tQ1MtbGlnaHQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggMDsgfVxuXG4ubUNTLWxpZ2h0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTIwcHg7IH1cblxuLm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC00MHB4IC00MHB4OyB9XG5cbi5tQ1MtbGlnaHQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggLTU2cHg7IH1cblxuLyogdGhlbWU6IFwiZGFyay0yXCIgKi9cbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMXB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDFweDtcbiAgYm9yZGVyLXJhZGl1czogMXB4OyB9XG5cbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMXB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDFweDtcbiAgYm9yZGVyLXJhZGl1czogMXB4OyB9XG5cbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSk7IH1cblxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpOyB9XG5cbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggMDsgfVxuXG4ubUNTLWRhcmstMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTIwcHg7IH1cblxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC00MHB4OyB9XG5cbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTU2cHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogdGhlbWU6IFwibGlnaHQtdGhpY2tcIiwgXCJkYXJrLXRoaWNrXCIgKi9cbi5tQ1MtbGlnaHQtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgd2lkdGg6IDRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDJweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICB3aWR0aDogNnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDJweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0cHg7XG4gIG1hcmdpbjogNnB4IDA7IH1cblxuLm1DUy1saWdodC10aGljay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDZweDtcbiAgbWFyZ2luOiA1cHggYXV0bzsgfVxuXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7IH1cblxuLm1DUy1saWdodC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1saWdodC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTsgfVxuXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAwOyB9XG5cbi5tQ1MtbGlnaHQtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTIwcHg7IH1cblxuLm1DUy1saWdodC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjBweCAtNDBweDsgfVxuXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjBweCAtNTZweDsgfVxuXG4vKiB0aGVtZTogXCJkYXJrLXRoaWNrXCIgKi9cbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDJweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4ubUNTLWRhcmstdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAycHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSk7IH1cblxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWRhcmstdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7IH1cblxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAwOyB9XG5cbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMjBweDsgfVxuXG4ubUNTLWRhcmstdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMHB4IC00MHB4OyB9XG5cbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMHB4IC01NnB4OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIHRoZW1lOiBcImxpZ2h0LXRoaW5cIiwgXCJkYXJrLXRoaW5cIiAqL1xuLm1DUy1saWdodC10aGluLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7IH1cblxuLm1DUy1saWdodC10aGluLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtZGFyay10aGluLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIHdpZHRoOiA0cHg7IH1cblxuLm1DUy1saWdodC10aGluLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtZGFyay10aGluLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5tQ1MtbGlnaHQtdGhpbi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtZGFyay10aGluLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNHB4O1xuICBtYXJnaW46IDZweCBhdXRvOyB9XG5cbi8qIHRoZW1lIFwiZGFyay10aGluXCIgKi9cbi5tQ1MtZGFyay10aGluLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNDM0MzQzM7IH1cblxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIC8qIGJhY2tncm91bmQtY29sb3I6ICMwMDA7ICovXG4gIGJhY2tncm91bmQtY29sb3I6ICNGN0ZBRkE7IH1cblxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTsgfVxuXG4ubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7IH1cblxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IDA7IH1cblxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTIwcHg7IH1cblxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTQwcHg7IH1cblxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC01NnB4OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIHRoZW1lIFwicm91bmRlZFwiLCBcInJvdW5kZWQtZGFya1wiLCBcInJvdW5kZWQtZG90c1wiLCBcInJvdW5kZWQtZG90cy1kYXJrXCIgKi9cbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTsgfVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLFxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLFxuLm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIge1xuICBoZWlnaHQ6IDE0cHg7IH1cblxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgd2lkdGg6IDE0cHg7XG4gIG1hcmdpbjogMCAxcHg7IH1cblxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyLFxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIsXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlcixcbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIge1xuICB3aWR0aDogMTRweDsgfVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGhlaWdodDogMTRweDtcbiAgbWFyZ2luOiAxcHggMDsgfVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIHdpZHRoOiAxNnB4O1xuICAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqL1xuICBoZWlnaHQ6IDE2cHg7XG4gIG1hcmdpbjogLTFweCAwOyB9XG5cbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkICsgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgd2lkdGg6IDRweDtcbiAgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi8gfVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgaGVpZ2h0OiAxNnB4O1xuICAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqL1xuICB3aWR0aDogMTZweDtcbiAgbWFyZ2luOiAwIC0xcHg7IH1cblxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkICsgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIGhlaWdodDogNHB4O1xuICAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqL1xuICBtYXJnaW46IDZweCAwOyB9XG5cbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNzJweDsgfVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtOTJweDsgfVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTEycHg7IH1cblxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMjhweDsgfVxuXG4vKiB0aGVtZSBcInJvdW5kZWQtZGFya1wiLCBcInJvdW5kZWQtZG90cy1kYXJrXCIgKi9cbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTsgfVxuXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjE1KTsgfVxuXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSk7IH1cblxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTsgfVxuXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTcycHg7IH1cblxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTkycHg7IH1cblxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTExMnB4OyB9XG5cbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMTI4cHg7IH1cblxuLyogdGhlbWUgXCJyb3VuZGVkLWRvdHNcIiwgXCJyb3VuZGVkLWRvdHMtZGFya1wiICovXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgd2lkdGg6IDRweDsgfVxuXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyB9XG5cbi5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFnQUFBQUlDQVlBQUFERUQ3NkxBQUFBTkVsRVFWUVlWMk5rSUFBWWlWYncvLzkvWTZEaU0xQU5Kb3lNakdkQmJMZ0pRQVgva1UwREtnRExrYVFBdnhXNEhFdlFGd0NSY3hJSksxWHpuQUFBQUFCSlJVNUVya0pnZ2c9PVwiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15O1xuICBvcGFjaXR5OiAwLjM7XG4gIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTMwKVwiO1xuICAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MzApXCI7IH1cblxuLm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBoZWlnaHQ6IDRweDtcbiAgbWFyZ2luOiA2cHggMDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14OyB9XG5cbi5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtNzJweDsgfVxuXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtOTJweDsgfVxuXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjBweCAtMTEycHg7IH1cblxuLm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0yMHB4IC0xMjhweDsgfVxuXG4vKiB0aGVtZSBcInJvdW5kZWQtZG90cy1kYXJrXCIgKi9cbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQWdBQUFBSUNBWUFBQURFRDc2TEFBQUFMRWxFUVZRWVYyTmtJQUFZU1ZGZ0RGUjhCcXJCQkVpZkJiR1JUZmlQWmhwWWppUUZCSzNBNmw2Q3ZnQUFFOWtHQ2QxbXZnRUFBQUFBU1VWT1JLNUNZSUk9XCIpOyB9XG5cbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC03MnB4OyB9XG5cbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTkycHg7IH1cblxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTAwcHggLTExMnB4OyB9XG5cbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDBweCAtMTI4cHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogdGhlbWUgXCIzZFwiLCBcIjNkLWRhcmtcIiwgXCIzZC10aGlja1wiLCBcIjNkLXRoaWNrLWRhcmtcIiAqL1xuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC15O1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgcmlnaHQgdG9wLCBjb2xvci1zdG9wKDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkpLCBjb2xvci1zdG9wKDEwMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7IH1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBjb2xvci1zdG9wKDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkpLCBjb2xvci1zdG9wKDEwMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpOyB9XG5cbi8qIHRoZW1lIFwiM2RcIiwgXCIzZC1kYXJrXCIgKi9cbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCAubUNTQl9kcmFnZ2VyLFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwgLm1DU0JfZHJhZ2dlciB7XG4gIGhlaWdodDogNzBweDsgfVxuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyLFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIHtcbiAgd2lkdGg6IDcwcHg7IH1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzLFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMge1xuICBvcGFjaXR5OiAxO1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0zMClcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTMwKVwiOyB9XG5cbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxNnB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7IH1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICB3aWR0aDogOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIGJveC1zaGFkb3c6IGluc2V0IDFweCAwIDFweCByZ2JhKDAsIDAsIDAsIDAuNSksIGluc2V0IC0xcHggMCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpOyB9XG5cbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NTU7IH1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgd2lkdGg6IDhweDsgfVxuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA4cHg7XG4gIG1hcmdpbjogNHB4IDA7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuNSksIGluc2V0IDAgLTFweCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpOyB9XG5cbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA4cHg7XG4gIG1hcmdpbjogNHB4IGF1dG87IH1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTcycHg7IH1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtOTJweDsgfVxuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC00MHB4IC0xMTJweDsgfVxuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtMTI4cHg7IH1cblxuLyogdGhlbWUgXCIzZC1kYXJrXCIgKi9cbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3gtc2hhZG93OiBpbnNldCAxcHggMCAxcHggcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC03MnB4OyB9XG5cbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTkycHg7IH1cblxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjBweCAtMTEycHg7IH1cblxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTEyOHB4OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIHRoZW1lOiBcIjNkLXRoaWNrXCIsIFwiM2QtdGhpY2stZGFya1wiICovXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMsXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyB7XG4gIG9wYWNpdHk6IDE7XG4gIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTMwKVwiO1xuICAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MzApXCI7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzLFxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMsXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcixcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJDb250YWluZXIge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDdweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA3cHg7XG4gIGJvcmRlci1yYWRpdXM6IDdweDsgfVxuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDVweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuXG4ubUNTQl9pbnNpZGUgKyAubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwsXG4ubUNTQl9pbnNpZGUgKyAubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCB7XG4gIHJpZ2h0OiAxcHg7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLFxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwge1xuICBib3gtc2hhZG93OiBpbnNldCAxcHggMCAxcHggcmdiYSgwLCAwLCAwLCAwLjEpLCBpbnNldCAwIDAgMTRweCByZ2JhKDAsIDAsIDAsIDAuNSk7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwsXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIHtcbiAgYm90dG9tOiAxcHg7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMSksIGluc2V0IDAgMCAxNHB4IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBib3gtc2hhZG93OiBpbnNldCAxcHggMCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbiAgd2lkdGg6IDEycHg7XG4gIG1hcmdpbjogMnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogYXV0bztcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwOyB9XG5cbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTsgfVxuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NTU7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGhlaWdodDogMTJweDtcbiAgd2lkdGg6IGF1dG87IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJDb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBib3gtc2hhZG93OiBpbnNldCAxcHggMXB4IDE2cHggcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC03MnB4OyB9XG5cbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTkycHg7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtMTEycHg7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggLTEyOHB4OyB9XG5cbi8qIHRoZW1lOiBcIjNkLXRoaWNrLWRhcmtcIiAqL1xuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMTRweCByZ2JhKDAsIDAsIDAsIDAuMik7IH1cblxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMSksIGluc2V0IDAgMCAxNHB4IHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMXB4IDAgMCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCksIGluc2V0IC0xcHggMCAwIHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KSwgaW5zZXQgMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG5cbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzc3OyB9XG5cbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJDb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICBib3gtc2hhZG93OiBpbnNldCAxcHggMXB4IDE2cHggcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTcycHg7IH1cblxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtOTJweDsgfVxuXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC0xMTJweDsgfVxuXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjBweCAtMTI4cHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogdGhlbWU6IFwibWluaW1hbFwiLCBcIm1pbmltYWwtZGFya1wiICovXG4ubUNTQl9vdXRzaWRlICsgLm1DUy1taW5pbWFsLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwsXG4ubUNTQl9vdXRzaWRlICsgLm1DUy1taW5pbWFsLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCB7XG4gIHJpZ2h0OiAwO1xuICBtYXJnaW46IDEycHggMDsgfVxuXG4ubUN1c3RvbVNjcm9sbEJveC5tQ1MtbWluaW1hbCArIC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCxcbi5tQ3VzdG9tU2Nyb2xsQm94Lm1DUy1taW5pbWFsICsgLm1DU0Jfc2Nyb2xsVG9vbHMgKyAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwsXG4ubUN1c3RvbVNjcm9sbEJveC5tQ1MtbWluaW1hbC1kYXJrICsgLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLFxuLm1DdXN0b21TY3JvbGxCb3gubUNTLW1pbmltYWwtZGFyayArIC5tQ1NCX3Njcm9sbFRvb2xzICsgLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIHtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW46IDAgMTJweDsgfVxuXG4vKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX291dHNpZGUgKyAubUNTLW1pbmltYWwubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCxcbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX291dHNpZGUgKyAubUNTLW1pbmltYWwtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsIHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IGF1dG87IH1cblxuLm1DUy1taW5pbWFsLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLW1pbmltYWwtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLm1DUy1taW5pbWFsLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwgLm1DU0JfZHJhZ2dlcixcbi5tQ1MtbWluaW1hbC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwgLm1DU0JfZHJhZ2dlciB7XG4gIGhlaWdodDogNTBweDsgfVxuXG4ubUNTLW1pbmltYWwubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIsXG4ubUNTLW1pbmltYWwtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciB7XG4gIHdpZHRoOiA1MHB4OyB9XG5cbi5tQ1MtbWluaW1hbC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTIwKVwiO1xuICAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MjApXCI7IH1cblxuLm1DUy1taW5pbWFsLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLW1pbmltYWwubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTUwKVwiO1xuICAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NTApXCI7IH1cblxuLyogdGhlbWU6IFwibWluaW1hbC1kYXJrXCIgKi9cbi5tQ1MtbWluaW1hbC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MjApXCI7XG4gIC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0yMClcIjsgfVxuXG4ubUNTLW1pbmltYWwtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1taW5pbWFsLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTUwKVwiO1xuICAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NTApXCI7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogdGhlbWUgXCJsaWdodC0zXCIsIFwiZGFyay0zXCIgKi9cbi5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIHdpZHRoOiA2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuXG4ubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgd2lkdGg6IDZweDsgfVxuXG4ubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA2cHg7XG4gIG1hcmdpbjogNXB4IDA7IH1cblxuLm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCArIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWwge1xuICB3aWR0aDogMTJweDsgfVxuXG4ubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCArIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgaGVpZ2h0OiAxMnB4O1xuICBtYXJnaW46IDJweCAwOyB9XG5cbi5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTcycHg7IH1cblxuLm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC05MnB4OyB9XG5cbi5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtMTEycHg7IH1cblxuLm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtMTI4cHg7IH1cblxuLyogdGhlbWUgXCJkYXJrLTNcIiAqL1xuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTsgfVxuXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpOyB9XG5cbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTsgfVxuXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTcycHg7IH1cblxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC05MnB4OyB9XG5cbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjBweCAtMTEycHg7IH1cblxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjBweCAtMTI4cHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogdGhlbWUgXCJpbnNldFwiLCBcImluc2V0LWRhcmtcIiwgXCJpbnNldC0yXCIsIFwiaW5zZXQtMi1kYXJrXCIsIFwiaW5zZXQtM1wiLCBcImluc2V0LTMtZGFya1wiICovXG4ubUNTLWluc2V0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtaW5zZXQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIHdpZHRoOiAxMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7IH1cblxuLm1DUy1pbnNldC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICB3aWR0aDogNnB4O1xuICBtYXJnaW46IDNweCA1cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiBhdXRvO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7IH1cblxuLm1DUy1pbnNldC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtMi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBoZWlnaHQ6IDZweDtcbiAgbWFyZ2luOiA1cHggM3B4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiBhdXRvO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7IH1cblxuLm1DUy1pbnNldC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1pbnNldC0yLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMnB4O1xuICBtYXJnaW46IDJweCAwOyB9XG5cbi5tQ1MtaW5zZXQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCxcbi5tQ1MtaW5zZXQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLFxuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtNzJweDsgfVxuXG4ubUNTLWluc2V0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bixcbi5tQ1MtaW5zZXQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24sXG4ubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTkycHg7IH1cblxuLm1DUy1pbnNldC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQsXG4ubUNTLWluc2V0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0LFxuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC00MHB4IC0xMTJweDsgfVxuXG4ubUNTLWluc2V0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQsXG4ubUNTLWluc2V0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCxcbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggLTEyOHB4OyB9XG5cbi8qIHRoZW1lIFwiaW5zZXQtZGFya1wiLCBcImluc2V0LTItZGFya1wiLCBcImluc2V0LTMtZGFya1wiICovXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTsgfVxuXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTsgfVxuXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTsgfVxuXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCxcbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTcycHg7IH1cblxuLm1DUy1pbnNldC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bixcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bixcbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtOTJweDsgfVxuXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0LFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0LFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC0xMTJweDsgfVxuXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCxcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQsXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC0xMjhweDsgfVxuXG4vKiB0aGVtZSBcImluc2V0LTJcIiwgXCJpbnNldC0yLWRhcmtcIiAqL1xuLm1DUy1pbnNldC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMXB4O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDAwO1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuXG4vKiB0aGVtZSBcImluc2V0LTNcIiwgXCJpbnNldC0zLWRhcmtcIiAqL1xuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7IH1cblxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTsgfVxuXG4ubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTsgfVxuXG4ubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTsgfVxuXG4ubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTsgfVxuXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpOyB9XG5cbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7IH1cblxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpOyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qKlxuICogT3dsIENhcm91c2VsIHYyLjMuNFxuICogQ29weXJpZ2h0IDIwMTMtMjAxOCBEYXZpZCBEZXV0c2NoXG4gKiBMaWNlbnNlZCB1bmRlcjogU0VFIExJQ0VOU0UgSU4gaHR0cHM6Ly9naXRodWIuY29tL093bENhcm91c2VsMi9Pd2xDYXJvdXNlbDIvYmxvYi9tYXN0ZXIvTElDRU5TRVxuICovXG4ub3dsLWNhcm91c2VsLCAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSB7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ub3dsLWNhcm91c2VsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDE7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4tWTtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG4gIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiLlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGhlaWdodDogMDsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2Utb3V0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSwgLm93bC1jYXJvdXNlbCAub3dsLXdyYXBwZXIge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSB7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1kb3RzLmRpc2FibGVkLCAub3dsLWNhcm91c2VsIC5vd2wtbmF2LmRpc2FibGVkIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubm8tanMgLm93bC1jYXJvdXNlbCwgLm93bC1jYXJvdXNlbC5vd2wtbG9hZGVkIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWRvdCwgLm93bC1jYXJvdXNlbCAub3dsLW5hdiAub3dsLW5leHQsIC5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgLm93bC1wcmV2IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLW5hdiBidXR0b24ub3dsLW5leHQsIC5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgYnV0dG9uLm93bC1wcmV2LCAub3dsLWNhcm91c2VsIGJ1dHRvbi5vd2wtZG90IHtcbiAgYmFja2dyb3VuZDogMCAwO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIGZvbnQ6IGluaGVyaXQ7IH1cblxuLm93bC1jYXJvdXNlbC5vd2wtbG9hZGluZyB7XG4gIG9wYWNpdHk6IDA7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLWhpZGRlbiB7XG4gIG9wYWNpdHk6IDA7IH1cblxuLm93bC1jYXJvdXNlbC5vd2wtcmVmcmVzaCAub3dsLWl0ZW0ge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLm93bC1jYXJvdXNlbC5vd2wtZHJhZyAub3dsLWl0ZW0ge1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG4ub3dsLWNhcm91c2VsLm93bC1ncmFiIHtcbiAgY3Vyc29yOiBtb3ZlO1xuICBjdXJzb3I6IGdyYWI7IH1cblxuLm93bC1jYXJvdXNlbC5vd2wtcnRsIHtcbiAgZGlyZWN0aW9uOiBydGw7IH1cblxuLm93bC1jYXJvdXNlbC5vd2wtcnRsIC5vd2wtaXRlbSB7XG4gIGZsb2F0OiByaWdodDsgfVxuXG4ub3dsLWNhcm91c2VsIC5hbmltYXRlZCB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWFuaW1hdGVkLWluIHtcbiAgei1pbmRleDogMDsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtYW5pbWF0ZWQtb3V0IHtcbiAgei1pbmRleDogMTsgfVxuXG4ub3dsLWNhcm91c2VsIC5mYWRlT3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7IH1cblxuQGtleWZyYW1lcyBmYWRlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbi5vd2wtaGVpZ2h0IHtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IC41cyBlYXNlLWluLW91dDsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenkge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC40cyBlYXNlOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIC5vd2wtbGF6eTpub3QoW3NyY10pLCAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenlbc3JjXj1cIlwiXSB7XG4gIG1heC1oZWlnaHQ6IDA7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nLm93bC1sYXp5IHtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjMDAwOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5LWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogODBweDtcbiAgd2lkdGg6IDgwcHg7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtNDBweDtcbiAgbWFyZ2luLXRvcDogLTQwcHg7XG4gIGJhY2tncm91bmQ6IHVybChvd2wudmlkZW8ucGxheS5wbmcpIG5vLXJlcGVhdDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiAxO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4xcyBlYXNlOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5LWljb246aG92ZXIge1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjMsIDEuMyk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4zLCAxLjMpOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5aW5nIC5vd2wtdmlkZW8tcGxheS1pY29uLCAub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheWluZyAub3dsLXZpZGVvLXRuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tdG4ge1xuICBvcGFjaXR5OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNHMgZWFzZTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tZnJhbWUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLyoqXG4gKiBPd2wgQ2Fyb3VzZWwgdjIuMy40XG4gKiBDb3B5cmlnaHQgMjAxMy0yMDE4IERhdmlkIERldXRzY2hcbiAqIExpY2Vuc2VkIHVuZGVyOiBTRUUgTElDRU5TRSBJTiBodHRwczovL2dpdGh1Yi5jb20vT3dsQ2Fyb3VzZWwyL093bENhcm91c2VsMi9ibG9iL21hc3Rlci9MSUNFTlNFXG4gKi9cbi5vd2wtdGhlbWUgLm93bC1kb3RzLCAub3dsLXRoZW1lIC5vd2wtbmF2IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5vd2wtdGhlbWUgLm93bC1uYXYge1xuICBtYXJnaW4tdG9wOiAxMHB4OyB9XG5cbi5vd2wtdGhlbWUgLm93bC1uYXYgW2NsYXNzKj1vd2wtXSB7XG4gIGNvbG9yOiAjRkZGO1xuICBmb250LXNpemU6IDE0cHg7XG4gIG1hcmdpbjogNXB4O1xuICBwYWRkaW5nOiA0cHggN3B4O1xuICBiYWNrZ3JvdW5kOiAjRDZENkQ2O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogM3B4OyB9XG5cbi5vd2wtdGhlbWUgLm93bC1uYXYgW2NsYXNzKj1vd2wtXTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICM4Njk3OTE7XG4gIGNvbG9yOiAjRkZGO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLm93bC10aGVtZSAub3dsLW5hdiAuZGlzYWJsZWQge1xuICBvcGFjaXR5OiAuNTtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbi5vd2wtdGhlbWUgLm93bC1uYXYuZGlzYWJsZWQgKyAub3dsLWRvdHMge1xuICBtYXJnaW4tdG9wOiAxMHB4OyB9XG5cbi5vd2wtdGhlbWUgLm93bC1kb3RzIC5vd2wtZG90IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB6b29tOiAxOyB9XG5cbi5vd2wtdGhlbWUgLm93bC1kb3RzIC5vd2wtZG90IHNwYW4ge1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4O1xuICBtYXJnaW46IDVweCA3cHg7XG4gIGJhY2tncm91bmQ6ICNENkQ2RDY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2U7XG4gIGJvcmRlci1yYWRpdXM6IDMwcHg7IH1cblxuLm93bC10aGVtZSAub3dsLWRvdHMgLm93bC1kb3QuYWN0aXZlIHNwYW4sIC5vd2wtdGhlbWUgLm93bC1kb3RzIC5vd2wtZG90OmhvdmVyIHNwYW4ge1xuICBiYWNrZ3JvdW5kOiAjODY5NzkxOyB9XG5cbi8qXG4gKiBTbWFyVGlja2VyIFZlcnNpb24gMS41XG4gKiBodHRwOi8vcG93ZXJ1cC5pci9wcm9qZWN0cy9zbWFydGlja2VyXG4gKiBDb3B5bGVmdCAoYykgMjAxNCBNZWdoZGFkIEhhZGlkaVxuICovXG4uc21hcnRpY2tlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGRpcmVjdGlvbjogbHRyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmJveCB7XG4gIG1pbi1oZWlnaHQ6IDMwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi5ib3JkZXIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjOyB9XG5cbi5yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogMjBweDsgfVxuXG4uc2hhZG93IHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCA1cHggIzk5OTsgfVxuXG4uc2l6ZTEge1xuICBoZWlnaHQ6IDMwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLnNtYXJ0aWNrZXIgLnNlYzEsIC5zbWFydGlja2VyIC5zZWMxLTIsIC5zbWFydGlja2VyIC5zZWMyLCAuc21hcnRpY2tlciAuc2VjMywgLnNtYXJ0aWNrZXIgLnNlYzQsIC5zbWFydGlja2VyIC5zZWM1LCAuc21hcnRpY2tlciAuc2VjNiwgLnNtYXJ0aWNrZXIgLnNlYzcge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLnNtYXJ0aWNrZXIgLnNlYzEge1xuICBtaW4td2lkdGg6IDEwJTsgfVxuXG4uc21hcnRpY2tlciAuc2VjMiB7XG4gIG1pbi13aWR0aDogMjAlOyB9XG5cbi5zbWFydGlja2VyIC5zZWMzIHtcbiAgbWluLXdpZHRoOiAzMy4zMzMlOyB9XG5cbi5zbWFydGlja2VyIC5zZWM0IHtcbiAgbWluLXdpZHRoOiAyNSU7IH1cblxuLnNtYXJ0aWNrZXIgLnNlYzUge1xuICBtaW4td2lkdGg6IDUwJTsgfVxuXG4uc21hcnRpY2tlciAuc2VjNiB7XG4gIG1pbi13aWR0aDogNjAlOyB9XG5cbi5zbWFydGlja2VyIC5zZWM3IHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5zbWFydGlja2VyIC5uZXdzaG9sZGVyLCAucy1ydGwuc21hcnRpY2tlciAubmV3c2hvbGRlciB7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogYXV0bzsgfVxuXG4uc21hcnRpY2tlciB1bCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4uc21hcnRpY2tlciAuc21hcnRpY2tlci1jYXRzLCAuc21hcnRpY2tlci1jYXRzIC5jYXRsaXN0LCAuc21hcnRpY2tlciAuc21hcnRpY2tlci1jYXRlZ29yeSwgLnNtYXJ0aWNrZXIgLnNtYXJ0aWNrZXItbmV3cyB7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uc21hcnRpY2tlciAuc21hcnRpY2tlci1jYXRzLCAuc21hcnRpY2tlciAuc21hcnRpY2tlci1jYXRlZ29yeSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi5zbWFydGlja2VyIGxpIHtcbiAgaGVpZ2h0OiAzMHB4O1xuICBsaW5lLWhlaWdodDogMjhweDsgfVxuXG4uc21hcnRpY2tlciBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5zbWFydGlja2VyIC5zbWFydGlja2VyLW5ld3Mge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5zbWFydGlja2VyIC5zbWFydGlja2VyLW5ld3MgdWwge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnNtYXJ0aWNrZXIgLnNtYXJ0aWNrZXItbmV3cyB1bCBsaSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDBweDtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLnNtYXJ0aWNrZXIgLnNtYXJ0aWNrZXItbmV3cyB1bCBsaSBhIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uc21hcnRpY2tlci1jYXRlZ29yeSBhIHtcbiAgZm9udC1mYW1pbHk6IFwiQXdzYXQgRGlnaXRhbFwiO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwYWRkaW5nOiAwOyB9XG5cbi5jb3ZlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIHJpZ2h0OiAwcHg7XG4gIHotaW5kZXg6IDI7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5sdHIgLmZsYXNoZXIge1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsaW5lLWhlaWdodDogMjhweDtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLnJ0bCAuZmxhc2hlciB7XG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5zbWFydC1jb250cm9sbGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwcHg7XG4gIHRvcDogMHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDM7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnMtcnRsIC5zbWFydC1jb250cm9sbGVyIHtcbiAgcmlnaHQ6IDBweDtcbiAgbGVmdDogYXV0bzsgfVxuXG4uc21hcnRpY2tlci1uZXdzIGEge1xuICBjb2xvcjogIzY2NjtcbiAgZm9udC1zaXplOiAxM3B4OyB9XG5cbi5zbWFydGlja2VyLWNhdHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6ICM5OTk7IH1cblxuLnNtYXJ0aWNrZXItY2F0cyBhIHtcbiAgY29sb3I6ICMyQzhBODI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgcGFkZGluZzogMCAxMHB4O1xuICBmb250LWZhbWlseTogXCJBd3NhdCBEaWdpdGFsXCI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5zbWFydGlja2VyLWNhdGVnb3J5IGEge1xuICBjb2xvcjogIzk5OTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4vKiAtLS0tLS0tLS0tIFRoZW1lIDEgLS0tLS0tLS0tLS0gKi9cbi50aGVtZTEge1xuICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG5cbi50aGVtZTEgLnNtYXJ0aWNrZXItY2F0cyAucmlnaHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwcHg7XG4gIHdpZHRoOiAyMCU7XG4gIGhlaWdodDogMTAwJTsgfVxuXG4udGhlbWUxIC5zbWFydGlja2VyLWNhdHMgLmxlZnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDBweDtcbiAgdG9wOiAwcHg7XG4gIHotaW5kZXg6IDE7XG4gIHdpZHRoOiAyMCU7XG4gIGhlaWdodDogMTAwJTsgfVxuXG4ubm8tY2F0ZWdvcnkgLnNtYXJ0aWNrZXItY2F0cyAucmlnaHQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi50aGVtZTEgLmZsYXNoZXIge1xuICBjb2xvcjogIzY2NjsgfVxuXG4uc21hcnRpY2tlci1jYXRzIGxpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLnRoZW1lMSAuc21hcnRpY2tlci1jYXRzIHVsIGEgaW1nIHtcbiAgbWFyZ2luOiAwIDVweCAwIDIwcHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLSBUaGVtZSAyIC0tLS0tLS0tLS0tLSAqL1xuLnRoZW1lMiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi50aGVtZTIgLnNtYXJ0aWNrZXItbmV3cyBhIHtcbiAgY29sb3I6ICMxYTFhMWE7XG4gIGZvbnQtc2l6ZTogMTJweDsgfVxuXG4udGhlbWUyIC5zbWFydGlja2VyLWNhdHMge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZy1yaWdodDogMTZweDsgfVxuICAudGhlbWUyIC5zbWFydGlja2VyLWNhdHM6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiAnfCc7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGNvbG9yOiAjMkM4QTgyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogOHB4O1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIG1hcmdpbjogYXV0byBhdXRvO1xuICAgIGZvbnQtZmFtaWx5OiBcIkF3c2F0IERpZ2l0YWxcIjtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4udGhlbWUyIC5zbWFydGlja2VyLWNhdHMgLnJpZ2h0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMHB4O1xuICB3aWR0aDogMjAlO1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLnRoZW1lMiAuc21hcnRpY2tlci1jYXRzIC5sZWZ0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwcHg7XG4gIHRvcDogMHB4O1xuICB6LWluZGV4OiAxO1xuICB3aWR0aDogMjAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm5vLWNhdGVnb3J5IC5zbWFydGlja2VyLWNhdHMgLnJpZ2h0IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4udGhlbWUyIC5zbWFydGlja2VyLWNhdHMgdWwgYSB7XG4gIGNvbG9yOiAjMkM4QTgyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgLnRoZW1lMiAuc21hcnRpY2tlci1jYXRzIHVsIGE6Zmlyc3QtY2hpbGQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLnRoZW1lMiAuc21hcnRpY2tlci1jYXRlZ29yeSBhIHtcbiAgY29sb3I6ICM2NjY2NjY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4udGhlbWUyIC5mbGFzaGVyIHtcbiAgY29sb3I6ICM2YzZjNmM7IH1cblxuLnRoZW1lMiAudGlja2VydGl0bGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDU3NWQ0OyB9XG5cbi50aGVtZTIgLnNtYXJ0aWNrZXItY2F0cyB1bCBhIGltZyB7XG4gIG1hcmdpbjogMCA1cHggMCAyMHB4OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0gVGhlbWUgMyAtLS0tLS0tLS0tLS0gKi9cbi50aGVtZTMge1xuICBiYWNrZ3JvdW5kOiAjMzMzOyB9XG5cbi50aGVtZTMgLnNtYXJ0aWNrZXItbmV3cyBhIHtcbiAgY29sb3I6ICNmZmY7IH1cblxuLnRoZW1lMyAuc21hcnRpY2tlci1jYXRzIHtcbiAgYmFja2dyb3VuZDogI2ZmZjsgfVxuXG4udGhlbWUzIC5zbWFydGlja2VyLWNhdHMgLnJpZ2h0LCAudGhlbWUzIC5zbWFydGlja2VyLWNhdHMgLmxlZnQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi50aGVtZTMgLnNtYXJ0aWNrZXItY2F0cyBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4udGhlbWUzIC5zbWFydGlja2VyLWNhdGVnb3J5IGEge1xuICBjb2xvcjogI2NjYztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi50aGVtZTMgLmZsYXNoZXIge1xuICBjb2xvcjogI2ZmZjsgfVxuXG4udGhlbWUzIC50aWNrZXJ0aXRsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZDAwNzQ7IH1cblxuLyogLS0tLS0tLS0tLS0tLSBUaGVtZSA0IC0tLS0tLS0tLS0tLSAqL1xuLnRoZW1lNCB7XG4gIGJhY2tncm91bmQ6ICNmZmY7IH1cblxuLnRoZW1lNCAuc21hcnRpY2tlci1uZXdzIGEge1xuICBjb2xvcjogIzY2NjsgfVxuXG4udGhlbWU0IC5zbWFydGlja2VyLWNhdHMge1xuICBiYWNrZ3JvdW5kOiAjOTk5OyB9XG5cbi50aGVtZTQgLnNtYXJ0aWNrZXItY2F0cyAucmlnaHQsIC50aGVtZTQgLnNtYXJ0aWNrZXItY2F0cyAubGVmdCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnRoZW1lNCAuc21hcnRpY2tlci1jYXRzIGEge1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi50aGVtZTQgLnNtYXJ0aWNrZXItY2F0ZWdvcnkgYSB7XG4gIGNvbG9yOiAjOTk5O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLnRoZW1lNCAuZmxhc2hlciB7XG4gIGNvbG9yOiAjNjY2OyB9XG5cbi50aGVtZTQgLnRpY2tlcnRpdGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYjY0ZjsgfVxuXG4vKiAtLS0tLS0tLS0tLSBUZXh0IENvbnRyb2xsZXIgLS0tLS0tLS0tLS0tICovXG4uYzEgLnNtYXJ0LWNvbnRyb2xsZXIgc3BhbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICNjY2M7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDBweCA5cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIGZsb2F0OiByaWdodDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2VlZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgMHM7IH1cblxuLmMxIC5zbWFydC1jb250cm9sbGVyIHNwYW46aG92ZXIge1xuICBjb2xvcjogI2JiYjtcbiAgYmFja2dyb3VuZDogI2VmZWZlZjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgMHM7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzOyB9XG5cbi5jMSAuc21hcnQtY29udHJvbGxlciBzcGFuOmFjdGl2ZSB7XG4gIGNvbG9yOiAjOTk5O1xuICBiYWNrZ3JvdW5kOiAjZGZkZmRmO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW4tb3V0IDBzO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW4tb3V0IDBzO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dCAwcztcbiAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQgMHM7IH1cblxuLyogLS0tLS0tLS0tLS0gQzIgQ29udHJvbGxlciA9IEljb25zIC0tLS0tLS0tLS0tLSAqL1xuLmMyIC5zbWFydC1jb250cm9sbGVyIHNwYW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICBmb250LXNpemU6IDEwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogIzk5OTk5OTtcbiAgdGV4dC1pbmRlbnQ6IC0xMDAwMDBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xuICBmbG9hdDogcmlnaHQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzO1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgMHM7IH1cblxuLnMtcnRsLmMyIC5zbWFydC1jb250cm9sbGVyIHNwYW4ge1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2VlZTtcbiAgZGlyZWN0aW9uOiBsdHI7IH1cblxuLnRoZW1lMy5jMiAuc21hcnQtY29udHJvbGxlciBzcGFuLCAudGhlbWUyLmMyIC5zbWFydC1jb250cm9sbGVyIHNwYW4ge1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLnRoZW1lMy5jMiAuc21hcnQtY29udHJvbGxlciBzcGFuOmJlZm9yZSwgLnRoZW1lMi5jMiAuc21hcnQtY29udHJvbGxlciBzcGFuOmJlZm9yZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDRweDsgfVxuXG4udGhlbWUxLmMyIC5zbWFydC1jb250cm9sbGVyIHNwYW4sIC50aGVtZTQuYzIgLnNtYXJ0LWNvbnRyb2xsZXIgc3BhbiB7XG4gIGhlaWdodDogMTAwJTsgfVxuXG4uYzIgLnNtYXJ0LWNvbnRyb2xsZXIgc3Bhbjpob3ZlciB7XG4gIGNvbG9yOiAjYmJiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgMHM7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzOyB9XG5cbi5jMiAuc21hcnQtY29udHJvbGxlciBzcGFuOmFjdGl2ZSB7XG4gIGNvbG9yOiAjOTk5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dCAwcztcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlLWluLW91dCAwcztcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQgMHM7XG4gIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW4tb3V0IDBzOyB9XG5cbi5jMiAubmV4dC1uZXdzLCAuYzIgLm5leHQtbmV3czphY3RpdmUsIC5jMiAubmV4dC1uZXdzOmhvdmVyIHtcbiAgLypiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9zbWFydGlja2VyL2NvbnRyb2xsZXIucG5nJyk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsqLyB9XG5cbi5jMiAucGF1c2UtbmV3cywgLmMyIC5wYXVzZS1uZXdzOmFjdGl2ZSwgLmMyIC5wYXVzZS1uZXdzOmhvdmVyIHtcbiAgLypiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvc21hcnRpY2tlci9jb250cm9sbGVyMS5wbmcnKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyovIH1cblxuLmMyIC5wbGF5LW5ld3MsIC5jMiAucGxheS1uZXdzOmFjdGl2ZSwgLmMyIC5wbGF5LW5ld3M6aG92ZXIge1xuICAvKmJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL3NtYXJ0aWNrZXIvY29udHJvbGxlcjEucG5nJyk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsqLyB9XG5cbi5jMiAucGF1c2UtbmV3czpiZWZvcmUge1xuICBjb250ZW50OiAnfHwnO1xuICB0ZXh0LWluZGVudDogMDtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5jMiAucGxheS1uZXdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGU5MWEnO1xuICB0ZXh0LWluZGVudDogMDtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5jMiAucHJldi1uZXdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGU5MTcnO1xuICB0ZXh0LWluZGVudDogMDtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5jMiAubmV4dC1uZXdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGU5MTYnO1xuICB0ZXh0LWluZGVudDogMDtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5wcm9ncmVzcy1iYXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwcHg7XG4gIHJpZ2h0OiAwcHg7XG4gIHotaW5kZXg6IDM7IH1cblxuLm5vLXN1YmNhdGVnb3J5IC5zbWFydGlja2VyLWNhdGVnb3J5IHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjO1xuICBiYWNrZ3JvdW5kOiAjZWVlOyB9XG5cbi50aWNrZXJ0aXRsZSB7XG4gIGhlaWdodDogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlMjAwNDg7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAwIDEwcHg7IH1cblxuLnRoZW1lMi5jMiAuc21hcnQtY29udHJvbGxlciBzcGFuOmhvdmVyLCAudGhlbWUzLmMyIC5zbWFydC1jb250cm9sbGVyIHNwYW46aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTU1OyB9XG5cbi50aGVtZTIuYzIgLnNtYXJ0LWNvbnRyb2xsZXIgc3BhbjphY3RpdmUsIC50aGVtZTMuYzIgLnNtYXJ0LWNvbnRyb2xsZXIgc3BhbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzc3OyB9XG5cbi5zbWFydGlja2VyIC5pdGVtLWRhdGUge1xuICBmb250LXNpemU6IDEwcHg7XG4gIG1hcmdpbjogMCA1cHg7XG4gIGNvbG9yOiAjOTk5OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyotLS0tLS0tLS0tLSAgUlRMIFN1cHBvcnQgLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5zLXJ0bCB7XG4gIGRpcmVjdGlvbjogcnRsOyB9XG5cbi5zLXJ0bCAuc2VjMSwgLnMtcnRsIC5zZWMxLTIsIC5zLXJ0bCAuc2VjMiwgLnMtcnRsIC5zZWMzLCAucy1ydGwgLnNlYzQsIC5zLXJ0bCAuc2VjNSwgLnMtcnRsIC5zZWM2LCAucy1ydGwgLnNlYzcge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLnMtcnRsIC5zbWFydGlja2VyLW5ld3MgdWwge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9XG5cbi5zLXJ0bCAuc21hcnRpY2tlci1jYXRzIGEge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cblxuLnMtcnRsIC5zbWFydGlja2VyLWNhdGVnb3J5IGEge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xuICBmb250LXNpemU6IDE2cHg7XG4gIHBhZGRpbmc6IDAgNXB4O1xuICBjb2xvcjogIzI1M0MzQTtcbiAgZm9udC1mYW1pbHk6IFwiQXdzYXQgRGlnaXRhbFwiOyB9XG5cbi5zLXJ0bCAuc21hcnRpY2tlci1uZXdzIGEge1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKi0tLS0tLS0tICBSZXNwb25zaXZlIFN1cHBvcnQgLS0tLS0tKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODUwcHgpIHtcbiAgLmxlZnQsIC5yaWdodCB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi8qIC0tLS0tLSBuYXZpZ2F0aW9uLCBwYW5lbCBhbmQgc3RpY2t5IGhlYWRlciAtLS0tLS0gU1RBUlQgLS0tLS0tICovXG5oZWFkZXIgLnNvY2lhbHMtYXJlYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgei1pbmRleDogMTtcbiAgbWFyZ2luOiAwLjVyZW0gMCAwOyB9XG5cbmhlYWRlciAjc3RpY2t5LWhlYWRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgei1pbmRleDogMTtcbiAgbWFyZ2luOiAwLjVyZW0gMCAxLjVyZW07IH1cblxuLm5hdi1jb250YWluZXIgPiB1bCA+IGxpIHtcbiAgcGFkZGluZzogMCAwLjYyNXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY2LjI1ZW0pIHtcbiAgICAubmF2LWNvbnRhaW5lciA+IHVsID4gbGkge1xuICAgICAgcGFkZGluZzogMCAwLjg1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzEuODc1ZW0pIHtcbiAgICAubmF2LWNvbnRhaW5lciA+IHVsID4gbGkge1xuICAgICAgcGFkZGluZzogMCAwLjhyZW07IH0gfVxuICAubmF2LWNvbnRhaW5lciA+IHVsID4gbGkgPiBhIHtcbiAgICBwYWRkaW5nOiAwLjhyZW0gMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IDAuODc1cmVtOyB9XG4gICAgLm5hdi1jb250YWluZXIgPiB1bCA+IGxpID4gYTpob3ZlciB7XG4gICAgICBjb2xvcjogIzJDOEE4MjtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC5uYXYtY29udGFpbmVyID4gdWwgPiBsaTpob3ZlciA+IGEge1xuICAgIGNvbG9yOiAjMkM4QTgyO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC5uYXYtY29udGFpbmVyID4gdWwgPiBsaTpob3ZlciA+IC5zdWJtZW51IHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLm5hdi1jb250YWluZXIgPiB1bCA+IGxpLmFjdGl2ZSA+IGEge1xuICAgIGNvbG9yOiAjNGQ5OThhO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5uYXYtY29udGFpbmVyID4gdWwgPiBsaS5hY3RpdmUgPiBhOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCAjMkM4QTgyOyB9XG5cbi5uYXYtY29udGFpbmVyIC5zdWJtZW51IHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMjBweCAtMXB4IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDIwcHggLTFweCByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIC1tb3otYm94LXNoYWRvdzogMHB4IDBweCAyMHB4IC0xcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xuICB3aWR0aDogYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiA0O1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIGJvcmRlcjogMDtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogMDtcbiAgZm9udC1zaXplOiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQ7XG4gIHBhZGRpbmc6IDM1cHggNTBweDtcbiAgZGlzcGxheTogZmxleDsgfVxuICAubmF2LWNvbnRhaW5lciAuc3VibWVudSAuc3VibWVudS1saXN0IHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMS41cmVtIGF1dG8gMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDQsIGF1dG8pO1xuICAgIGdyaWQtYXV0by1jb2x1bW5zOiAxZnI7XG4gICAgZ3JpZC1hdXRvLWZsb3c6IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLm5hdi1jb250YWluZXIgLnN1Ym1lbnUgLnN1Ym1lbnUtbGlzdCBsaSB7XG4gICAgICBtaW4td2lkdGg6IDE0MHB4O1xuICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5uYXYtY29udGFpbmVyIC5zdWJtZW51IC5zdWJtZW51LWxpc3QgbGkgYSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGY3ZjY7XG4gICAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtOyB9XG4gICAgICAgIC5uYXYtY29udGFpbmVyIC5zdWJtZW51IC5zdWJtZW51LWxpc3QgbGkgYTpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI1M0MzQTtcbiAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAubmF2LWNvbnRhaW5lciAuc3VibWVudSBsaSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAubmF2LWNvbnRhaW5lciAuc3VibWVudSBsaS5hY3RpdmUgPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6ICMyQzhBODI7IH1cbiAgICAubmF2LWNvbnRhaW5lciAuc3VibWVudSBsaSBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGNvbG9yOiByZ2JhKDI2LCAyNiwgMjYsIDAuOCk7XG4gICAgICBwYWRkaW5nOiAxNHB4IDIwcHg7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH1cbiAgICAgIC5uYXYtY29udGFpbmVyIC5zdWJtZW51IGxpIGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogIzJDOEE4MjsgfVxuXG4ubmF2LWNvbnRhaW5lciAubWVudSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5zdGlja3kgLm5hdi1jb250YWluZXIgLm1lbnUge1xuICAgIGp1c3RpZnktY29udGVudDogcmlnaHQ7IH1cblxuLnN1Ym1lbnUuc3R5bGUtMSB7XG4gIGhlaWdodDogYXV0bzsgfVxuICAuc3VibWVudS5zdHlsZS0xOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHRvcDogLTVweDtcbiAgICByaWdodDogMnJlbTtcbiAgICBib3JkZXItbGVmdDogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCAjZmZmZmZmOyB9XG4gIC5zdWJtZW51LnN0eWxlLTEgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5zdWJtZW51LnN0eWxlLTEgPiBkaXY6Zmlyc3QtY2hpbGQ6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNEQ0RGREY7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJyZW0pO1xuICAgICAgd2lkdGg6IDFweDtcbiAgICAgIHRvcDogMnJlbTtcbiAgICAgIGxlZnQ6IC00NXB4OyB9XG4gIC5zdWJtZW51LnN0eWxlLTEgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTsgfVxuXG4ubWVudS1jYXRlZ29yeSB7XG4gIG1hcmdpbi1sZWZ0OiAxMDBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4ubWVudS1oaWdobGlnaHRzIC5tZWRpYS1vYmplY3QtaW1nIHtcbiAgd2lkdGg6IDM2cHg7XG4gIGhlaWdodDogMzZweDsgfVxuICAubWVudS1oaWdobGlnaHRzIC5tZWRpYS1vYmplY3QtaW1nIGEge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZGlzcGxheTogaW5saW5lOyB9XG4gIC5tZW51LWhpZ2hsaWdodHMgLm1lZGlhLW9iamVjdC1pbWcgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7IH1cblxuLm1lbnUtaGlnaGxpZ2h0cyBoNiB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG4gIFtkaXI9XCJsdHJcIl0gLm1lbnUtaGlnaGxpZ2h0cyBoNiB7XG4gICAgZm9udC1mYW1pbHk6IFwiRWZmcmFcIjsgfVxuICAubWVudS1oaWdobGlnaHRzIGg2IGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgLm1lbnUtaGlnaGxpZ2h0cyBoNiBhOmhvdmVyIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5tZW51LWhpZ2hsaWdodHMgLm9iamVjdHMtbGlzdCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoNCwgYXV0byk7XG4gIGdyaWQtYXV0by1jb2x1bW5zOiAxZnI7XG4gIGdyaWQtYXV0by1mbG93OiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLm1lbnUtaGlnaGxpZ2h0cyAub2JqZWN0LWl0ZW0ge1xuICBtaW4td2lkdGg6IDExMHB4O1xuICB3aWR0aDogMTAwJTsgfVxuXG4ubWVudS1oaWdobGlnaHRzIC5vYmplY3RzLWxpc3QuaGFzLXNlcGFyYXRvciAub2JqZWN0LWl0ZW06bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctYm90dG9tOiAwOyB9XG5cbi5oaWdobGlnaHRzLXRpdGxlIHtcbiAgY29sb3I6ICMyQzhBODI7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLm1haW4taGVhZGVyLWJlZm9yZSB7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRENERkRGOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLm1haW4taGVhZGVyLWJlZm9yZSB7XG4gICAgICB6LWluZGV4OiA5OTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICBjb2xvcjogIzI1M0MzQTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1haW4taGVhZGVyLWJlZm9yZSB7XG4gICAgICBwYWRkaW5nLXRvcDogMXJlbTsgfSB9XG4gIFtsYW5nPVwiZW5cIl0gLm1haW4taGVhZGVyLWJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiRWZmcmFcIjsgfVxuICAubWFpbi1oZWFkZXItYmVmb3JlIC50b3AtbGFuZ3VhZ2VzIHtcbiAgICBjb2xvcjogIzk1OTI5MjsgfVxuICAgIC5tYWluLWhlYWRlci1iZWZvcmUgLnRvcC1sYW5ndWFnZXMgYSB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIG1hcmdpbjogMC41cmVtO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKG1heC13aWR0aDogMTM2OHB4KSB7XG4gICAgICAgIC5tYWluLWhlYWRlci1iZWZvcmUgLnRvcC1sYW5ndWFnZXMgYSB7XG4gICAgICAgICAgbWFyZ2luOiA3cHg7IH0gfVxuICAgICAgLm1haW4taGVhZGVyLWJlZm9yZSAudG9wLWxhbmd1YWdlcyBhOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICAubWFpbi1oZWFkZXItYmVmb3JlIC50b3AtbGFuZ3VhZ2VzIGEuYWN0aXZlLCAubWFpbi1oZWFkZXItYmVmb3JlIC50b3AtbGFuZ3VhZ2VzIGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogIzJDOEE4MjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWFpbi1oZWFkZXItYmVmb3JlLS1yaWdodCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfSB9XG4gIC5tYWluLWhlYWRlci1iZWZvcmUtLWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm1haW4taGVhZGVyLWJlZm9yZS0tbGVmdCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLndlYXRoZXItYXJlYSB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGNvbG9yOiAjOTU5MjkyO1xuICAgIG1hcmdpbi1ib3R0b206IDEycHg7IH0gfVxuXG4ud2VhdGhlci1hcmVhIGEge1xuICBjb2xvcjogaW5oZXJpdDsgfVxuICAud2VhdGhlci1hcmVhIGE6aG92ZXIge1xuICAgIGNvbG9yOiAjMkM4QTgyOyB9XG5cbi53ZWF0aGVyLWFyZWEgc3BhbiB7XG4gIHBhZGRpbmc6IDAgM3B4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLndlYXRoZXItYXJlYSBzcGFuIHtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAzcHg7IH0gfVxuICAud2VhdGhlci1hcmVhIHNwYW46Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLndlYXRoZXItYXJlYSA+IHNwYW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ud2VhdGhlci1hcmVhIC53ZWF0aGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLndlYXRoZXItYXJlYSAud2VhdGhlciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAud3RlbXAge1xuICAgIGNvbG9yOiAjNzliZmI5OyB9IH1cblxuLm1haW4taGVhZGVyLWFmdGVyLFxuLm1haW4taGVhZGVyLWlubmVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEQ0RGREY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZGFyay10aGVtZSAubWFpbi1oZWFkZXItYWZ0ZXIsIC5kYXJrLXRoZW1lXG4gIC5tYWluLWhlYWRlci1pbm5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreSB7XG4gIHotaW5kZXg6IDk7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLWluLW91dDtcbiAgLyogTW9iaWxlIFBvcnRyYXRlIC0gTGFuZHNjYXBlICovIH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aDogMzIwcHgpIGFuZCAobWF4LWRldmljZS13aWR0aDogODk2cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSB7XG4gICAgLm1haW4taGVhZGVyLWlubmVyLmhlYWRlci1zdGlja3kge1xuICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgYm9yZGVyOiB0cmFuc3BhcmVudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreSB7XG4gICAgICBwYWRkaW5nOiAxcmVtIDA7IH0gfVxuICAubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreSAubG9nby13aGl0ZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5IC5sb2dvIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5IC5mb3Itc3RpY2t5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5IC5mb3Itc3RpY2t5ID4gYSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDsgfVxuICAgICAgLm1haW4taGVhZGVyLWlubmVyLmhlYWRlci1zdGlja3kgLmZvci1zdGlja3kgPiBkaXYgPiBhIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9IH1cbiAgLm1haW4taGVhZGVyLWlubmVyLmhlYWRlci1zdGlja3kuc3RpY2t5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIGJvcmRlci10b3A6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IHRyYW5zcGFyZW50OyB9XG4gICAgLm1haW4taGVhZGVyLWlubmVyLmhlYWRlci1zdGlja3kuc3RpY2t5IC5sb2dvIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuYXV0by1kYXJrLXRoZW1lIC5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5LnN0aWNreSAubG9nbzpub3QoLmxvZ28tLWRhcmstbW9kZSkge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreS5zdGlja3kgLmxvZ28tLWRhcmstbW9kZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgLmF1dG8tZGFyay10aGVtZSAubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreS5zdGlja3kgLmxvZ28tLWRhcmstbW9kZSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm1haW4taGVhZGVyLWlubmVyLmhlYWRlci1zdGlja3kuc3RpY2t5IC5pY28tc2VhcmNoIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgIC5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5LnN0aWNreSAubG9nby13aGl0ZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm1haW4taGVhZGVyLWlubmVyLmhlYWRlci1zdGlja3kuc3RpY2t5IC5mb3Itc3RpY2t5IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreS5zdGlja3kgPiBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMjUzQzNBOyB9XG5cbi5zZWFyY2gtYnRuIHtcbiAgZm9udC1zaXplOiAxcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNlYXJjaC1idG4ge1xuICAgICAgaGVpZ2h0OiAzMHB4OyB9IH1cblxuLmhvbGRlci13cmFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmhvbGRlci13cmFwIC5pY28tdXNlciB7XG4gICAgICBmb250LXNpemU6IDE4cHg7IH0gfVxuXG5oZWFkZXIjbWFpbi1oZWFkZXIge1xuICBmb250LWZhbWlseTogXCJFZmZyYVwiO1xuICB6LWluZGV4OiA5OTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5mcm9udCBoZWFkZXIjbWFpbi1oZWFkZXIsXG4gICAgLmRhcmstdGhlbWUgaGVhZGVyI21haW4taGVhZGVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4ubG9nbyxcbi5sb2dvLXdoaXRlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmxvZ28sXG4gICAgLmxvZ28td2hpdGUge1xuICAgICAgcGFkZGluZzogMC41cmVtOyB9IH1cbiAgLm1haW4taGVhZGVyLWlubmVyIC5sb2dvLCAubWFpbi1oZWFkZXItaW5uZXJcbiAgLmxvZ28td2hpdGUge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC5zdGlja3kgLmxvZ28sIC5zdGlja3lcbiAgLmxvZ28td2hpdGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgICAuc3RpY2t5IC5sb2dvIGltZywgLnN0aWNreVxuICAgIC5sb2dvLXdoaXRlIGltZyB7XG4gICAgICB3aWR0aDogMTM0cHg7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICAuc3RpY2t5IC5sb2dvIGltZywgLnN0aWNreVxuICAgICAgICAubG9nby13aGl0ZSBpbWcge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2U7IH0gfVxuXG4ubG9nbyBpbWcge1xuICBjb2xvci1zY2hlbWU6IG9ubHkgbGlnaHQ7XG4gIHdpZHRoOiAxNjZweDtcbiAgcGFkZGluZy10b3A6IDEycHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxvZ28gaW1nIHtcbiAgICAgIHdpZHRoOiAyOTBweDsgfSB9XG5cbi5hdXRvLWRhcmstdGhlbWUgLmxvZ286bm90KC5sb2dvLS1kYXJrLW1vZGUpIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubG9nby0tZGFyay1tb2RlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICAuYXV0by1kYXJrLXRoZW1lIC5sb2dvLS1kYXJrLW1vZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5ob2xkZXItYXJlYSB7XG4gICAgbGluZS1oZWlnaHQ6IDA7IH0gfVxuXG5oZWFkZXIgLmhvbGRlci1hcmVhID4gZGl2LFxuI3N0aWNreS1hcmVhIC5ob2xkZXItYXJlYSA+IGRpdixcbi5ob2xkZXItYXJlYSAuaGVhZGVyLXN0aWNreSA+IGRpdiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4ucGRmLWJ0biBzcGFuIHtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cblxuLnBkZi1idG46aG92ZXIgaW1nIHtcbiAgZmlsdGVyOiBicmlnaHRuZXNzKDIwMCUpIGNvbnRyYXN0KDE0MCUpOyB9XG5cbi5sb2dpbi1idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDA7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtYXgtd2lkdGg6IDEzNjhweCkge1xuICAgIC5sb2dpbi1idG4gc3BhbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLmxvZ2luLWJ0biBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGNvbG9yOiAjMjUzQzNBO1xuICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtYXgtd2lkdGg6IDEzNjhweCkge1xuICAgICAgLmxvZ2luLWJ0biBhIHtcbiAgICAgICAgcGFkZGluZzogMXJlbSAxcmVtOyB9IH1cbiAgICAubG9naW4tYnRuIGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI1M0MzQTtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5sb2dpbi1idG4gaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtYXgtd2lkdGg6IDEzNjhweCkge1xuICAgICAgLmxvZ2luLWJ0biBpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG4ubWFpbi1oZWFkZXItYWZ0ZXIgLnNob3ctc3VibWVudSB7XG4gIG1hcmdpbi1ib3R0b206IDNyZW07IH1cbiAgLm1haW4taGVhZGVyLWFmdGVyIC5zaG93LXN1Ym1lbnUgbGkuYWN0aXZlIC5zdWJtZW51IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTM4LCA1NiwgNTYsIDAuMik7IH1cblxuLm1lbnUtcGFuZWwgdWwge1xuICBwYWRkaW5nOiAwLjVyZW0gMC4ycmVtIDFyZW07IH1cbiAgLm1lbnUtcGFuZWwgdWwgbGkgYSB7XG4gICAgcGFkZGluZzogMC43NXJlbSAwO1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5tZW51LXBhbmVsIGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5tZW51LXBhbmVsIGxpLmFjdGl2ZSA+IGEsXG4gIC5tZW51LXBhbmVsIGxpLmFjdGl2ZSBzcGFuIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjMkM4QTgyOyB9XG4gIC5tZW51LXBhbmVsIGxpLmFjdGl2ZS5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnRbYXJpYS1leHBhbmRlZD1cInRydWVcIl0gPiBhIHtcbiAgICBjb2xvcjogIzJDOEE4MjsgfVxuICAubWVudS1wYW5lbCBsaTpob3ZlciBzcGFuIGEge1xuICAgIGNvbG9yOiAjMkM4QTgyOyB9XG4gIC5tZW51LXBhbmVsIGxpIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5tZW51LXBhbmVsIGxpIGEge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMC44NXJlbSAwIDFyZW0gMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAubWVudS1wYW5lbCBsaSBhIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9IH1cbiAgICAubWVudS1wYW5lbCBsaSBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMkM4QTgyOyB9XG4gICAgLm1lbnUtcGFuZWwgbGkgYSBpbWcge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtOyB9XG5cbi5wYW5lbC1sYW5ndWFnZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfVxuICAucGFuZWwtbGFuZ3VhZ2VzIGEge1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnBhbmVsLWxhbmd1YWdlcyB7XG4gICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuXG4ubWVudS1wYW5lbCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm1lbnUtcGFuZWwgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6aG92ZXI6YmVmb3JlIHtcbiAgY29sb3I6ICMyQzhBODI7IH1cblxuLm1lbnUtcGFuZWwgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6YmVmb3JlIHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBjb250ZW50OiBcIlxcZTkxNlwiO1xuICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGhlaWdodDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxpbmUtaGVpZ2h0OiAzOHB4O1xuICBtYXJnaW4tdG9wOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMTsgfVxuXG4ubWVudS1wYW5lbCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50W2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdID4gYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxN1wiOyB9XG5cbkBrZXlmcmFtZXMgZmFkZW91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIDQwJSB7XG4gICAgb3BhY2l0eTogMC41OyB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZW91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIDQwJSB7XG4gICAgb3BhY2l0eTogMC41OyB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG4ubWVudS1wYW5lbCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50IC5zdWJtZW51IHtcbiAgei1pbmRleDogMjtcbiAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5tZW51LXBhbmVsIC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgLnN1Ym1lbnVbYXJpYS1oaWRkZW49XCJ0cnVlXCJdIHtcbiAgICBhbmltYXRpb246IDAuNXMgZWFzZS1vdXQgbm9ybWFsIGZvcndhcmRzIDEgZmFkZW91dDsgfVxuICAubWVudS1wYW5lbCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50IC5zdWJtZW51IGxpIGEge1xuICAgIGNvbG9yOiAjYjNjN2M1O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cbiAgICAubWVudS1wYW5lbCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50IC5zdWJtZW51IGxpIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICMyQzhBODI7XG4gICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAubWVudS1wYW5lbCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50IC5zdWJtZW51IC5zdWJtZW51IHtcbiAgICBwYWRkaW5nOiAwIDFyZW07IH1cblxuLm1lbnUtcGFuZWwgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCAubWVudS5zdWJtZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgYTo6YmVmb3JlIHtcbiAgbGVmdDogMTBweDsgfVxuXG4uc3RpY2t5LWhlYWRlci1zcGFjZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IGF1dG87XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4ubG9nby13aGl0ZSxcbi5pY28tcGRmLFxuLmljby1zZWFyY2gge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbiNhcmVhLXRvLXN0aWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA5OTk5OTk5O1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgI2FyZWEtdG8tc3RpY2sgLmdyaWQteCB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICNhcmVhLXRvLXN0aWNrIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi5vcGVuZWQge1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDsgfVxuICAub3BlbmVkICNhcmVhLXRvLXN0aWNrLFxuICAub3BlbmVkIC5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm9wZW5lZCAjYXJlYS10by1zdGljayxcbiAgICAgIC5vcGVuZWQgLm1haW4taGVhZGVyLWlubmVyLmhlYWRlci1zdGlja3kge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDsgfSB9XG4gICAgLm9wZW5lZCAjYXJlYS10by1zdGljayAubG9nbyxcbiAgICAub3BlbmVkIC5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5IC5sb2dvIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5hdXRvLWRhcmstdGhlbWUgLm9wZW5lZCAjYXJlYS10by1zdGljayAubG9nbzpub3QoLmxvZ28tLWRhcmstbW9kZSksIC5hdXRvLWRhcmstdGhlbWVcbiAgICAgIC5vcGVuZWQgLm1haW4taGVhZGVyLWlubmVyLmhlYWRlci1zdGlja3kgLmxvZ286bm90KC5sb2dvLS1kYXJrLW1vZGUpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLm9wZW5lZCAjYXJlYS10by1zdGljayAubG9nby0tZGFyay1tb2RlLFxuICAgICAgLm9wZW5lZCAubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreSAubG9nby0tZGFyay1tb2RlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAuYXV0by1kYXJrLXRoZW1lIC5vcGVuZWQgI2FyZWEtdG8tc3RpY2sgLmxvZ28tLWRhcmstbW9kZSwgLmF1dG8tZGFyay10aGVtZVxuICAgICAgICAub3BlbmVkIC5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5IC5sb2dvLS1kYXJrLW1vZGUge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLm9wZW5lZCAjYXJlYS10by1zdGljayAubG9nby13aGl0ZSxcbiAgICAub3BlbmVkIC5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5IC5sb2dvLXdoaXRlIHtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlIDBzO1xuICAgICAgd2lkdGg6IDE0MHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICAub3BlbmVkICNhcmVhLXRvLXN0aWNrIC5sb2dvLXdoaXRlLFxuICAgIC5vcGVuZWQgI2FyZWEtdG8tc3RpY2sgLmljby1wZGYsXG4gICAgLm9wZW5lZCAubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreSAubG9nby13aGl0ZSxcbiAgICAub3BlbmVkIC5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5IC5pY28tcGRmIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLm9wZW5lZCAjYXJlYS10by1zdGljayAudG9nZ2xlLW5hdi1wYW5lbCxcbiAgICAub3BlbmVkIC5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5IC50b2dnbGUtbmF2LXBhbmVsIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLm9wZW5lZCAjYXJlYS10by1zdGljayAuaWNvLXVzZXIsXG4gICAgLm9wZW5lZCAjYXJlYS10by1zdGljayAuYWNjb3VudC1tZW51LFxuICAgIC5vcGVuZWQgI2FyZWEtdG8tc3RpY2sgLmljby1zZWFyY2gsXG4gICAgLm9wZW5lZCAubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreSAuaWNvLXVzZXIsXG4gICAgLm9wZW5lZCAubWFpbi1oZWFkZXItaW5uZXIuaGVhZGVyLXN0aWNreSAuYWNjb3VudC1tZW51LFxuICAgIC5vcGVuZWQgLm1haW4taGVhZGVyLWlubmVyLmhlYWRlci1zdGlja3kgLmljby1zZWFyY2gge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAub3BlbmVkIC5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5IHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gM3JlbSAwLjVyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM2NDdlN2M7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI1M0MzQTsgfVxuXG5odG1sLm9wZW5lZCB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLnRvZ2dsZS1uYXYtcGFuZWwsXG4udG9nZ2xlLXNlYXJjaC1wYW5lbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgZm9udC1zaXplOiAxLjNyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICMwMDAwMDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAudG9nZ2xlLW5hdi1wYW5lbCxcbiAgICAudG9nZ2xlLXNlYXJjaC1wYW5lbCB7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICAudG9nZ2xlLW5hdi1wYW5lbDpob3ZlcixcbiAgLnRvZ2dsZS1zZWFyY2gtcGFuZWw6aG92ZXIge1xuICAgIGNvbG9yOiAjMkM4QTgyOyB9XG4gIC50b2dnbGUtbmF2LXBhbmVsLmlzLWFjdGl2ZSxcbiAgLnRvZ2dsZS1zZWFyY2gtcGFuZWwuaXMtYWN0aXZlIHtcbiAgICBmb250LXNpemU6IDEuMnJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5zdHVjay1oZWFkZXIgLnRvZ2dsZS1uYXYtcGFuZWwsIC5zdHVjay1oZWFkZXJcbiAgICAudG9nZ2xlLXNlYXJjaC1wYW5lbCB7XG4gICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuXG5bZGlyPVwibHRyXCJdIC50b2dnbGUtbmF2LXBhbmVsIHtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpOyB9XG5cbi5jYW52YXMtcGFuZWwge1xuICBwYWRkaW5nOiA1MHB4IDYwcHg7XG4gIHRvcDogNTBweDtcbiAgYm90dG9tOiAwO1xuICBoZWlnaHQ6IGF1dG87IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY2FudmFzLXBhbmVsIHtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIG9wYWNpdHk6IDA7IH0gfVxuICAuY2FudmFzLXBhbmVsLnNlYXJjaC1jYW52YXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuY2FudmFzLXBhbmVsIC5zb2NpYWxzLWFyZWEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDEuMjVyZW0gMCAycmVtOyB9XG5cbi5jbG9zZS1wYW5lbCB7XG4gIGhlaWdodDogNHJlbTsgfVxuICAuY2xvc2UtcGFuZWwgc3BhbiB7XG4gICAgcGFkZGluZzogMCAxcmVtO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgZm9udC1zaXplOiAyLjI1cmVtOyB9XG4gICAgLmNsb3NlLXBhbmVsIHNwYW46aG92ZXIge1xuICAgICAgY29sb3I6ICMyQzhBODI7IH1cblxuLnByaW50LWVkaXRpb24tYXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgcGFkZGluZzogMnJlbSAwO1xuICBib3JkZXItYm90dG9tOiAzcHggZG91YmxlICNkNmQ2ZDY7IH1cbiAgLnByaW50LWVkaXRpb24tYXJlYSBoNiB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LWZhbWlseTogXCJFZmZyYVwiO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAucHJpbnQtZWRpdGlvbi1hcmVhIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLnByaW50LWVkaXRpb24tYXJlYSBzcGFuIGEge1xuICAgICAgY29sb3I6ICM0NjQ2NDY7IH1cbiAgICAgIC5wcmludC1lZGl0aW9uLWFyZWEgc3BhbiBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICMyQzhBODI7IH1cbiAgLnByaW50LWVkaXRpb24tYXJlYSBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICBjb2xvcjogI2FiYWJhYjtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW07IH1cbiAgICAucHJpbnQtZWRpdGlvbi1hcmVhIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICMyQzhBODI7IH1cblxuI3Njcm9sbC1jYXQge1xuICBvdmVyZmxvdzogc2Nyb2xsO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gIC8qIEludGVybmV0IEV4cGxvcmVyIDEwKyAqL1xuICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG4gIC8qIEZpcmVmb3ggKi9cbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICNzY3JvbGwtY2F0IHtcbiAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfSB9XG4gICNzY3JvbGwtY2F0Ojotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICAvKiBTYWZhcmkgYW5kIENocm9tZSAqLyB9XG4gICNzY3JvbGwtY2F0IC5tQ3VzdG9tU2Nyb2xsQm94IHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICNzY3JvbGwtY2F0LmhlYWRlci10YWctd3JhcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuLmhlYWRlci10YWctd3JhcCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIG1hcmdpbi1ib3R0b206IDAuOHJlbTsgfVxuXG4uaGVhZGVyLXRhZyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAvKiBNb2JpbGUgUG9ydHJhdGUgLSBMYW5kc2NhcGUgKi8gfVxuICAuaGVhZGVyLXRhZyBhIHtcbiAgICBjb2xvcjogIzcxNzE3MTtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgZm9udC1mYW1pbHk6IFwiRWZmcmFcIjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjhyZW07IH1cbiAgICAuaGVhZGVyLXRhZyBhLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogIzJDOEE4MjsgfVxuICAgICAgLmRhcmstdGhlbWUgLmhlYWRlci10YWcgYS5hY3RpdmUge1xuICAgICAgICBjb2xvcjogIzJDOEE4MjsgfVxuICAgIC5kYXJrLXRoZW1lIC5oZWFkZXItdGFnIGEge1xuICAgICAgY29sb3I6ICM3MTcxNzE7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aDogMzIwcHgpIGFuZCAobWF4LWRldmljZS13aWR0aDogODk2cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSB7XG4gICAgLmhlYWRlci10YWcge1xuICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyB9IH1cblxuLm5hdnBhbmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjUzQzNBO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDk5O1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAubmF2cGFuZWwge1xuICAgICAgcG9zaXRpb246IGZpeGVkOyB9IH1cbiAgLm5hdnBhbmVsX19mb290ZXIge1xuICAgIG1hcmdpbi10b3A6IGF1dG87IH1cblxuLnRvZ2dsZS1tZWdhLW1lbnUge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC50b2dnbGUtbWVnYS1tZW51OmhvdmVyIHtcbiAgICBjb2xvcjogIzJDOEE4MjsgfVxuXG4ubWVnYS1tZW51IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3MmYyZjtcbiAgcGFkZGluZzogMTVweCAxNXB4IDY4cHg7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDk7IH1cbiAgQG1lZGlhIChtYXgtaGVpZ2h0OiA4MDBweCkge1xuICAgIC5zdGlja3kgLm1lZ2EtbWVudSB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvdmVyZmxvdy15OiBhdXRvOyB9IH1cbiAgLm1lZ2EtbWVudV9fY2xvc2Uge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXNpemU6IDIzcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNDJweDsgfVxuICAubWVnYS1tZW51IC5tZW51IGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgLm1lZ2EtbWVudSAubWVudSBsaSBhIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgICAgIC5tZWdhLW1lbnUgLm1lbnUgbGkgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjZDllZGViOyB9XG4gICAgLm1lZ2EtbWVudSAubWVudSBsaS5tZW51X19tYWluLWNhdGVnb3J5IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgICAgLm1lZ2EtbWVudSAubWVudSBsaS5tZW51X19tYWluLWNhdGVnb3J5ID4gYSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDllZGViOyB9XG4gICAgLm1lZ2EtbWVudSAubWVudSBsaS5tZW51X19zdWItY2F0ZWdvcnkge1xuICAgICAgZm9udC1mYW1pbHk6IFwiRWZmcmFcIjsgfVxuICAgIC5tZWdhLW1lbnUgLm1lbnUgbGkubWVudV9fY2hpbGQtY2F0ZWdvcnkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjZweDsgfVxuICAgICAgLm1lZ2EtbWVudSAubWVudSBsaS5tZW51X19jaGlsZC1jYXRlZ29yeSBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAgICAgLm1lZ2EtbWVudSAubWVudSBsaS5tZW51X19jaGlsZC1jYXRlZ29yeSBsaSBhIHtcbiAgICAgICAgICBjb2xvcjogI2FlZDdjNjsgfVxuXG4uZ3JvdXAtbWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHJvdy1nYXA6IDMwcHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JvdXAtbWVudSB7XG4gICAgICBwYWRkaW5nOiAwIDEuNXJlbTsgfSB9XG4gIC5ncm91cC1tZW51X19pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDMwcHg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMDIzcHgpIGFuZCAobWF4LXdpZHRoOiAxMDMwcHgpIHtcbiAgICAuZ3JvdXAtbWVudSAubWVudS52ZXJ0aWNhbCB7XG4gICAgICB3aWR0aDogY2FsYygzOTBweCAvIDUpICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncm91cC1tZW51IC5tZW51LnZlcnRpY2FsIHtcbiAgICAgIHdpZHRoOiBjYWxjKDQ5MHB4IC8gNSk7IH0gfVxuXG4vKiAtLS0tLS0gbmF2aWdhdGlvbiwgcGFuZWwgYW5kIHN0aWNreSBoZWFkZXIgLS0tLS0tIEVORCAtLS0tLS0gKi9cbi8qIEZvb3RlciBBcmVhIFN0eWxlcyAtLS0tLS0tIFNUQVJUIC0tLS0tICovXG4jbWFpbi1mb290ZXIge1xuICBwYWRkaW5nOiAxLjI1cmVtIDAgMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICNtYWluLWZvb3RlciB7XG4gICAgICBwYWRkaW5nOiAyLjVyZW0gMCAwOyB9IH1cbiAgLmFib3V0LXBhZ2UgI21haW4tZm9vdGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAubm90LWZvdW5kICNtYWluLWZvb3RlcixcbiAgLnBhdGgtam91cm5leSAjbWFpbi1mb290ZXIge1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gIC5tdWx0aW1lZGlhLWdhbGxlcnkgI21haW4tZm9vdGVyIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICNtYWluLWZvb3RlciAuc29jaWFsLWxibCB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZm9udC1mYW1pbHk6IFwiQXdzYXQgRGlnaXRhbFwiO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAxNnB4OyB9XG4gICAgW2Rpcj1cImx0clwiXSAjbWFpbi1mb290ZXIgLnNvY2lhbC1sYmwge1xuICAgICAgZm9udC1mYW1pbHk6IFwiQXdzYXQgRGlnaXRhbFwiOyB9XG4gIC5kYXJrLXRoZW1lICNtYWluLWZvb3RlciB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLm1haW4tZm9vdGVyLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG5cbi5tYWluLWZvb3Rlci1jb250ZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEwMWYxZDtcbiAgcGFkZGluZzogNDBweCAwIDIwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAubWFpbi1mb290ZXItY29udGVudCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfSB9XG4gIC5tYWluLWZvb3Rlci1jb250ZW50IGhyIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjMjUzQzNBOyB9XG5cbi5tYWluLWZvb3Rlci1iZWZvcmUge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAubWFpbi1mb290ZXItYmVmb3JlIHtcbiAgICAgIG9yZGVyOiAyOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWFpbi1mb290ZXItYmVmb3JlIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMjUzQzNBO1xuICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAubWFpbi1mb290ZXItYWZ0ZXItaW5uZXIge1xuICAgIG9yZGVyOiAxO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMjUzQzNBO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1haW4tZm9vdGVyLWFmdGVyLWlubmVyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzI1M0MzQTtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAubWFpbi1mb290ZXItYWZ0ZXItaW5uZXIgLm1lbnUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgd2lkdGg6IDM4MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9IH1cblxuLm1haW4tZm9vdGVyLWFmdGVyLWlubmVyIHVsIGxpIGEge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBmb250LWZhbWlseTogXCJBd3NhdCBEaWdpdGFsXCI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAubWFpbi1mb290ZXItYWZ0ZXItaW5uZXIgdWwgbGkgYSB7XG4gICAgICBjb2xvcjogIzdjOWE5NDsgfSB9XG4gIC5tYWluLWZvb3Rlci1hZnRlci1pbm5lciB1bCBsaSBhOmhvdmVyIHtcbiAgICBjb2xvcjogIzJDOEE4MjsgfVxuXG4ubWFpbi1mb290ZXItaW5uZXIge1xuICBwYWRkaW5nOiAwIDIuNXJlbSAwO1xuICBmb250LWZhbWlseTogXCJFZmZyYVwiOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLm1haW4tZm9vdGVyLWlubmVyIHtcbiAgICAgIG9yZGVyOiAzOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWFpbi1mb290ZXItaW5uZXIge1xuICAgICAgcGFkZGluZzogMDsgfSB9XG4gIC5tYWluLWZvb3Rlci1pbm5lciAuc29jaWFsLWxibCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG5cbi5tYWluLWZvb3Rlci1hZnRlciB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMDFmMWQ7XG4gIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAubWFpbi1mb290ZXItYWZ0ZXIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIG1hcmdpbi10b3A6IC01cHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tYWluLWZvb3Rlci1hZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjUzQzNBOyB9IH1cbiAgLm1haW4tZm9vdGVyLWFmdGVyLnN0eWxlLXYyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLm1haW4tZm9vdGVyLWFmdGVyLnN0eWxlLXYyIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0QxRDVENTtcbiAgICAgIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAubWFpbi1mb290ZXItYWZ0ZXIuc3R5bGUtdjIgLmdyaWQtY29udGFpbmVyIC5ncmlkLXggLmNlbGw6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIG9yZGVyOiAyOyB9IH1cbiAgICAubWFpbi1mb290ZXItYWZ0ZXIuc3R5bGUtdjIgLmNvcHlyaWdodCB7XG4gICAgICBjb2xvcjogIzI1M0MzQTtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDsgfVxuICAgIC5tYWluLWZvb3Rlci1hZnRlci5zdHlsZS12MiAubWVudSBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIHBhZGRpbmc6IDE1cHg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmxvZ28tZm9vdGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5sb2dvLWZvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogMzBweDsgfSB9XG5cbi5sb2dvLWZvb3RlciBpbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBtYXgtd2lkdGg6IDE5MHB4O1xuICBjb2xvci1zY2hlbWU6IG9ubHkgbGlnaHQ7IH1cblxuLmNvcHlyaWdodCB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuY29weXJpZ2h0IHtcbiAgICAgIHBhZGRpbmc6IDFyZW07IH0gfVxuICAuY2FudmFzLXBhbmVsIC5jb3B5cmlnaHQge1xuICAgIHBhZGRpbmc6IDAgMS41cmVtIDJyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAubWFpbi1mb290ZXItYWZ0ZXIgLmNvcHlyaWdodCB7XG4gICAgICBjb2xvcjogIzgwOTA4ZTsgfSB9XG4gIC5jb3B5cmlnaHQgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuZm9vdGVyLW1lbnUgLm1lbnUge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfSB9XG5cbi5mb290ZXItbWVudSAubWVudSBsaSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLmZvb3Rlci1tZW51IC5tZW51ID4gbGkge1xuICBmb250LXNpemU6IDFyZW07IH1cbiAgLmZvb3Rlci1tZW51IC5tZW51ID4gbGk6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgW2Rpcj1cImx0clwiXSAuZm9vdGVyLW1lbnUgLm1lbnUgPiBsaSB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuICBbbGFuZz1cInRyXCJdIC5mb290ZXItbWVudSAubWVudSA+IGxpIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtOyB9XG4gIC5mb290ZXItbWVudSAubWVudSA+IGxpIGEge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cbiAgICAuZm9vdGVyLW1lbnUgLm1lbnUgPiBsaSBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMkM4QTgyOyB9XG4gICAgLmZvb3Rlci1tZW51IC5tZW51ID4gbGkgYSBzdHJvbmcge1xuICAgICAgZm9udC1mYW1pbHk6IFwiQXdzYXQgRGlnaXRhbFwiOyB9XG5cbi5mb290ZXItbWVudSA+IC5ncmlkLXgge1xuICAvKiBuZXRib29rIG9ubHkgKi8gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuZm9vdGVyLW1lbnUgPiAuZ3JpZC14IHtcbiAgICAgIGdhcDogMjBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvb3Rlci1tZW51ID4gLmdyaWQteCB7XG4gICAgICBnYXA6IDIwcHg7IH1cbiAgICAgIC5mb290ZXItbWVudSA+IC5ncmlkLXggPiAuY2VsbCB7XG4gICAgICAgIHdpZHRoOiAxMDBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5kb3dubG9hZC1hcHAge1xuICAgIG1hcmdpbjogMS41cmVtIC0wLjVyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyNTNDM0E7XG4gICAgcGFkZGluZzogMXJlbTsgfSB9XG5cbi5kb3dubG9hZC1hcHAgYSB7XG4gIG1hcmdpbi1yaWdodDogMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5kb3dubG9hZC1hcHAgYSB7XG4gICAgICBtYXJnaW46IDAgMC4ycmVtOyB9IH1cblxuLmRvd25sb2FkLWFwcCBpbWcge1xuICB3aWR0aDogMTMwcHg7XG4gIGNvbG9yLXNjaGVtZTogb25seSBsaWdodDsgfVxuXG4uZm9vdGVyLXNvY2lhbHMge1xuICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmZvb3Rlci1zb2NpYWxzIC5zb2NpYWxzLWJ0bnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cblxuLyogRm9vdGVyIEFyZWEgU3R5bGVzIC0tLS0tLS0gRU5EIC0tLS0tICovXG4vKioqXG4qaHR0cHM6Ly93d3cuanF1ZXJ5c2NyaXB0Lm5ldC9hbmltYXRpb24vbmV3cy10aWNrZXItY29udHJvbHMtYWNtZS5odG1sXG4qaHR0cHM6Ly93d3cuanF1ZXJ5c2NyaXB0Lm5ldC9kZW1vL25ld3MtdGlja2VyLWNvbnRyb2xzLWFjbWUvXG4qKi9cbi8qRURJVEVEIFRPIEZJVCBBQVdTQVQgTEFZT1VUKi9cbioge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuKixcbjo6YWZ0ZXIsXG46OmJlZm9yZSB7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0IDBzO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dCAwcztcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQgMHM7IH1cblxuYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cdE5ld3MgVGlja2VyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmFjbWUtbmV3cy10aWNrZXIge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogNDVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzE5NzRkMjtcbiAgbWFyZ2luLXRvcDogNDVweDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmFjbWUtbmV3cy10aWNrZXIge1xuICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuXG4uYWNtZS1uZXdzLXRpY2tlci1sYWJlbCB7XG4gIGJhY2tncm91bmQ6ICMxOTc0ZDI7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHdpZHRoOiBhdXRvO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAuYWNtZS1uZXdzLXRpY2tlci1sYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTQ1cHg7IH0gfVxuXG4uYWNtZS1uZXdzLXRpY2tlci1ib3gge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAuYWNtZS1uZXdzLXRpY2tlci1ib3gge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxMjBweDsgfSB9XG5cbi5hY21lLW5ld3MtdGlja2VyLWJveCB1bCB7XG4gIHdpZHRoOiAxMDAlO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmUgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwOyB9XG5cbi5hY21lLW5ld3MtdGlja2VyLWJveCB1bCBsaSBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5hY21lLW5ld3MtdGlja2VyLWNvbnRyb2xzIHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwOyB9XG5cbi5hY21lLW5ld3MtdGlja2VyLWNvbnRyb2xzIGJ1dHRvbiB7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2Y2ZjZmNjtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDQwcHg7XG4gIGJvcmRlci1jb2xvcjogI2VlZWVlZTtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwIDAgMCAxcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5hY21lLW5ld3MtdGlja2VyLWNvbnRyb2xzIGJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNlZWVlZWU7IH1cblxuLmFjbWUtbmV3cy10aWNrZXItY29udHJvbHMgYnV0dG9uLmFjbWUtbmV3cy10aWNrZXItYXJyb3cge1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5hY21lLW5ld3MtdGlja2VyLWNvbnRyb2xzIGJ1dHRvbi5hY21lLW5ld3MtdGlja2VyLWFycm93OmFmdGVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjOTk5O1xuICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xuICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAycHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogOHB4O1xuICByaWdodDogNTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogOHB4OyB9XG5cbi5hY21lLW5ld3MtdGlja2VyLWNvbnRyb2xzIGJ1dHRvbi5hY21lLW5ld3MtdGlja2VyLXBhdXNlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLmFjbWUtbmV3cy10aWNrZXItY29udHJvbHMgYnV0dG9uLmFjbWUtbmV3cy10aWNrZXItcGF1c2U6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4O1xuICBib3JkZXItY29sb3I6ICM5OTk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMCAycHggMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgcmlnaHQ6IDUwJTtcbiAgdG9wOiA1MCU7IH1cblxuLmFjbWUtbmV3cy10aWNrZXItY29udHJvbHMuYWNtZS1uZXdzLXRpY2tlci1ob3Jpem9udGFsLWNvbnRyb2xzIGJ1dHRvbi5hY21lLW5ld3MtdGlja2VyLXByZXY6YWZ0ZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgxMzVkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDEzNWRlZyk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgxMzVkZWcpOyB9XG5cbi5hY21lLW5ld3MtdGlja2VyLWNvbnRyb2xzLmFjbWUtbmV3cy10aWNrZXItaG9yaXpvbnRhbC1jb250cm9scyBidXR0b24uYWNtZS1uZXdzLXRpY2tlci1uZXh0OmFmdGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMzE1ZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgzMTVkZWcpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMzE1ZGVnKTsgfVxuXG4uYWNtZS1uZXdzLXRpY2tlci1jb250cm9scy5hY21lLW5ld3MtdGlja2VyLXZlcnRpY2FsLWNvbnRyb2xzIGJ1dHRvbi5hY21lLW5ld3MtdGlja2VyLXByZXY6YWZ0ZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgyMjVkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDIyNWRlZyk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgyMjVkZWcpOyB9XG5cbi5hY21lLW5ld3MtdGlja2VyLWNvbnRyb2xzLmFjbWUtbmV3cy10aWNrZXItdmVydGljYWwtY29udHJvbHMgYnV0dG9uLmFjbWUtbmV3cy10aWNrZXItbmV4dDphZnRlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDQwNWRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoNDA1ZGVnKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDQwNWRlZyk7IH1cblxuLyojIHNvdXJjZU1hcHBpbmdVUkw9c3R5bGUuY3NzLm1hcCAqL1xuLyogLS0tLS0tLSBBVURJTyBQTEFZRVIgV0lER0VUIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cbi5hdWRpby1wbGF5ZXI6aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLm9waW5pb24tYXV0aG9ycy1saXN0IC5hdWRpby1wbGF5ZXI6aG92ZXIgLnBvZGNhc3QtbGFiZWwge1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLmF1ZGlvLXBsYXllciAuanctcmlnaHRjbGljayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4ub3Bpbmlvbi1hdXRob3JzLWxpc3QgLmF1ZGlvLXBsYXllcixcbi5vcGluaW9uLXdyYXAgLmF1ZGlvLXBsYXllciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLmJsb2NrLXdyYXBwZXIgLmF1ZGlvLXBsYXllciAucG9kY2FzdC1sYWJlbCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmF1ZGlvLXBsYXllciAuanctd3JhcHBlci5qdy1yZXNldCxcbi5hdWRpby1wbGF5ZXIgLmp3LWNvbnRyb2xzLmp3LXJlc2V0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLm9waW5pb24tYXV0aG9ycy1saXN0IC5hdWRpby1wbGF5ZXIgLmp3LXdyYXBwZXIuanctcmVzZXQsXG4gIC5vcGluaW9uLXdyYXAgLmF1ZGlvLXBsYXllciAuanctd3JhcHBlci5qdy1yZXNldCwgLm9waW5pb24tYXV0aG9ycy1saXN0XG4gIC5hdWRpby1wbGF5ZXIgLmp3LWNvbnRyb2xzLmp3LXJlc2V0LFxuICAub3Bpbmlvbi13cmFwXG4gIC5hdWRpby1wbGF5ZXIgLmp3LWNvbnRyb2xzLmp3LXJlc2V0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uYXVkaW8tcGxheWVyIC5qd3BsYXllci5qdy1zdGF0ZS1jb21wbGV0ZSAuanctY29udHJvbHMuanctcmVzZXQge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4uYXVkaW8tcGxheWVyIC5qdy1jb250cm9scy1iYWNrZHJvcC5qdy1yZXNldCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi5hdWRpby1wbGF5ZXIgLmp3cGxheWVyLmp3LXJlc2V0IHtcbiAgaGVpZ2h0OiAzNXB4ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5vcGluaW9uLWF1dGhvcnMtbGlzdCAuYXVkaW8tcGxheWVyIC5qd3BsYXllci5qdy1yZXNldCxcbiAgLm9waW5pb24td3JhcCAuYXVkaW8tcGxheWVyIC5qd3BsYXllci5qdy1yZXNldCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgd2lkdGg6IDM1cHg7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5wb2RjYXN0LWZsb2F0ZXIgLmF1ZGlvLXBsYXllciAuandwbGF5ZXIuanctcmVzZXQge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAucG9kY2FzdC1mbG9hdGVyIC5hdWRpby1wbGF5ZXIgLmp3LWNvbnRyb2xzLmp3LWJ1ZmZlci5qdy1yZXNldCwgLnBvZGNhc3QtZmxvYXRlclxuICAuYXVkaW8tcGxheWVyIC5qdy1jb250cm9scy5qdy1yZXNldCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IH0gfVxuXG4uYXVkaW8tcGxheWVyIC5qdy1zbGlkZXItdGltZS5qdy1yZXNldCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLmF1ZGlvLXBsYXllciAuanctY29udHJvbGJhci5qdy1yZXNldCAuanctcmVzZXQuanctaWNvbi12b2x1bWUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5hdWRpby1wbGF5ZXIgLmp3LWZsYWctYXVkaW8tcGxheWVyIC5qdy1jb250cm9sYmFyIC5qdy1pY29uLWlubGluZS5qdy10ZXh0LWNvdW50ZG93bi5qdy1yZXNldCB7XG4gIGNvbG9yOiAjOTI5ODk4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxZW07XG4gIG9yZGVyOiAxO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuYXVkaW8tcGxheWVyIC5qdy1mbGFnLWF1ZGlvLXBsYXllciAuanctY29udHJvbGJhciAuanctaWNvbi1pbmxpbmUuanctdGV4dC1jb3VudGRvd24uanctcmVzZXQge1xuICAgICAgZm9udC1zaXplOiAxMHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAucG9kY2FzdC1mbG9hdGVyIC5hdWRpby1wbGF5ZXIgLmp3LWZsYWctYXVkaW8tcGxheWVyIC5qdy1jb250cm9sYmFyIC5qdy1pY29uLWlubGluZS5qdy10ZXh0LWNvdW50ZG93bi5qdy1yZXNldCB7XG4gICAgICBsZWZ0OiAtNHJlbTtcbiAgICAgIHRvcDogMTBweDsgfSB9XG4gIC5hdWRpby1wb2RjYXN0LS1uby1iYXIgLmF1ZGlvLXBsYXllciAuanctZmxhZy1hdWRpby1wbGF5ZXIgLmp3LWNvbnRyb2xiYXIgLmp3LWljb24taW5saW5lLmp3LXRleHQtY291bnRkb3duLmp3LXJlc2V0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLmF1ZGlvLXBsYXllciAuanctaWNvbi5qdy1pY29uLWlubGluZS5qdy1idXR0b24tY29sb3IuanctcmVzZXQuanctaWNvbi1yZXdpbmQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5hdWRpby1wbGF5ZXIgLmp3LWljb24uanctaWNvbi10b29sdGlwLmp3LWljb24tdm9sdW1lLmp3LWJ1dHRvbi1jb2xvci5qdy1yZXNldC5qdy1mbGFnLWhvcml6b250YWwtc2xpZGVyLmp3LWZ1bGwge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5hdWRpby1wbGF5ZXIgLmp3LWljb24uanctaWNvbi10b29sdGlwLmp3LWljb24tdm9sdW1lLmp3LWJ1dHRvbi1jb2xvci5qdy1yZXNldC5qdy1mbGFnLWhvcml6b250YWwtc2xpZGVyLmp3LW9mZiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmF1ZGlvLXBsYXllciAuanctaWNvbi5qdy1pY29uLWlubGluZS5qdy10ZXh0Lmp3LXJlc2V0Lmp3LXRleHQtZWxhcHNlZCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmF1ZGlvLXBsYXllciAuanctaWNvbi5qdy1pY29uLWlubGluZS5qdy10ZXh0Lmp3LXJlc2V0Lmp3LXRleHQtZHVyYXRpb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYXVkaW8tcGxheWVyIC5qd3BsYXllcjpub3QoLmp3LWJyZWFrcG9pbnQtLTEpIC5qdy10ZXh0LWR1cmF0aW9uOmJlZm9yZSxcbiAgLmF1ZGlvLXBsYXllciAuandwbGF5ZXI6bm90KC5qdy1icmVha3BvaW50LTApIC5qdy10ZXh0LWR1cmF0aW9uOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjsgfSB9XG5cbi5hdWRpby1wbGF5ZXIgLmp3LXN2Zy1pY29uLmp3LXN2Zy1pY29uLXBsYXkge1xuICBjb2xvcjogIzJDOEE4MjsgfVxuXG4uYXVkaW8tcGxheWVyIC5qdy1idWZmZXIuanctcmVzZXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkM4QTgyOyB9XG5cbi5hdWRpby1wbGF5ZXIgLmp3LWljb24uanctaWNvbi1pbmxpbmUuanctYnV0dG9uLWNvbG9yLmp3LXJlc2V0Lmp3LWljb24tcGxheWJhY2sge1xuICBjb2xvcjogIzJDOEE4MjtcbiAgaGVpZ2h0OiAzNXB4O1xuICB3aWR0aDogMzVweDtcbiAgYmFja2dyb3VuZDogI2VjZjRmMztcbiAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gIC5vcGluaW9uLWF1dGhvcnMtbGlzdCAuYXVkaW8tcGxheWVyIC5qdy1pY29uLmp3LWljb24taW5saW5lLmp3LWJ1dHRvbi1jb2xvci5qdy1yZXNldC5qdy1pY29uLXBsYXliYWNrLFxuICAub3Bpbmlvbi13cmFwIC5hdWRpby1wbGF5ZXIgLmp3LWljb24uanctaWNvbi1pbmxpbmUuanctYnV0dG9uLWNvbG9yLmp3LXJlc2V0Lmp3LWljb24tcGxheWJhY2sge1xuICAgIGJhY2tncm91bmQ6ICNlY2Y0ZjM7IH1cbiAgLmF1ZGlvLXBvZGNhc3QtLW5vLWJhciAuYXVkaW8tcGxheWVyIC5qdy1pY29uLmp3LWljb24taW5saW5lLmp3LWJ1dHRvbi1jb2xvci5qdy1yZXNldC5qdy1pY29uLXBsYXliYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDIwcHg7IH1cblxuLmF1ZGlvLXBsYXllciAuanctcHJvZ3Jlc3MuanctcmVzZXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjazsgfVxuXG4uYXVkaW8tcGxheWVyIC5qdy1zbGlkZXItY29udGFpbmVyLmp3LXJlc2V0IHtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgaGVpZ2h0OiAzLjVweDsgfVxuXG4uYXVkaW8tcGxheWVyIC5qdy1zbGlkZXItaG9yaXpvbnRhbC5qdy1jaGFwdGVyLXNsaWRlci10aW1lIC5qdy1zbGlkZXItY29udGFpbmVyIC5qdy10aW1lc2VnbWVudC5qdy1yZXNldCB7XG4gIGZsZXgtZ3JvdzogMTsgfVxuXG4uYXVkaW8tcGxheWVyIC5qdy10aW1lc2VnbWVudC1iYXIuanctcmFpbC5qdy10aW1lc2VnbWVudC1iYWNrZ3JvdW5kLmp3LXJlc2V0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWZlZSAhaW1wb3J0YW50OyB9XG5cbi5hdWRpby1wbGF5ZXIgLmp3LXRpbWVzZWdtZW50LWJhci5qdy1wcm9ncmVzcy5qdy10aW1lc2VnbWVudC1wcm9ncmVzcy5qdy1yZXNldCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyYzg5ODE7IH1cblxuLmF1ZGlvLXBsYXllciAuanctcmVzZXQuanctYnV0dG9uLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5vcGluaW9uLWF1dGhvcnMtbGlzdCAuYXVkaW8tcGxheWVyIC5qdy1yZXNldC5qdy1idXR0b24tY29udGFpbmVyLFxuICAub3Bpbmlvbi13cmFwIC5hdWRpby1wbGF5ZXIgLmp3LXJlc2V0Lmp3LWJ1dHRvbi1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5hdWRpby1wbGF5ZXIgLmp3LWtub2IuanctcmVzZXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkM4QTgyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgwLjgpO1xuICBib3gtc2hhZG93OiBpbmhlcml0O1xuICBoZWlnaHQ6IDEwcHg7XG4gIHdpZHRoOiAxMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnBvZGNhc3QtZmxvYXRlciAuYXVkaW8tcGxheWVyIC5qdy1rbm9iLmp3LXJlc2V0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uYXVkaW8tcGxheWVyIC5qdy1ob3Jpem9udGFsLXZvbHVtZS1jb250YWluZXIge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmJsb2NrLXdyYXBwZXIgLmF1ZGlvLXBsYXllciB7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtOyB9IH1cblxuLnBvZGNhc3QtZmxvYXRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIHotaW5kZXg6IDk7XG4gIHBhZGRpbmc6IDAgMCAyLjE1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8qIE1vYmlsZSBMYW5kc2NhcGUgKi8gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA4OTZweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5wb2RjYXN0LWZsb2F0ZXIge1xuICAgICAgcGFkZGluZzogMXJlbSAwIDJyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wb2RjYXN0LWZsb2F0ZXIge1xuICAgICAgcGFkZGluZzogMXJlbSA0cmVtOyB9IH1cbiAgLnBvZGNhc3QtZmxvYXRlciAuYnRuLXNoYXJlLXdyYXAgLmJ0bi1zaGFyZSB7XG4gICAgbWFyZ2luOiAwIDEwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAucG9kY2FzdC1mbG9hdGVyIC5qd3BsYXllci5qdy1yZXNldCB7XG4gICAgICBoZWlnaHQ6IDcwcHggIWltcG9ydGFudDsgfSB9XG4gIC5wb2RjYXN0LWZsb2F0ZXIgLmNsb3NlLWJ0biB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5wb2RjYXN0LWZsb2F0ZXIgLmNsb3NlLWJ0biB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgICAgICBjb2xvcjogIzkwYTNhMjsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnBvZGNhc3QtZmxvYXRlciAuanctc2xpZGVyLXRpbWUuanctcmVzZXQge1xuICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgei1pbmRleDogOTk5OTk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAtNC44NXJlbTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGhlaWdodDogNXB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAucG9kY2FzdC1mbG9hdGVyIC5qd3BsYXllcjpub3QoLmp3LWZsYWctYWRzKTpub3QoLmp3LWZsYWctbGl2ZSkuanctYnJlYWtwb2ludC0wIC5qdy10ZXh0LWNvdW50ZG93bi5qdy1yZXNldCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwcHg7XG4gICAgICBsZWZ0OiAtNHJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnBvZGNhc3QtZmxvYXRlciAuanctZmxhZy1hdWRpby1wbGF5ZXIuanctZmxhZy1zbWFsbC1wbGF5ZXIgLmp3LXJlc2V0Lmp3LXRleHQtZHVyYXRpb24ge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjOTI5ODk4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxMHB4O1xuICAgICAgbGVmdDogaW5pdGlhbDtcbiAgICAgIHJpZ2h0OiAtMjByZW07XG4gICAgICBmb250LXNpemU6IDEwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5wb2RjYXN0LWZsb2F0ZXIgLmp3LWljb24uanctaWNvbi1pbmxpbmUuanctYnV0dG9uLWNvbG9yLmp3LXJlc2V0Lmp3LWljb24tcGxheWJhY2sge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAyLjJyZW07XG4gICAgICBsZWZ0OiAtMS4zcmVtO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH0gfVxuXG4ucG9kY2FzdC1mbG9hdGVyLWl0ZW0gaW1nIHtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogMzVweDtcbiAgb2JqZWN0LWZpdDogY292ZXI7IH1cblxuLnBvZGNhc3QtZmxvYXRlci1pdGVtIGg2IHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAucGxheWVyICNwb2RjYXN0VG9kYXkge1xuICAgIG1hcmdpbi10b3A6IDIuM3JlbTsgfSB9XG5cbi5wbGF5ZXIgLnBsYXllci1zb25nIC50aW1lc3RhbXBzIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBmb250LXNpemU6IDExcHg7XG4gIGNvbG9yOiAjYmZiZmJmO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXJlY3Rpb246IGx0cjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5wb2RjYXN0LWZsb2F0ZXIgLnBsYXllciAucGxheWVyLXNvbmcgLnRpbWVzdGFtcHMgaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcbiAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgIHotaW5kZXg6IDk5OTk5O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnBvZGNhc3QtZmxvYXRlciAucGxheWVyIC5wbGF5ZXItc29uZyAudGltZXN0YW1wcyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHBhZGRpbmc6IDdweCAxcmVtIDA7XG4gICAgICBmb250LXNpemU6IDEwcHg7IH0gfVxuXG4ucGxheWVyIC5wbGF5ZXItc29uZyAudGltZS1ub3cge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGxheWVyIC5wbGF5ZXItc29uZyAudGltZS1ub3cge1xuICAgICAgd2lkdGg6IDU1cHg7IH0gfVxuXG4ucGxheWVyIC5wbGF5ZXItc29uZyAudGltZS1maW5pc2gge1xuICBtYXJnaW4tbGVmdDogMXJlbTsgfVxuXG4ucGxheWVyIC5wbGF5ZXItc29uZyAuYWN0aW9ucyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDMwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5wbGF5ZXIgLnBsYXllci1zb25nIC5hY3Rpb25zIGkge1xuICAgIGNvbG9yOiAjMkM4QTgyO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cbiAgICAucGxheWVyIC5wbGF5ZXItc29uZyAuYWN0aW9ucyBpLmljb24tcGF1c2Uge1xuICAgICAgZm9udC1zaXplOiAxcmVtOyB9XG4gIC5wbGF5ZXIgLnBsYXllci1zb25nIC5hY3Rpb25zIC5uZXh0LFxuICAucGxheWVyIC5wbGF5ZXItc29uZyAuYWN0aW9ucyAucHJldiB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5wbGF5ZXIgLnBsYXllci1zb25nIC5hY3Rpb25zIC5wbGF5IHtcbiAgICBtYXJnaW46IDAgMXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAucG9kY2FzdC1mbG9hdGVyIC5wbGF5ZXIgLnBsYXllci1zb25nIC5hY3Rpb25zIC5wbGF5IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjVyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuXG4uYXVkaW8tcGxheWVyLWZsb2F0ZXIuYXVkaW8tcGxheWVyIHtcbiAgLyogTW9iaWxlIExhbmRzY2FwZSAqLyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDMyMHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDg5NnB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMikgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLmF1ZGlvLXBsYXllci1mbG9hdGVyLmF1ZGlvLXBsYXllciB7XG4gICAgICB3aWR0aDogMzQwcHg7IH0gfVxuICAuYXVkaW8tcGxheWVyLWZsb2F0ZXIuYXVkaW8tcGxheWVyIGlucHV0W3R5cGU9XCJyYW5nZVwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzJjOGE4MiAwJSwgI2RjZWJlOSAwJSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzcHg7XG4gICAgYm90dG9tOiB1bnNldDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3AgMDtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4OyB9XG4gIC5hdWRpby1wbGF5ZXItZmxvYXRlci5hdWRpby1wbGF5ZXIgaW5wdXRbdHlwZT1cInJhbmdlXCJdOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGhlaWdodDogMTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGN1cnNvcjogZXctcmVzaXplO1xuICAgIGJhY2tncm91bmQ6ICMyQzhBODI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLnBvZGNhc3QtZmxvYXRlciAuYXVkaW8tcGxheWVyLWZsb2F0ZXIuYXVkaW8tcGxheWVyIGlucHV0W3R5cGU9XCJyYW5nZVwiXTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICBoZWlnaHQ6IDFweDsgfSB9XG5cbi5ub3QtcGxheWluZyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmF1ZGlvLXBsYXllci1wbGF5IHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5hdWRpby1wbGF5ZXItdGltZSB7XG4gIG1hcmdpbi1yaWdodDogMTVweDsgfVxuICAuYXVkaW8tcGxheWVyLXRpbWUgLmljb24tcGxheS1ncmVlbiB7XG4gICAgY29sb3I6ICMyQzhBODI7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICB3aWR0aDogMTZweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAucGxheWluZyAuYXVkaW8tcGxheWVyLXRpbWUgLmljb24tcGxheS1ncmVlbiB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuICAgICAgLnBsYXlpbmcgLmF1ZGlvLXBsYXllci10aW1lIC5pY29uLXBsYXktZ3JlZW46YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXGU5MjNcIjsgfVxuICAuYXVkaW8tcGxheWVyLXRpbWUgdGltZSB7XG4gICAgY29sb3I6ICM5Mjk4OTg7XG4gICAgZm9udC1zaXplOiAxNHB4OyB9XG4gICAgLmF1ZGlvLXBsYXllci10aW1lIHRpbWUgLmF1ZGlvLXBvZGNhc3QtLW5vLWJhciB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH1cblxuLmF1ZGlvLXBvZGNhc3QtLW5vLWJhciAuYXVkaW8tcGxheWVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMTBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAuYXVkaW8tcG9kY2FzdC0tbm8tYmFyIC5hdWRpby1wbGF5ZXIge1xuICAgICAgaGVpZ2h0OiAyOHB4OyB9IH1cbiAgLmF1ZGlvLXBvZGNhc3QtLW5vLWJhciAuYXVkaW8tcGxheWVyIC5qd3BsYXllci5qdy1yZXNldCB7XG4gICAgd2lkdGg6IDY1cHg7XG4gICAgaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuYXVkaW8tcG9kY2FzdC0tbm8tYmFyIC5hdWRpby1wbGF5ZXIgLmp3LXdyYXBwZXIuanctcmVzZXQge1xuICAgIHdpZHRoOiA4NXB4OyB9XG5cbi5hdWRpby1wb2RjYXN0LS1uby1iYXIgLmF1ZGlvLXBsYXllciAuanctc2xpZGVyLXRpbWUuanctcmVzZXQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5ibG9jay13cmFwcGVyIC5hdWRpby1wb2RjYXN0LS1uby1iYXIgLnBvZGNhc3QtbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMyQzhBODI7IH1cblxuLmF1ZGlvLXBvZGNhc3QtLW5vLWJhciAuYXV0aG9yLW5hbWUge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLmF1ZGlvLXBvZGNhc3QtLW5vLWJhciAuYXV0aG9yLW5hbWUgYSB7XG4gICAgY29sb3I6ICM5Njk2OTY7IH1cblxuW2xhbmc9XCJhclwiXSAuYXVkaW8tcG9kY2FzdC0tbm8tYmFyIGg0LFxuW2Rpcj1cImx0clwiXSAuYXVkaW8tcG9kY2FzdC0tbm8tYmFyIGg0IHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07IH1cblxuLmF1ZGlvLXBvZGNhc3QtLW5vLWJhciAuc2xpY2stZG90cyB7XG4gIGJvdHRvbTogLTM1cHg7IH1cblxuLmF1ZGlvLXBvZGNhc3QtLW5vLWJhci5vYmplY3RzLWxpc3QuaGFzLXNlcGFyYXRvciAub2JqZWN0LWl0ZW0ge1xuICBwYWRkaW5nLXRvcDogMjVweDtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7IH1cblxuLmJsb2NrLXdyYXBwZXIgLmF1ZGlvLXBvZGNhc3QtLW5vLWJhci5vYmplY3RzLWxpc3Qge1xuICBtYXJnaW4tYm90dG9tOiAwLjhyZW07IH1cblxuLmF1ZGlvLXBvZGNhc3QgLnJvdW5kIGltZyB7XG4gIHdpZHRoOiA3OXB4O1xuICBoZWlnaHQ6IDc5cHg7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBjb2xvci1zY2hlbWU6IG9ubHkgbGlnaHQ7IH1cblxuLmF1ZGlvLXBvZGNhc3QtLW5vLWJhciAucm91bmQgaW1nIHtcbiAgd2lkdGg6IDU4LjMzcHg7XG4gIGhlaWdodDogNTguMzNweDsgfVxuXG4uYXVkaW8tcG9kY2FzdC0tYm90dG9tIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMTBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAuYXVkaW8tcG9kY2FzdC0tYm90dG9tIHtcbiAgICAgIGhlaWdodDogMjhweDsgfSB9XG4gIC5hdWRpby1wb2RjYXN0LS1uby1iYXIgLmF1ZGlvLXBvZGNhc3QtLWJvdHRvbSAuYXVkaW8tcGxheWVyIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAuYXVkaW8tcG9kY2FzdC0tbm8tYmFyIC5hdWRpby1wb2RjYXN0LS1ib3R0b20gLmF1ZGlvLXBsYXllciB7XG4gICAgICAgIGhlaWdodDogYXV0bzsgfSB9XG5cbi8qIC0tLS0tLS0gQVVESU8gUExBWUVSIFdJREdFVCAtLS0tLS0tIEVORCAtLS0tLS0tLSAqL1xuLnRvdGFsLWl0ZW1zIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAudG90YWwtaXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMjBweDsgfSB9XG5cbi50b3RhbC1pdGVtIHAge1xuICBjb2xvcjogIzJDOEE4MjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4udG90YWwtY291bnQge1xuICBmb250LXNpemU6IDM5LjA2cHg7XG4gIGxpbmUtaGVpZ2h0OiA0NXB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnRvdGFsLWNvdW50IHtcbiAgICAgIGZvbnQtc2l6ZTogNjEuMDRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA2NnB4OyB9IH1cblxuLmZpZ3VyZXMtY29udGVudCB1bCB7XG4gIG1hcmdpbi1yaWdodDogMDsgfVxuICAuZmlndXJlcy1jb250ZW50IHVsIGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5mYWN0cyBsaSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLmZhY3RzIGxpIC5mYWN0LWxibCB7XG4gICAgY29sb3I6ICMyQzhBODI7XG4gICAgbWluLXdpZHRoOiAxMjBweDsgfVxuXG4uZmllbGRzIHtcbiAgZm9udC1mYW1pbHk6IFwiRWZmcmFcIjtcbiAgbWFyZ2luLXRvcDogM3JlbTtcbiAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IDI7XG4gIC1tb3otY29sdW1uLWNvdW50OiAyO1xuICBjb2x1bW4tY291bnQ6IDI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmllbGRzIHtcbiAgICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAzO1xuICAgICAgLW1vei1jb2x1bW4tY291bnQ6IDM7XG4gICAgICBjb2x1bW4tY291bnQ6IDM7IH0gfVxuICAuZmllbGRzIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZmllbGRzIGxpIHtcbiAgICAgICAgbWluLXdpZHRoOiAyMHJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9IH1cblxuLmhlcm8tYWJvdXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjBFREUzO1xuICBwYWRkaW5nOiAzOXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmFib3V0LWVudHJ5IHtcbiAgbWFyZ2luLXRvcDogNTNweDsgfVxuICAuYWJvdXQtZW50cnlfX3NlY3Rpb24ge1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgIG1hcmdpbi10b3A6IDQwcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmFib3V0LWVudHJ5X19zZWN0aW9uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiAyM3B4OyB9IH1cbiAgICAuYWJvdXQtZW50cnlfX3NlY3Rpb246bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0QyRTRFMzsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAuYWJvdXQtZW50cnlfX3NlY3Rpb24tcGFydG5lcnMge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAuYWJvdXQtZW50cnlfX3NlY3Rpb24tLW1haW4gLmFib3V0LWVudHJ5X190aXRsZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5hYm91dC1lbnRyeV9fdGl0bGUge1xuICAgICAgd2lkdGg6IDIzMHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYWJvdXQtZW50cnlfX3RpdGxlIHtcbiAgICAgIHdpZHRoOiAzMzBweDsgfSB9XG4gIC5hYm91dC1lbnRyeV9fdGl0bGUgaDIge1xuICAgIGNvbG9yOiAjMkM4QTgyO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiAyNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzNXB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5hYm91dC1lbnRyeV9fdGl0bGUgaDIge1xuICAgICAgICBmb250LXNpemU6IDMxLjI1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0M3B4OyB9IH1cbiAgLmFib3V0LWVudHJ5X19jb250ZW50IHtcbiAgICBmbGV4OiAxOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5hYm91dC1lbnRyeV9fY29udGVudCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuICAgIC5hYm91dC1lbnRyeV9fY29udGVudC1pbm5lciBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAgICAgLmFib3V0LWVudHJ5X19jb250ZW50LWlubmVyIHA6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICAgIC5hYm91dC1lbnRyeV9fY29udGVudC1pbm5lciBwOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmFib3V0LWVudHJ5X19jb250ZW50LWlubmVyIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBsaW5lLWhlaWdodDogMzVweDsgfVxuXG4uYWJvdXQtc2VjdGlvbiB7XG4gIHBhZGRpbmc6IDYwcHggMDsgfVxuICAuYWJvdXQtc2VjdGlvbi5hYm91dC1lZGl0b3JzIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VGRUNFMjsgfVxuICAuYWJvdXQtc2VjdGlvbi5hYm91dC1zaXRlcyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5hYm91dC1zZWN0aW9uLmFib3V0LXByb2R1Y3RzLCAuYWJvdXQtc2VjdGlvbi5hYm91dC1hZHMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFRkVDRTI7IH1cbiAgLmFib3V0LXNlY3Rpb25fX3RpdGxlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAuYWJvdXQtc2VjdGlvbl9fdGl0bGUgaDIge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGZvbnQtc2l6ZTogMzEuMjVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzN3B4OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuYWJvdXQtc2VjdGlvbl9fdGl0bGUgaDIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogNDguODNweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogNTNweDsgfSB9XG4gICAgLmFib3V0LXNlY3Rpb25fX3RpdGxlIHAge1xuICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICBsaW5lLWhlaWdodDogMzVweDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmFib3V0LXNlY3Rpb25fX3RpdGxlIHAge1xuICAgICAgICAgIHdpZHRoOiA4OTBweDtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG4gIC5hYm91dC1zZWN0aW9uX19jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4OyB9XG4gICAgLmFib3V0LXNlY3Rpb25fX2NvbnRlbnQgdWwge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmFib3V0LXNlY3Rpb25fX2NvbnRlbnQgdWwge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgICAuYWJvdXQtc2VjdGlvbl9fY29udGVudCB1bCBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7IH1cbiAgICAgICAgLmFib3V0LXNlY3Rpb25fX2NvbnRlbnQgdWwgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5hYm91dC1zZWN0aW9uX19kZXNjIHtcbiAgICAgIHdpZHRoOiA4OTBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cbiAgLmFib3V0LXNlY3Rpb25fX2Rlc2MgcCB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiAzNXB4O1xuICAgIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7IH1cblxuLmNoaWVmLWl0ZW1zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAyMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNoaWVmLWl0ZW1zIHtcbiAgICAgIGdhcDogNDVweDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9IH1cbiAgLmNoaWVmLWl0ZW1zOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuY2hpZWYtaXRlbXMge1xuICAgICAgZmxleC1mbG93OiBub3dyYXA7XG4gICAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgICBzY3JvbGwtc25hcC10eXBlOiB4IG1hbmRhdG9yeTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gICAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7IH1cbiAgICAgIC5jaGllZi1pdGVtczo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAuY2hpZWYtaXRlbXMgPiAuY2hpZWYtaXRlbSB7XG4gICAgICAgIHdpZHRoOiAxMjhweDtcbiAgICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZmxleDogMCAwIGF1dG87IH0gfVxuXG4uY2hpZWYtaXRlbV9faW1nIHtcbiAgd2lkdGg6IDE5MHB4O1xuICBoZWlnaHQ6IDE5MHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmNoaWVmLWl0ZW1fX2ltZyB7XG4gICAgICB3aWR0aDogMTI4cHg7XG4gICAgICBoZWlnaHQ6IDEyOHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLmNoaWVmLWl0ZW1fX2ltZyB7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgICBoZWlnaHQ6IDEwMHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFib3V0LXByb2R1Y3RzIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hYm91dC1wcm9kdWN0c19fY29udGVudCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFib3V0LXByb2R1Y3RzX19jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMjZweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hYm91dC1wcm9kdWN0c19fY29udGVudCB7XG4gICAgd2lkdGg6IDExMThweDtcbiAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hYm91dC1wcm9kdWN0c19fZGVzYyB1bCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcm93LWdhcDogMjBweDtcbiAgICBjb2x1bW4tZ2FwOiA0MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICAuYWJvdXQtcHJvZHVjdHNfX2Rlc2MgdWwgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzM3B4OyB9IH1cblxuLmFib3V0LXBhcnRuZXJzIHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiA1MnB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmFib3V0LXBhcnRuZXJzIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFib3V0LWFkc19fY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDgycHg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYWJvdXQtYWRzX19pbWcge1xuICAgIGZsZXg6IDEgMCA1MCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYWJvdXQtYWRzX19pbWcge1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFib3V0LWFkc19fZGVzYyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuLmFib3V0LWFkc19fZGVzYyB1bCBsaSAuaWNvbW9vbi1pY29uIHtcbiAgYmFja2dyb3VuZDogI0QyRTRFMztcbiAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gIGNvbG9yOiAjMTcyRjJGO1xuICBmb250LXNpemU6IDE4cHg7XG4gIHdpZHRoOiAzNnB4O1xuICBoZWlnaHQ6IDM2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi5hYm91dC1hZHNfX2Rlc2MgdWwgbGkgYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMzBweDsgfVxuXG4ud3JpdGVycy1saXN0LnNsaWRlci12MSAubWVkaWEtb2JqZWN0LWltZyBpbWcge1xuICB3aWR0aDogNTguMzNweDtcbiAgaGVpZ2h0OiA1OC4zM3B4OyB9XG5cbi53cml0ZXJzLWxpc3RzIC53cml0ZXJzLWxpc3RfX2l0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBwYWRkaW5nOiAyMHB4OyB9XG4gIC53cml0ZXJzLWxpc3RzIC53cml0ZXJzLWxpc3RfX2l0ZW0gLm1lZGlhLW9iamVjdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC53cml0ZXJzLWxpc3RzIC53cml0ZXJzLWxpc3RfX2l0ZW0gLm1lZGlhLW9iamVjdC1pbWcgaW1nIHtcbiAgICAgIHdpZHRoOiA3NXB4O1xuICAgICAgaGVpZ2h0OiA3NXB4OyB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKG1heC13aWR0aDogMTE4MXB4KSB7XG4gICAgICAgIC53cml0ZXJzLWxpc3RzIC53cml0ZXJzLWxpc3RfX2l0ZW0gLm1lZGlhLW9iamVjdC1pbWcgaW1nIHtcbiAgICAgICAgICB3aWR0aDogNTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgIGhlaWdodDogNTVweCAhaW1wb3J0YW50OyB9IH1cblxuLnBhdGgtcGVyc29uYWxpemUge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5wYXRoLWpvdXJuZXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjlGQkZCOyB9XG4gIC5wYXRoLWpvdXJuZXkgI21haW4td3JhcCAuY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMWZyIGF1dG87XG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJoZWFkZXJcIiBcIm1haW5cIiBcImZvb3RlclwiOyB9XG4gICAgLnBhdGgtam91cm5leSAjbWFpbi13cmFwIC5jb250YWluZXIgPiBoZWFkZXIge1xuICAgICAgZ3JpZC1hcmVhOiBoZWFkZXI7IH1cbiAgICAucGF0aC1qb3VybmV5ICNtYWluLXdyYXAgLmNvbnRhaW5lciA+IG1haW4sXG4gICAgLnBhdGgtam91cm5leSAjbWFpbi13cmFwIC5jb250YWluZXIgPiAuZGlhbG9nLW9mZi1jYW52YXMtbWFpbi1jYW52YXMge1xuICAgICAgZ3JpZC1hcmVhOiBtYWluO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgICAgLnBhdGgtam91cm5leSAjbWFpbi13cmFwIC5jb250YWluZXIgPiBtYWluID4gbWFpbixcbiAgICAgIC5wYXRoLWpvdXJuZXkgI21haW4td3JhcCAuY29udGFpbmVyID4gLmRpYWxvZy1vZmYtY2FudmFzLW1haW4tY2FudmFzID4gbWFpbiB7XG4gICAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgICAgICAucGF0aC1qb3VybmV5ICNtYWluLXdyYXAgLmNvbnRhaW5lciA+IG1haW4gPiBtYWluID4gI3Jvb3QsXG4gICAgICAgIC5wYXRoLWpvdXJuZXkgI21haW4td3JhcCAuY29udGFpbmVyID4gLmRpYWxvZy1vZmYtY2FudmFzLW1haW4tY2FudmFzID4gbWFpbiA+ICNyb290IHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAgICAgICAucGF0aC1qb3VybmV5ICNtYWluLXdyYXAgLmNvbnRhaW5lciA+IG1haW4gPiBtYWluID4gI3Jvb3QgPiBkaXYsXG4gICAgICAgICAgLnBhdGgtam91cm5leSAjbWFpbi13cmFwIC5jb250YWluZXIgPiAuZGlhbG9nLW9mZi1jYW52YXMtbWFpbi1jYW52YXMgPiBtYWluID4gI3Jvb3QgPiBkaXYge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgICAgICAgICAucGF0aC1qb3VybmV5ICNtYWluLXdyYXAgLmNvbnRhaW5lciA+IG1haW4gPiBtYWluID4gI3Jvb3QgPiBkaXYgPiBkaXYsXG4gICAgICAgICAgICAucGF0aC1qb3VybmV5ICNtYWluLXdyYXAgLmNvbnRhaW5lciA+IC5kaWFsb2ctb2ZmLWNhbnZhcy1tYWluLWNhbnZhcyA+IG1haW4gPiAjcm9vdCA+IGRpdiA+IGRpdiB7XG4gICAgICAgICAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgIC5wYXRoLWpvdXJuZXkgI21haW4td3JhcCAuY29udGFpbmVyID4gZm9vdGVyIHtcbiAgICAgIGdyaWQtYXJlYTogZm9vdGVyOyB9XG5cbi5wYXRoLWpvdXJuZXkgLm1haW4taGVhZGVyLWJlZm9yZSB7XG4gIHBhZGRpbmctdG9wOiAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYXRoLWpvdXJuZXkgLm1haW4taGVhZGVyLWlubmVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLnBhdGgtam91cm5leSAubWFpbi1oZWFkZXItYmVmb3JlLS1sZWZ0IHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLnBhdGgtam91cm5leSAubWFpbi1oZWFkZXItYmVmb3JlLWNvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwLjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGF0aC1qb3VybmV5IC5tYWluLWhlYWRlci1iZWZvcmUtY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAxcmVtOyB9IH1cbiAgLnBhdGgtam91cm5leSAubWFpbi1oZWFkZXItYmVmb3JlLWNvbnRlbnQgLnNraXAtYnRuIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgICAucGF0aC1qb3VybmV5IC5tYWluLWhlYWRlci1iZWZvcmUtY29udGVudCAuc2tpcC1idG4gYSB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBjb2xvcjogIzJDOEE4MjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLnBhdGgtam91cm5leSAubWFpbi1oZWFkZXItYmVmb3JlLWNvbnRlbnQgLnNraXAtYnRuIGE6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMXB4O1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICMyQzhBODI7IH1cbiAgLnBhdGgtam91cm5leSAubWFpbi1oZWFkZXItYmVmb3JlLWNvbnRlbnQgLnJldHVybi1idG4ge1xuICAgIG1hcmdpbjogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG5cbi5wYXRoLWpvdXJuZXkgLnBlcnNvbmFsLXdyYXAgLnBlcnNvbmFsLW1lc3NhZ2Uge1xuICBtYXgtd2lkdGg6IDUxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAucGF0aC1qb3VybmV5IC5wZXJzb25hbC13cmFwIC5wZXJzb25hbC1tZXNzYWdlIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICAucGF0aC1qb3VybmV5IC5wZXJzb25hbC13cmFwIC5wZXJzb25hbC1tZXNzYWdlIGgyIHtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDQycHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLnBhdGgtam91cm5leSAucGVyc29uYWwtd3JhcCAucGVyc29uYWwtbWVzc2FnZSBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7IH0gfVxuXG4ucGF0aC1qb3VybmV5IC5wZXJzb25hbC13cmFwIC5hY3Rpb24tYnRuIHtcbiAgbWFyZ2luLXRvcDogYXV0bzsgfVxuICAucGF0aC1qb3VybmV5IC5wZXJzb25hbC13cmFwIC5hY3Rpb24tYnRuIGEge1xuICAgIHdpZHRoOiAyNjNweDsgfVxuXG4ucGF0aC1qb3VybmV5IC5wcm9ncmVzcy1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnBhdGgtam91cm5leSAucHJvZ3Jlc3MtY29udGFpbmVyOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3MDcwNzA7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGhlaWdodDogMXB4O1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogLTE7IH1cblxuLnBhdGgtam91cm5leSAucHJvZ3Jlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saW5lLWJvcmRlci1jb2xvcik7XG4gIGhlaWdodDogMXB4O1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTglO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHRyYW5zaXRpb246IDAuNHMgZWFzZTtcbiAgd2lkdGg6IDAlO1xuICB6LWluZGV4OiAtMTsgfVxuXG4ucGF0aC1qb3VybmV5IC5wcm9ncmVzcy1jaXJjbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzNjM2MzO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDI1cHg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB0cmFuc2l0aW9uOiAwLjRzIGVhc2U7XG4gIHdpZHRoOiAyNXB4OyB9XG5cbi5wYXRoLWpvdXJuZXkgLnByb2dyZXNzLWNpcmNsZS5hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjMkM4QTgyO1xuICBmb250LXdlaWdodDogOTAwOyB9XG5cbi5wYXRoLWpvdXJuZXkgLmZ1bmN0aW9uLWluZm8ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnBhdGgtam91cm5leSAuZnVuY3Rpb24taW5mbyBoMyB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgIGNvbG9yOiAjMkM4QTgyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5wYXRoLWpvdXJuZXkgLmZ1bmN0aW9uLWluZm8gaDMge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4OyB9IH1cbiAgLnBhdGgtam91cm5leSAuZnVuY3Rpb24taW5mbyBwIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgY29sb3I6ICM0ZDRkNGQ7IH1cblxuLmNvb2tpZS1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEMkU0RTM7IH1cbiAgLmNvb2tpZS1vdmVybGF5LS1zbWFsbCB7XG4gICAgd2lkdGg6IDM5NnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHggMjBweCAwcHggMHB4O1xuICAgIHBhZGRpbmc6IDI0cHg7XG4gICAgei1pbmRleDogOTk5OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5jb29raWUtb3ZlcmxheS0tc21hbGwge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jb29raWUtb3ZlcmxheS0tc21hbGwge1xuICAgICAgICByaWdodDogMjlweDsgfSB9XG4gIC5jb29raWUtb3ZlcmxheS0tbGFyZ2Uge1xuICAgIHotaW5kZXg6IDk5O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgcGFkZGluZzogMjRweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAuY29va2llLW92ZXJsYXktLWxhcmdlIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweCAyMHB4IDBweCAwcHg7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY29va2llLW92ZXJsYXktLWxhcmdlIHtcbiAgICAgICAgcGFkZGluZzogNDBweDsgfSB9XG4gIC5jb29raWUtb3ZlcmxheSAuY29va2llLWNsb3NlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMjBweDtcbiAgICByaWdodDogMjBweDsgfVxuICAgIC5jb29raWUtb3ZlcmxheSAuY29va2llLWNsb3NlIGkge1xuICAgICAgZm9udC1zaXplOiAxN3B4OyB9XG4gIC5jb29raWUtb3ZlcmxheV9fY29udGVudCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmNvb2tpZS1vdmVybGF5X19jb250ZW50IGgzIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7IH1cbiAgICAuY29va2llLW92ZXJsYXlfX2NvbnRlbnQgcCB7XG4gICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgLmNvb2tpZS1vdmVybGF5X19hY3Rpb25zIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC5jb29raWUtb3ZlcmxheS0tc21hbGwgLmNvb2tpZS1vdmVybGF5X19hY3Rpb25zIHtcbiAgICAgIGdhcDogMTZweDsgfVxuICAgIC5jb29raWUtb3ZlcmxheS0tbGFyZ2UgLmNvb2tpZS1vdmVybGF5X19hY3Rpb25zIHtcbiAgICAgIGdhcDogMTZweDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmNvb2tpZS1vdmVybGF5LS1sYXJnZSAuY29va2llLW92ZXJsYXlfX2FjdGlvbnMge1xuICAgICAgICAgIGdhcDogMjBweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4OyB9IH1cbiAgICAuY29va2llLW92ZXJsYXlfX2FjdGlvbnMgLmJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTYycHg7XG4gICAgICBwYWRkaW5nOiA4cHg7XG4gICAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgICAgIC5jb29raWUtb3ZlcmxheV9fYWN0aW9ucyAuYnV0dG9uLmJ0bi1kaXNhZ3JlZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwMDAwMDA7IH1cbiAgICAgICAgLmNvb2tpZS1vdmVybGF5X19hY3Rpb25zIC5idXR0b24uYnRuLWRpc2FncmVlOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7IH1cblxuLyogLS0tLS0gTGl2ZSBibG9nIGxpc3Qgc3R5bGVzIC0tLS0tLSBTVEFSVCAtLS0tLS0gKi9cbi5saXZlLXRpY2tlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCRDNDMkY7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5saXZlLXRpY2tlciB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIzcHg7IH0gfVxuICAubGl2ZS10aWNrZXIgLmxpdmUtdGlja2VyLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5saXZlLXRpY2tlciAubGl2ZS10aWNrZXItdGl0bGU6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxcHg7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgdG9wOiA4cHg7XG4gICAgICBsZWZ0OiAwOyB9XG4gICAgLmxpdmUtdGlja2VyIC5saXZlLXRpY2tlci10aXRsZSBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG4gIC5saXZlLXRpY2tlciAubGl2ZS10aWNrZXItdGltZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiRWZmcmFcIjsgfVxuICAgIC5saXZlLXRpY2tlciAubGl2ZS10aWNrZXItdGltZSBzcGFuIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7IH1cblxuLmxpdmUtYmxvZyAuQ2FwdGlvbiBhLFxuLmxpdmUtYmxvZyAuY29udGVudCBhIHtcbiAgY29sb3I6ICMyQzhBODI7IH1cblxuLmxpdmUtYmxvZyAuQ2FwdGlvbiAuVm90ZSxcbi5saXZlLWJsb2cgLmNvbnRlbnQgLlZvdGUge1xuICBtYXJnaW4tbGVmdDogMTBweDsgfVxuXG4ubGl2ZS1ibG9nIC5zY3JiYmwtc2l0ZVByZXZpZXcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBwYWRkaW5nOiAxcmVtOyB9XG5cbi5saXZlLWJsb2cgLmxhYmVsLmJyZWFraW5nLW5ld3Mge1xuICBmb250LXNpemU6IDMwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLmxpdmUtYmxvZyAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmxpdmUtYmxvZyAuYXJ0aWNsZS1pdGVtLWltZyBpbWcge1xuICAgIGFzcGVjdC1yYXRpbzogNC8zO1xuICAgIC1vLW9iamVjdC1maXQ6IGNvdmVyO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG5cbi5saXZlLWJsb2cgLmFydGljbGUtaXRlbS10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLmxpdmUtYmxvZyAuYXJ0aWNsZS1pdGVtLXRpdGxlIGgxLFxuICAubGl2ZS1ibG9nIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDIge1xuICAgIGZvbnQtc2l6ZTogMS44NzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmxpdmUtYmxvZyAuYXJ0aWNsZS1pdGVtLXRpdGxlIGgxLFxuICAgICAgLmxpdmUtYmxvZyAuYXJ0aWNsZS1pdGVtLXRpdGxlIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjM3NXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbi5saXZlLWJsb2cgLmFydGljbGUtaXRlbS1jb250ZW50IHAge1xuICBjb2xvcjogIzAwMDAwMDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgZm9udC1zaXplOiAyMHB4OyB9XG5cbi5saXZlLWJsb2cgLmVudHJ5LWhpZ2hsaWdodCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGNkZmRmO1xuICBwYWRkaW5nLXRvcDogMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgLmxpdmUtYmxvZyAuZW50cnktaGlnaGxpZ2h0IHVsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5saXZlLWJsb2cgLmVudHJ5LWhpZ2hsaWdodCBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDsgfVxuICAgIC5saXZlLWJsb2cgLmVudHJ5LWhpZ2hsaWdodCBsaTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiA5cHg7XG4gICAgICB3aWR0aDogOHB4O1xuICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgfVxuICAgIC5saXZlLWJsb2cgLmVudHJ5LWhpZ2hsaWdodCBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuLmxpdmUtYmxvZyAuaGVyby10b3Age1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBwYWRkaW5nOiAxNXB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxpdmUtYmxvZyAuaGVyby10b3Age1xuICAgICAgcGFkZGluZzogMzBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxpdmUtYmxvZyAuaGVyby10b3AgLmFydGljbGUtaXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgLmxpdmUtYmxvZyAuaGVyby10b3AgLmFydGljbGUtaXRlbS1pbmZvIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAubGl2ZS1ibG9nIC5oZXJvLXRvcCAuYXJ0aWNsZS1pdGVtLXRpdGxlIGgxIHtcbiAgICBmb250LXNpemU6IDJyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmxpdmUtYmxvZyAuaGVyby10b3AgLmFydGljbGUtaXRlbS10aXRsZSBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogM3JlbTsgfSB9XG5cbi5saXZlLWFydGljbGUtbWV0YSB7XG4gIG1hcmdpbi10b3A6IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAubGl2ZS1hcnRpY2xlLW1ldGEgLmFydGljbGUtaXRlbS1tZXRhIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxpdmVibG9nLWNhcHN1bGUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgbWF4LXdpZHRoOiA4Ny41cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxpdmVibG9nLWNhcHN1bGUge1xuICAgICAgcGFkZGluZy1yaWdodDogMS4yODEyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS4yODEyNXJlbTsgfSB9XG5cbi5saXZlYmxvZy1jYXBzdWxlIC5pbm5lciB7XG4gIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDIwcHggMTZweDtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNzsgfVxuXG4ubGl2ZWJsb2ctY2Fwc3VsZS5hY3RpdmUgLmlubmVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZmQzODsgfVxuXG4ubGl2ZWJsb2ctY2Fwc3VsZSBzcGFuIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IDhweDsgfVxuICAubGl2ZWJsb2ctY2Fwc3VsZSBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbi1sZWZ0OiAxNnB4OyB9XG4gICAgLmxpdmVibG9nLWNhcHN1bGUgc3BhbjpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2ljb24tbGl2ZS1ibG9nLnBuZykgbm8tcmVwZWF0IDUwJTtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgbWFyZ2luLWxlZnQ6IDhweDsgfVxuXG5ib2R5LmFydGljbGUtbGl2ZWJsb2cgLmVudHJ5LWFydGljbGUtbGl2ZWJsb2cge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RhZGZlMTtcbiAgcGFkZGluZy10b3A6IDE4cHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgYm9keS5hcnRpY2xlLWxpdmVibG9nIC5lbnRyeS1hcnRpY2xlLWxpdmVibG9nIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMnB4OyB9IH1cblxuLmxpdmVibG9nIC5jb250ZW50IHtcbiAgcGFkZGluZzogMjBweCAxLjhyZW0gMjBweCAyMHB4O1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjRENERkRGO1xuICBsaW5lLWhlaWdodDogMS41OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxpdmVibG9nIC5jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDIwcHggNHJlbSAyMHB4IDIwcHg7IH0gfVxuICAubGl2ZWJsb2cgLmNvbnRlbnQgZGl2IHtcbiAgICBmb250LWZhbWlseTogXCJFZmZyYVwiO1xuICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAgIC5saXZlYmxvZyAuY29udGVudCBkaXY6bm90KDpsYXN0LWNoaWxkKTpub3QoOm9ubHktY2hpbGQpOm5vdCg6ZW1wdHkpOm5vdCguTGlua0ltYWdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gIC5saXZlYmxvZyAuY29udGVudCBwID4gaW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5saXZlYmxvZyAuY29udGVudCBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgLmxpdmVibG9nIC5jb250ZW50IC50d2l0dGVyLXdpZGdldCB7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubGl2ZWJsb2cgLmNvbnRlbnQgaDEsXG4gICAgLmxpdmVibG9nIC5jb250ZW50IGgyLFxuICAgIC5saXZlYmxvZyAuY29udGVudCBoMyB7XG4gICAgICBmb250LXNpemU6IDEuODc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9IH1cbiAgLmxpdmVibG9nIC5jb250ZW50IC5MaW5rRGVzY3JpcHRpb24ge1xuICAgIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgLmxpdmVibG9nIC5jb250ZW50IGJsb2NrcXVvdGUge1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IDIuMjVyZW0gMy41cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItcmlnaHQ6IDA7IH1cbiAgICAubGl2ZWJsb2cgLmNvbnRlbnQgYmxvY2txdW90ZTpiZWZvcmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIuKAnFwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAxMHB4O1xuICAgICAgbGVmdDogNXB4O1xuICAgICAgY29sb3I6ICMyQzhBODI7XG4gICAgICBmb250LXNpemU6IDQuMTI1cmVtOyB9XG4gICAgLmxpdmVibG9nIC5jb250ZW50IGJsb2NrcXVvdGU6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIuKAnFwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxMHB4O1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBjb2xvcjogIzJDOEE4MjtcbiAgICAgIGZvbnQtc2l6ZTogNC4xMjVyZW07XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTsgfVxuICAgIC5saXZlYmxvZyAuY29udGVudCBibG9ja3F1b3RlIHAge1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAgIC5saXZlYmxvZyAuY29udGVudCBibG9ja3F1b3RlIHA6bGFzdC1jaGlsZCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7IH1cbiAgLmxpdmVibG9nIC5jb250ZW50IC5yb3cge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAubGl2ZWJsb2cgLmNvbnRlbnQgLnJvdyBoMiB7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAubGl2ZWJsb2cgLmNvbnRlbnQgLnJvdyBpbWcge1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTFyZW07IH1cbiAgICAubGl2ZWJsb2cgLmNvbnRlbnQgLnJvdyAuY29sLW1kLTMge1xuICAgICAgd2lkdGg6IDIwJTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG4gICAgLmxpdmVibG9nIC5jb250ZW50IC5yb3cgLmNvbC1tZC05IHtcbiAgICAgIHdpZHRoOiA3MCU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLmxpdmVibG9nIC5jb250ZW50IC55b3V0dWJlLXBvc3QgaWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDM4MHB4OyB9XG4gIC5saXZlYmxvZyAuY29udGVudCBpZnJhbWUsXG4gIC5saXZlYmxvZyAuY29udGVudCBvYmplY3QsXG4gIC5saXZlYmxvZyAuY29udGVudCBlbWJlZCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5saXZlYmxvZyAuY29udGVudCAuandwbGF5ZXIge1xuICAgIGhlaWdodDogMTczcHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxpdmVibG9nIC5jb250ZW50IC5qd3BsYXllciB7XG4gICAgICAgIGhlaWdodDogMzgwcHg7IH0gfVxuXG4ubGl2ZWJsb2cgLmxpdmVibG9nLWNvbnRlbnQgLmNvbnRlbnQsXG4ubGItaXRlbXMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmxiLWl0ZW1zIHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbi5sYi1pdGVtIHtcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxuLlJlY2VudFBvc3RzV2lkZ2V0IGxpOmZpcnN0LWNoaWxkIC5wb3N0LWRhdGUge1xuICBwYWRkaW5nOiAwIDIwcHggMCAwOyB9XG4gIC5SZWNlbnRQb3N0c1dpZGdldCBsaTpmaXJzdC1jaGlsZCAucG9zdC1kYXRlOmJlZm9yZSB7XG4gICAgdG9wOiAwOyB9XG5cbi5saXZlYmxvZyAubGl2ZWJsb2ctY29udGVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjRENERkRGO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogNjhweDtcbiAgbWFyZ2luOiAwOyB9XG5cbi5saXZlYmxvZyAucG9zdC1kYXRlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAyMHB4IDIwcHggMTVweCAwO1xuICBjb2xvcjogIzg4ODsgfVxuXG4ubGl2ZWJsb2cgLnBvc3QtZGF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIiBcIjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjVweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMS41cmVtO1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4O1xuICBiYWNrZ3JvdW5kOiAjMkM4QTgyOyB9XG5cbi5saXZlYmxvZyAucG9zdC1kYXRlIHRpbWUge1xuICBwYWRkaW5nLXJpZ2h0OiA4cHg7IH1cblxuLmxpdmVibG9nIC5wb3N0LWZvb3RlciB7XG4gIHBhZGRpbmc6IDE2cHggMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjRENERkRGO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0RDREZERjtcbiAgYm9yZGVyLXdpZHRoOiAwIDFweCAxcHg7IH1cblxuLmxpdmVibG9nIC5wb3N0LWZvb3RlciB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4ubGl2ZWJsb2cgLnBvc3QtZm9vdGVyIHVsIGxpLmF1dGhvci1uYW1lIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubGl2ZWJsb2cgLnBvc3QtZm9vdGVyIHVsIGxpOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuXG4ubGl2ZWJsb2cgLnBvc3QtZm9vdGVyIHVsIGxpIHtcbiAgcGFkZGluZzogMCA4cHg7XG4gIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cblxuLmxpdmVibG9nIC5wb3N0LWZvb3RlciB1bCBsaTpsYXN0LWNoaWxkIHtcbiAgY29sb3I6ICM4ODg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ubGl2ZWJsb2cgLnBvc3QtZm9vdGVyIHVsIGxpOmxhc3QtY2hpbGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJ8XCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IC0xcHg7IH1cblxuI2xpdmUtbGlzdC11cGRhdGUtYnV0dG9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMjBweCBhdXRvO1xuICBiYWNrZ3JvdW5kOiAjZmZjZDUwO1xuICBkaXNwbGF5OiBub25lO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogM3B4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LWZhbWlseTogXCJFZmZyYVwiO1xuICBmb250LXNpemU6IDE0cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAjbGl2ZS1saXN0LXVwZGF0ZS1idXR0b24ge1xuICAgICAgd2lkdGg6IDUxOHB4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDIwcHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7IH0gfVxuICAjbGl2ZS1saXN0LXVwZGF0ZS1idXR0b246aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmUxOTU7IH1cbiAgI2xpdmUtbGlzdC11cGRhdGUtYnV0dG9uLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAjbGl2ZS1saXN0LXVwZGF0ZS1idXR0b24gI2xpdmUtbGlzdC11cGRhdGUtYnV0dG9uIC51cGRhdGUtdGV4dCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICNsaXZlLWxpc3QtdXBkYXRlLWJ1dHRvbiAuaWNvbi1yZWZyZXNoIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIHdpZHRoOiAxOHB4OyB9XG4gICAgI2xpdmUtbGlzdC11cGRhdGUtYnV0dG9uIC5pY29uLXJlZnJlc2ggc3ZnIHtcbiAgICAgIGZpbGw6ICMwMDAwMDA7IH1cblxuLmxpdmVibG9nIC5wYWdpbmF0aW9uLXdyYXBwZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDNyZW07IH1cbiAgLmxpdmVibG9nIC5wYWdpbmF0aW9uLXdyYXBwZXI6YmVmb3JlIHtcbiAgICB3aWR0aDogMXB4O1xuICAgIGJhY2tncm91bmQ6ICNEQ0RGREY7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAubGl2ZWJsb2cgLnBhZ2luYXRpb24td3JhcHBlciAucGFnaW5hdGlvbiB7XG4gICAgZm9udC1mYW1pbHk6IFwiQXdzYXQgRGlnaXRhbFwiO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIG1hcmdpbjogMzBweCAwIDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmxpdmVibG9nIC5wYWdpbmF0aW9uLXdyYXBwZXIgLnBhZ2luYXRpb24gLnByZXYge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAubGl2ZWJsb2cgLnBhZ2luYXRpb24td3JhcHBlciAucGFnaW5hdGlvbiAubmV4dCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAubGl2ZWJsb2cgLnBhZ2luYXRpb24td3JhcHBlciAucGFnaW5hdGlvbiAuc2hvcnRjdXQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgLmxpdmVibG9nIC5wYWdpbmF0aW9uLXdyYXBwZXIgLnBhZ2luYXRpb24gLnNob3J0Y3V0ID4gKiB7XG4gICAgICAgIG1hcmdpbjogMCAxMHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgLmxpdmVibG9nIC5wYWdpbmF0aW9uLXdyYXBwZXIgLnBhZ2luYXRpb24gYSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgY29sb3I6ICMyQzhBODI7IH1cbiAgICAgIC5saXZlYmxvZyAucGFnaW5hdGlvbi13cmFwcGVyIC5wYWdpbmF0aW9uIGE6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6ICM0ZDk5OGE7IH1cblxuI3N0YXJ0LWxpdmUge1xuICBvdmVyZmxvdzogY2xpcDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAzcmVtOyB9XG5cbiNoZXJvLXNpZGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBwYWRkaW5nOiAzMHB4O1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAjaGVyby1zaWRlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICNoZXJvLXNpZGUge1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIHRvcDogNTBweDsgfSB9XG4gICNoZXJvLXNpZGUgLmFydGljbGUtaXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAjaGVyby1zaWRlIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDIge1xuICAgIGZvbnQtc2l6ZTogMjRweDsgfVxuICAjaGVyby1zaWRlIC5hcnRpY2xlLWl0ZW0tY29udGVudCBwIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzVweDsgfVxuXG4vKiAtLS0tLSBMaXZlIGJsb2cgbGlzdCBzdHlsZXMgLS0tLS0tIEVORCAtLS0tLS0gKi9cbi8qIC0tLS0tLS0gR0FNRVMgLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmdhbWUtcGFnZSBoZWFkZXIsXG4gIC5nYW1lLXBhZ2UgZm9vdGVyLFxuICAuZ2FtZS1wYWdlIC5oZWFkZXItdGFnLXdyYXAsXG4gIC5nYW1lLXBhZ2UgLnBhZ2UtaW5kaWNhdG9yLFxuICAuZ2FtZS1wYWdlIC5nYW1lLWJhbm5lciB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5nYW1lLXBhZ2UgLmdhbWVzLWVudHJpZXMge1xuICAgIHBhZGRpbmc6IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuZ2FtZXMtcGxheSBpZnJhbWUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDU4cHgpOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmdhbWVzLWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cblxuLmdhbWVzLWdyaWQgLmdhbWVzLWl0ZW0ge1xuICBwYWRkaW5nOiAyLjVyZW07XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbiAgcGFkZGluZzogMnJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5nYW1lcy1ncmlkIC5nYW1lcy1pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDNyZW0gMTByZW07IH0gfVxuXG4ucGF0aC1mcm9udHBhZ2UgLmdhbWVzLWl0ZW0ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XG4gIHBhZGRpbmc6IDJyZW07IH1cblxuLmdhbWVzLWdyaWQgLmFydGljbGUtaXRlbS1tZXRhIHtcbiAgbWFyZ2luLXRvcDogMzVweDsgfVxuXG4uZ2FtZXMtZ3JpZCAuYXJ0aWNsZS1pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTogMTRweDsgfVxuXG4uZ2FtZXMtZ3JpZCAuZ2FtZS1pbWcgaW1nIHtcbiAgd2lkdGg6IDEyOHB4O1xuICBhc3BlY3QtcmF0aW86IGF1dG87IH1cblxuLmdhbWUtaW1nID4gYTpob3ZlcjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IH1cblxuLmdhbWVzLWdyaWQgLmdhbWUtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogNDRweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5nYW1lcy1ncmlkIC5nYW1lLWltZyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9IH1cblxuLmdhbWUtYmFubmVyIHtcbiAgcGFkZGluZzogMS41cmVtO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmdhbWUtYmFubmVyIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ2FtZS1iYW5uZXIge1xuICAgICAgaGVpZ2h0OiAyNjVweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IH0gfVxuICAuZ2FtZS1iYW5uZXIuc3R5bGUtMSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YwNjUyZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZ2FtZS1iYW5uZXIuc3R5bGUtMSB7XG4gICAgICAgIHBhZGRpbmc6IDJyZW07IH0gfVxuICAuZ2FtZS1iYW5uZXIuc3R5bGUtMiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTEsIDI1MywgMjUzLCAwLjQpOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5nYW1lLWJhbm5lci5zdHlsZS0yIHtcbiAgICAgICAgcGFkZGluZzogMnJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdhbWUtYmFubmVyIC5nYW1lLWltZyB7XG4gICAgICBtYXJnaW4tbGVmdDogMnJlbTsgfSB9XG4gIC5nYW1lLWJhbm5lciAuZ2FtZS1pbWcgaW1nIHtcbiAgICB3aWR0aDogMTI3cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmdhbWUtYmFubmVyIC5nYW1lLWltZyBpbWcge1xuICAgICAgICB3aWR0aDogMTIwcHg7IH0gfVxuXG4uZ2FtZS10aXRsZSBoMSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDU1cHg7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmdhbWUtdGl0bGUgLmxldmVsIHtcbiAgY29sb3I6ICNERjZEM0Y7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdhbWVzLWxpc3Qge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNEMUQ1RDU7IH0gfVxuXG4uZ2FtZXMtZW50cmllcyAucGFnZS1jYXRlZ29yeSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmdhbWUtcGxheSBoMSB7XG4gICAgZm9udC1zaXplOiAyN3B4OyB9XG4gIC5nYW1lLXBsYXkgLmdhbWUtaW1nIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBvcmRlcjogMTsgfVxuICAgIC5nYW1lLXBsYXkgLmdhbWUtaW1nIGltZyB7XG4gICAgICB3aWR0aDogNzJweDsgfVxuICAuZ2FtZS1wbGF5IC5nYW1lLXRpdGxlIHtcbiAgICBvcmRlcjogMjsgfVxuICAgIC5nYW1lLXBsYXkgLmdhbWUtdGl0bGUgc3BhbiB7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH1cbiAgLmdhbWUtcGxheS5nYW1lcy1iYW5uZXIge1xuICAgIHBhZGRpbmc6IDFyZW07IH0gfVxuXG4uZ2FtZS1hdXRob3ItaW5mbyB7XG4gIG1hcmdpbi10b3A6IDFyZW07IH1cblxuLmdhbWUtbGlzdC1pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAxcmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ2FtZS1saXN0LWl0ZW0ge1xuICAgICAgcGFkZGluZzogMXJlbSAyLjVyZW0gMXJlbSAwOyB9IH1cbiAgLmdhbWUtbGlzdC1pdGVtOm5vdCg6bGFzdC1jaGlsZCk6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNEMUQ1RDU7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuLmdhbWVsaXN0LWl0ZW0taW5mbyBoMiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG5cbi5nYW1lbGlzdC1pdGVtLWltZyB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG5cbi5nYW1lLWdvdG8ge1xuICBwYWRkaW5nOiAycmVtIDNyZW07XG4gIGNvbG9yOiAjNzE3MTcxOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmdhbWUtZ290byB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmdhbWUtcG9wdXAtbW9kYWwge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTlGMkVGOyB9XG4gIC5nYW1lLXBvcHVwLW1vZGFsIC5nYW1lLW1vZGFsLWJvZHkge1xuICAgIHBhZGRpbmc6IDE1cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmdhbWUtcG9wdXAtbW9kYWwgLmdhbWUtbW9kYWwtYm9keSB7XG4gICAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgICAgLmdhbWUtcG9wdXAtbW9kYWwgLmdhbWUtbW9kYWwtYm9keSBpZnJhbWUge1xuICAgICAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDU3cHgpICFpbXBvcnRhbnQ7IH0gfVxuXG4uZ2FtZS1tb2RhbC1oZWFkZXIsXG4uZ2FtZS1oZWFkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBwYWRkaW5nOiAxNnB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5nYW1lLW1vZGFsLWhlYWRlciAucmV0dXJuLWJ0bixcbiAgLmdhbWUtaGVhZGVyIC5yZXR1cm4tYnRuIHtcbiAgICBtYXJnaW46IDA7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6IDAuOGVtOyB9XG4gICAgLmdhbWUtbW9kYWwtaGVhZGVyIC5yZXR1cm4tYnRuIGksXG4gICAgLmdhbWUtaGVhZGVyIC5yZXR1cm4tYnRuIGkge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDVweDsgfVxuXG4uZ2FtZS1tb2RhbC10aXRsZSBoMyxcbi5nYW1lLWhlYWRlciBoMyB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmdhbWUtbW9kYWwtd3JhcCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7IH1cbiAgLmdhbWUtbW9kYWwtd3JhcC5pcy12aXNpYmxlIC5tb2RhbC10cmFuc2l0aW9uIHtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNmb3JtOiBub25lOyB9XG5cbi8qIC0tLS0tLS0gR0FNRVMgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5mbGV4LWVxdWFsIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAuaGVyby1tYWluIC5mbGV4LWVxdWFsIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5mbGV4LWVxdWFsLmFydGljbGVzLWdyaWQge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmZsZXgtZXF1YWwgLmFydGljbGUtaXRlbSB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgICAgIC5oZXJvLW1haW4gLmZsZXgtZXF1YWwgLmFydGljbGUtaXRlbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuZmxleC1lcXVhbCAuYXJ0aWNsZS1pdGVtLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG4gICAgLmZsZXgtZXF1YWwgLmFydGljbGUtaXRlbS1pbmZvIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgICAuZmxleC1lcXVhbCAuYXJ0aWNsZS1pdGVtLWluZm8gLmFydGljbGUtaXRlbS1tZXRhIHtcbiAgICAgICAgbWFyZ2luLXRvcDogYXV0bzsgfVxuICAgIC5mbGV4LWVxdWFsIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5sZy13LWdyaWQtYm9yZGVyID4gZGl2IC5hcnRpY2xlLWl0ZW0ge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmxnLXctZ3JpZC1ib3JkZXIgPiBkaXYgLmFydGljbGUtaXRlbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkMWQ1ZDU7IH0gfVxuXG4ubGctdy1ncmlkLWJvcmRlciAuZ3JpZC1pdGVtcyA+IGRpdiAuYXJ0aWNsZS1pdGVtIHtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDFkNWQ1OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5sZy13LWdyaWQtYm9yZGVyIC5ncmlkLWl0ZW1zID4gZGl2Omxhc3QtY2hpbGQgLmFydGljbGUtaXRlbSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubGctdy1ncmlkLWJvcmRlciAuZ3JpZC1pdGVtcyA+IGRpdjpudGgtbGFzdC1jaGlsZCgyKSAuYXJ0aWNsZS1pdGVtLFxuICAubGctdy1ncmlkLWJvcmRlciAuZ3JpZC1pdGVtcyA+IGRpdjpsYXN0LWNoaWxkIC5hcnRpY2xlLWl0ZW0ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nOiAwOyB9IH1cblxuLmxnLXctZ3JpZC1ib3JkZXIgLmdyaWQtaXRlbXMgPiBkaXY6bnRoLWNoaWxkKG9kZCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmxnLXctZ3JpZC1ib3JkZXIgLmdyaWQtaXRlbXMgPiBkaXY6bnRoLWNoaWxkKG9kZCk6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYWNhY2E7XG4gICAgaGVpZ2h0OiAxMDElO1xuICAgIHdpZHRoOiAxLjNweDtcbiAgICBsZWZ0OiAtMjAuNXB4O1xuICAgIHRvcDogMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAubGctdy1ncmlkLWJvcmRlciAuZ3JpZC1pdGVtcyA+IGRpdjpudGgtY2hpbGQob2RkKTphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9IH1cblxuLmFydGljbGVzLWl0ZW0tbGlzdCA+IGRpdiB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLmFydGljbGVzLWl0ZW0tbGlzdCA+IGRpdjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0QxRDVENTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXJ0aWNsZXMtaXRlbS1saXN0IC5hcnRpY2xlLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgICAuYXJ0aWNsZXMtaXRlbS1saXN0IC5hcnRpY2xlLWl0ZW0gLmFydGljbGUtaXRlbS1pbWcge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDsgfVxuICAgICAgLmFydGljbGVzLWl0ZW0tbGlzdCAuYXJ0aWNsZS1pdGVtIC5hcnRpY2xlLWl0ZW0taW1nID4gYSA+IGltZyB7XG4gICAgICAgIGFzcGVjdC1yYXRpbzogNC8zO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmJsb2NrLXdyYXBwZXIgLmFydGljbGVzLWl0ZW0tbGlzdCAuYXJ0aWNsZS1pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAgIC5ibG9jay13cmFwcGVyIC5hcnRpY2xlcy1pdGVtLWxpc3QgLmFydGljbGUtaXRlbSAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgICB3aWR0aDogMjAwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmFydGljbGVzLWl0ZW0tbGlzdCAubGFiZWwge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uaGFzLXNlcGFyYXRvci1ncmlkLmdyaWQtaXRlbXMgPiBkaXYge1xuICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5oYXMtc2VwYXJhdG9yLWdyaWQuZ3JpZC1pdGVtcyA+IGRpdiB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfSB9XG5cbi5oYXMtc2VwYXJhdG9yLWdyaWQuZ3JpZC1pdGVtcyA+IGRpdiAuYXJ0aWNsZS1pdGVtIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEMUQ1RDU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuaGFzLXNlcGFyYXRvci1ncmlkLmdyaWQtaXRlbXMgPiBkaXYgLmFydGljbGUtaXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5oYXMtc2VwYXJhdG9yLWdyaWQuZ3JpZC1pdGVtcyA+IGRpdiAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhhcy1zZXBhcmF0b3ItZ3JpZC5ncmlkLWl0ZW1zID4gZGl2Om50aC1sYXN0LWNoaWxkKDIpIC5hcnRpY2xlLWl0ZW0sXG4gIC5oYXMtc2VwYXJhdG9yLWdyaWQuZ3JpZC1pdGVtcyA+IGRpdjpsYXN0LWNoaWxkIC5hcnRpY2xlLWl0ZW0ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfSB9XG5cbi52ZXJ0aWNhbC1zZXBhcmF0b3IgPiBkaXYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnZlcnRpY2FsLXNlcGFyYXRvciA+IGRpdjpub3QoOmxhc3QtY2hpbGQpOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjYWNhO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGxlZnQ6IC0yMC41cHg7XG4gICAgdG9wOiAwOyB9XG4gICAgLm1haW4tY29udGFpbmVyID4gLnZlcnRpY2FsLXNlcGFyYXRvciA+IGRpdjpub3QoOmxhc3QtY2hpbGQpOmFmdGVyIHtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAudmVydGljYWwtc2VwYXJhdG9yID4gZGl2Om5vdCg6bGFzdC1jaGlsZCk6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIC5zbWFsbC1ncmlkLWNvbGxhcHNlID4gLnZlcnRpY2FsLXNlcGFyYXRvciA+IGRpdjpub3QoOmxhc3QtY2hpbGQpOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH0gfVxuXG4udmVydGljYWwtc2VwYXJhdG9yLmhhcy1zZXBhcmF0b3ItZ3JpZCA+IGRpdjpudGgtY2hpbGQoZXZlbik6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnZlcnRpY2FsLXNlcGFyYXRvci5ncmlkLWNvbHVtbi0yID4gZGl2Om50aC1jaGlsZChldmVuKTphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH0gfVxuXG4udmVydGljYWwtc2VwYXJhdG9yLmdyaWQtY29sdW1uLTQgPiBkaXY6bnRoLWNoaWxkKDRuKTphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC52ZXJ0aWNhbC1zZXBhcmF0b3IuaGVyby13cmFwID4gZGl2Om5vdCg6bGFzdC1jaGlsZCk6YWZ0ZXIsIC52ZXJ0aWNhbC1zZXBhcmF0b3IuZ3JpZC1jb2x1bW4gPiBkaXY6bm90KDpsYXN0LWNoaWxkKTphZnRlciwgLnZlcnRpY2FsLXNlcGFyYXRvci52aWRlby1zZWN0aW9uID4gZGl2Om5vdCg6bGFzdC1jaGlsZCk6YWZ0ZXIsIC52ZXJ0aWNhbC1zZXBhcmF0b3IubWFpbiA+IGRpdjpub3QoOmxhc3QtY2hpbGQpOmFmdGVyLCAudmVydGljYWwtc2VwYXJhdG9yLmxnLXctZ3JpZC1ib3JkZXIgPiBkaXY6bm90KDpsYXN0LWNoaWxkKTphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAudmVydGljYWwtc2VwYXJhdG9yLmFydGljbGVzLWdyaWQgPiBkaXY6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9IH1cblxuLmdyaWQtc3R5bGUtdjIgPiBkaXY6bm90KDpsYXN0LWNoaWxkKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZ3JpZC1zdHlsZS12MiA+IGRpdjpub3QoOmxhc3QtY2hpbGQpOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjYWNhO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMS4zcHg7XG4gICAgbGVmdDogLTFyZW07XG4gICAgdG9wOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5ncmlkLXN0eWxlLXYyIC5ncmlkLWl0ZW1zID4gLmNlbGw6bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRDFENUQ1O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5ncmlkLWl0ZW1zIC5hcnRpY2xlLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5ncmlkLWl0ZW1zIC5hcnRpY2xlLWl0ZW0gLmFydGljbGUtaXRlbS1pbWcge1xuICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMS41cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmdyaWQtY29sdW1uID4gLmNlbGw6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEMUQ1RDU7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLWNvbHVtbiAubWFpbi1pdGVtIC5hcnRpY2xlLWl0ZW0tY29udGVudCB7XG4gICAgaGVpZ2h0OiA1NXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuZ3JpZC1jb2x1bW4tMiB7XG4gICAgZ2FwOiAxLjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuZ3JpZC1jb2x1bW4tMiA+IC5jZWxsOm5vdCg6bGFzdC1jaGlsZCkgLnNlY3Rpb24td3JhcHBlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEMUQ1RDU7IH0gfVxuXG4uZ3JpZC1jb2x1bW4tMiAubWVkaWEtYXJ0aWNsZS1saXN0ID4gLmFydGljbGUtbGlzdC1pdGVtOm50aC1jaGlsZCgxKSAubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQsXG4uZ3JpZC1jb2x1bW4tMiAubWVkaWEtYXJ0aWNsZS1saXN0ID4gLmFydGljbGUtbGlzdC1pdGVtOm50aC1jaGlsZCgyKSAubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5ncmlkLWNvbHVtbi0yIC5tZWRpYS1hcnRpY2xlLWxpc3QgaDMge1xuICBmb250LXdlaWdodDogbm9ybWFsOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zbS1zZXBhcmF0b3Ige1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRDFENUQ1OyB9IH1cblxuLmFydGljbGVzLWdyaWQgLmFydGljbGUtaXRlbSB7XG4gIHBhZGRpbmctYm90dG9tOiAycmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmFydGljbGVzLWdyaWQgLmFydGljbGUtaXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7IH0gfVxuXG4uYXJ0aWNsZXMtZ3JpZC5oYXMtc2VwYXJhdG9yID4gZGl2IHtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07IH1cbiAgLmFydGljbGVzLWdyaWQuaGFzLXNlcGFyYXRvciA+IGRpdiAuYXJ0aWNsZS1pdGVtIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0QxRDVENTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAuYXJ0aWNsZXMtZ3JpZC5oYXMtc2VwYXJhdG9yID4gZGl2IC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cbiAgLmFydGljbGVzLWdyaWQuaGFzLXNlcGFyYXRvciA+IGRpdjpudGgtY2hpbGQoMW4gKyAxKTpudGgtbGFzdC1jaGlsZCgtbiArIDEpOm5vdCguaGlkZS1mb3ItbGFyZ2UpIC5hcnRpY2xlLWl0ZW0sXG4gIC5hcnRpY2xlcy1ncmlkLmhhcy1zZXBhcmF0b3IgPiBkaXY6bnRoLWNoaWxkKDFuICsgMSk6bnRoLWxhc3QtY2hpbGQoLW4gKyAxKTpub3QoLmhpZGUtZm9yLWxhcmdlKSB+IC5jZWxsIC5hcnRpY2xlLWl0ZW0ge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmFydGljbGVzLWdyaWQuaGFzLXNlcGFyYXRvciA+IGRpdjpudGgtY2hpbGQoMm4gKyAxKTpudGgtbGFzdC1jaGlsZCgtbiArIDIpOm5vdCguaGlkZS1mb3ItbGFyZ2UpIC5hcnRpY2xlLWl0ZW0sXG4gICAgLmFydGljbGVzLWdyaWQuaGFzLXNlcGFyYXRvciA+IGRpdjpudGgtY2hpbGQoMm4gKyAxKTpudGgtbGFzdC1jaGlsZCgtbiArIDIpOm5vdCguaGlkZS1mb3ItbGFyZ2UpIH4gLmNlbGwgLmFydGljbGUtaXRlbSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFydGljbGVzLWdyaWQuaGFzLXNlcGFyYXRvciA+IGRpdjpudGgtY2hpbGQoM24gKyAxKTpudGgtbGFzdC1jaGlsZCgtbiArIDMpOm5vdCguaGlkZS1mb3ItbGFyZ2UpIC5hcnRpY2xlLWl0ZW0sXG4gICAgLmFydGljbGVzLWdyaWQuaGFzLXNlcGFyYXRvciA+IGRpdjpudGgtY2hpbGQoM24gKyAxKTpudGgtbGFzdC1jaGlsZCgtbiArIDMpOm5vdCguaGlkZS1mb3ItbGFyZ2UpIH4gLmNlbGwgLmFydGljbGUtaXRlbSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcnRpY2xlcy1ncmlkLmxhcmdlLXVwLTQuaGFzLXNlcGFyYXRvciA+IGRpdjpudGgtY2hpbGQoNG4gKyAxKTpudGgtbGFzdC1jaGlsZCgtbiArIDQpOm5vdCguaGlkZS1mb3ItbGFyZ2UpIC5hcnRpY2xlLWl0ZW0sXG4gIC5hcnRpY2xlcy1ncmlkLmxhcmdlLXVwLTQuaGFzLXNlcGFyYXRvciA+IGRpdjpudGgtY2hpbGQoNG4gKyAxKTpudGgtbGFzdC1jaGlsZCgtbiArIDQpOm5vdCguaGlkZS1mb3ItbGFyZ2UpIH4gLmNlbGwgLmFydGljbGUtaXRlbSB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7IH0gfVxuXG4uaGFzLXRvcC1zZXBhcmF0b3IgPiAuY2VsbCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRDFENUQ1O1xuICBwYWRkaW5nLXRvcDogMXJlbTsgfVxuXG4uYm90dG9tLWJvcmRlci5ncmlkLWl0ZW1zID4gZGl2IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEMUQ1RDU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuYm90dG9tLWJvcmRlci5ncmlkLWl0ZW1zID4gZGl2IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfSB9XG5cbi5ib3R0b20tYm9yZGVyID4gLmFydGljbGUtaXRlbSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRDFENUQ1O1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5ib3R0b20tYm9yZGVyID4gLmFydGljbGUtaXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH0gfVxuXG4udG9wLWJvcmRlciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRDFENUQ1O1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgbWFyZ2luLXRvcDogMXJlbTsgfVxuXG4vKiBEcnVwYWwgYWRtaW4gc3R5bGVzIC0tLS0tIFNUQVJUIC0tLS0tKi9cbmJvZHkudXNlci1sb2dnZWQtaW4gdWwudGFicy5wcmltYXJ5IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIGJvZHkudXNlci1sb2dnZWQtaW4gdWwudGFicy5wcmltYXJ5IGxpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIDVweCA4cHg7XG4gICAgcGFkZGluZzogNXB4IDE1cHg7IH1cbiAgICBib2R5LnVzZXItbG9nZ2VkLWluIHVsLnRhYnMucHJpbWFyeSBsaTpob3ZlciwgYm9keS51c2VyLWxvZ2dlZC1pbiB1bC50YWJzLnByaW1hcnkgbGkuYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6ICMyQzhBODI7IH1cbiAgICAgIGJvZHkudXNlci1sb2dnZWQtaW4gdWwudGFicy5wcmltYXJ5IGxpOmhvdmVyIGEsIGJvZHkudXNlci1sb2dnZWQtaW4gdWwudGFicy5wcmltYXJ5IGxpLmFjdGl2ZSBhIHtcbiAgICAgICAgY29sb3I6IHdoaXRlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIGJvZHkudXNlci1vcGVuIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbjsgfVxuICAgIGJvZHkudXNlci1vcGVuOmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4gMC4ycztcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBjb250ZW50OiBcIlwiOyB9IH1cblxuLmFqYXgtcHJvZ3Jlc3MtZnVsbHNjcmVlbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvbG9hZGluZy5zdmcpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyB9XG5cbi8qIERydXBhbCBhZG1pbiBzdHlsZXMgLS0tLS0gRU5EIC0tLS0tKi9cbi5hamF4LXByb2dyZXNzIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgaGVpZ2h0OiA1MHB4O1xuICB3aWR0aDogNTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIG1hcmdpbjogMTBweCBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4qIHtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG46Zm9jdXMge1xuICBvdXRsaW5lOiBub25lOyB9XG5cbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDsgfVxuXG4uc2hvdy1mb3ItcHJpbnRhYmxlLWFyZWEge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbmlucHV0LnJhZGl1cyxcbi5pbnB1dC1ncm91cCA+IGlucHV0OmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogNHB4OyB9XG5cbi5zZWFyY2gtZm9ybSBpbnB1dC5pbnB1dC1ncm91cC1maWVsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDRweCAhaW1wb3J0YW50OyB9XG5cbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiAxMHJlbTsgfVxuXG5hIHtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgZWFzZSAwcywgYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlIDBzLCBvcGFjaXR5IDAuMjVzIGVhc2UgMHM7IH1cbiAgYS5ob3ZlcmVkIHtcbiAgICBjb2xvcjogIzVmNzE3NjsgfVxuICBhLmNsYXNzaWM6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIGNvbG9yOiAjMkM4QTgyOyB9XG5cbi5vZmYtY2FudmFzIHtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbmJ1dHRvbi5ncmF5LmhvbGxvdyxcbi5idXR0b24uZ3JheS5ob2xsb3cge1xuICBjb2xvcjogIzcxNzE3MTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0RDREZERjsgfVxuICBidXR0b24uZ3JheS5ob2xsb3c6aG92ZXIsXG4gIC5idXR0b24uZ3JheS5ob2xsb3c6aG92ZXIge1xuICAgIGNvbG9yOiAjMkM4QTgyO1xuICAgIGJvcmRlci1jb2xvcjogIzJDOEE4MjsgfVxuXG5idXR0b24ubGlnaHQtZ3JlZW4sXG4uYnV0dG9uLmxpZ2h0LWdyZWVuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjZjRmMztcbiAgY29sb3I6ICMwMDAwMDA7IH1cbiAgYnV0dG9uLmxpZ2h0LWdyZWVuOmhvdmVyLFxuICAuYnV0dG9uLmxpZ2h0LWdyZWVuOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkM4QTgyOyB9XG5cbmJ1dHRvbi5yYWRpdXMsXG4uYnV0dG9uLnJhZGl1cyB7XG4gIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuXG5idXR0b24ucHJpbWFyeSxcbi5idXR0b24ucHJpbWFyeSB7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5idXR0b24ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5wcmltYXJ5OmZvY3VzIHtcbiAgY29sb3I6ICNmZmZmZmY7IH1cblxuLmJ1dHRvbi5wcmltYXJ5LWxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZmFmYTtcbiAgY29sb3I6ICM0ZDhhODg7XG4gIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7IH1cbiAgLmJ1dHRvbi5wcmltYXJ5LWxpZ2h0OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkM4QTgyO1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi8qSUNPTlMqL1xuLmljb24tdXNlci1jaXJjbGUtbzpiZWZvcmUsXG4uaWNvbi1jaGVjay1ncmVlbjpiZWZvcmUsXG4uaWNvbi1uZXdzOmJlZm9yZSxcbi5pY29uLWVudmVsb3AxOmJlZm9yZSxcbi5pY29uLXBsdXMtZ3JlZW46YmVmb3JlLFxuLmljb24tYm9va21hcmstb3V0bGluZTpiZWZvcmUsXG4uaWNvbi10ZWxlZ3JhbTpiZWZvcmUsXG4uaWNvbi1zaGFyZTpiZWZvcmUsXG4uaWNvbi1lbnZlbG9wMjpiZWZvcmUsXG4uaWNvbi1wbGF5LWdyZWVuOmJlZm9yZSxcbi5pY29uLWNhbGVuZGFyOmJlZm9yZSxcbi5pY29uLWxpdmU6YmVmb3JlLFxuLmljb24tc2hhcmUyOmJlZm9yZSxcbi5pY29uLW1lbnU6YmVmb3JlIHtcbiAgY29sb3I6IGluaGVyaXQ7IH1cblxuLm1ldGEtaWNvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAubWV0YS1pY28gaSB7XG4gICAgZm9udC1zaXplOiAxNXB4OyB9XG4gIC5tZXRhLWljbyBhIHtcbiAgICBjb2xvcjogIzJDOEE4MjsgfVxuICAgIC5tZXRhLWljbyBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi5yZWQtYnVsbGV0cyBsaSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAucmVkLWJ1bGxldHMgbGk6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkxNFwiO1xuICAgIC8qIEFkZCBjb250ZW50OiBcXDIwMjIgaXMgdGhlIENTUyBDb2RlL3VuaWNvZGUgZm9yIGEgYnVsbGV0ICovXG4gICAgY29sb3I6ICNjZTQyNDI7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiA4cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAxMHB4O1xuICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjsgfVxuICAgIFtkaXI9XCJsdHJcIl0gLnJlZC1idWxsZXRzIGxpOmJlZm9yZSB7XG4gICAgICB0b3A6IDdweDsgfVxuXG4uZGFyay10aGVtZSBtYWluIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmRhcmstdGhlbWUgbWFpbiBhIHtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4uZGFyay10aGVtZSBociB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICMzODM4Mzg7IH1cblxuLyogU2VhcmNoIEFyZWEgU3R5bGVzIC0tLS0tIFNUQVJUIC0tLS0tICovXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc2VhcmNoLWZyYW1lIHtcbiAgICBtYXJnaW4tdG9wOiAxNXB4OyB9IH1cblxuLnNlYXJjaC1mcmFtZSBpZnJhbWUge1xuICBib3JkZXI6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiA0MDBweDsgfVxuXG4uc2VhcmNoLWFyZWEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMThweDsgfVxuICAuc2VhcmNoLWFyZWEgLnNlYXJjaC1pbnB1dCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItbGVmdDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5NTk1OTU7XG4gICAgY29sb3I6ICMyQzhBODI7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG4gICAgLnNlYXJjaC1hcmVhIC5zZWFyY2gtaW5wdXQ6Zm9jdXMge1xuICAgICAgb3V0bGluZTogMDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCA1cHggdHJhbnNwYXJlbnQ7IH1cbiAgLnNlYXJjaC1hcmVhIGkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcGFkZGluZzogMC43cmVtIDA7IH1cbiAgLnNlYXJjaC1hcmVhIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIiAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcGFkZGluZzogNXB4IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjMkM4QTgyO1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLmNhbnZhcy1wYW5lbCAuc2VhcmNoLWFyZWEgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIC5jYW52YXMtcGFuZWwgLnNlYXJjaC1hcmVhIC5zZWFyY2gtYXJlYS0taW5wdXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogIzY0N2U3YztcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4OyB9XG4gICAgLmNhbnZhcy1wYW5lbCAuc2VhcmNoLWFyZWEgaW5wdXRbdHlwZT1cInRleHRcIl06OnBsYWNlaG9sZGVyLFxuICAgIC5jYW52YXMtcGFuZWwgLnNlYXJjaC1hcmVhIC5zZWFyY2gtYXJlYS0taW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAjNjQ3ZTdjOyB9XG4gIC5jYW52YXMtcGFuZWwgLnNlYXJjaC1hcmVhIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG4gIC5jYW52YXMtcGFuZWwgLnNlYXJjaC1hcmVhIC5zZWFyY2gtYXJlYS0tc3VibWl0IHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBwYWRkaW5nOiA3cHggMDsgfVxuXG4uc2VhcmNoLWFyZWEtLWlucHV0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIuNzM3NXJlbTtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzk1OTI5MjtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiAjNjQ3ZTdjOyB9XG5cbi5zZWFyY2gtYXJlYS0tc3VibWl0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDIycHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IDIycHg7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uc2VhcmNoLWhlYWRpbmcge1xuICBjb2xvcjogIzJDOEE4MjsgfVxuXG4uc2VhcmNoLXNlY3Rpb24ge1xuICBjb2xvcjogIzU1NTU1NTtcbiAgbWFyZ2luLXRvcDogMnJlbTsgfVxuICAuc2VhcmNoLXNlY3Rpb24gdWwge1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIC5zZWFyY2gtc2VjdGlvbiB1bCBsaSB7XG4gICAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgICAuc2VhcmNoLXNlY3Rpb24gdWwgbGkuaG90IGEge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgLnNlYXJjaC1zZWN0aW9uIHVsIGxpLmhvdCBhOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZTkyMFwiO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCIgIWltcG9ydGFudDtcbiAgICAgICAgICByaWdodDogLTEuNXJlbTtcbiAgICAgICAgICBjb2xvcjogI2NlNDI0MjsgfVxuXG4ubWFpbi1oZWFkZXItaW5uZXIgLnNlYXJjaC1idG4gYSB7XG4gIGNvbG9yOiAjMkM4QTgyO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuICAubWFpbi1oZWFkZXItaW5uZXIgLnNlYXJjaC1idG4gYSBpIHtcbiAgICBjb2xvcjogIzI1M0MzQTtcbiAgICBtYXJnaW4tbGVmdDogNnB4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zZWFyY2gtcmVzdWx0cyAuYXJ0aWNsZS1pdGVtLWltZyBpbWcge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnNlYXJjaC1yZXN1bHRzIC5hcnRpY2xlLWl0ZW0taW5mbyB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTsgfSB9XG5cbi5yZXN1bHQtY291bnQge1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWZhbWlseTogXCJFZmZyYVwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAjOTI5ODk4O1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbWFyZ2luLXRvcDogMC4zcmVtOyB9XG5cbi8qIFNlYXJjaCBBcmVhIFN0eWxlcyAtLS0tLSBFTkQgLS0tLS0gKi9cbi5jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgb3ZlcmZsb3cteDogaGlkZGVuOyB9XG4gIC5saXZlLW5ld3MxIC5jb250YWluZXIge1xuICAgIG92ZXJmbG93LXg6IGNsaXA7IH1cblxubWFpbixcbmhlYWRlcixcbmZvb3RlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG5odG1sIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDsgfVxuXG5tYWluIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgbWFpbiAuZ3JpZC1jb250YWluZXIge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgYm9keTpub3QoLmFib3V0LXVzKTpub3QoLmFib3V0LXBhZ2UpOm5vdCguZGFyay10aGVtZSk6bm90KC5wYXRoLWpvdXJuZXkpOm5vdCgucGFnZS1ub2RlLXR5cGUtcG9kY2FzdCkgbWFpbiA+IGRpdjpmaXJzdC1jaGlsZDpub3QoLm5ld3MtdGlja2VyLWFyZWEpIHtcbiAgICAgIG1hcmdpbi10b3A6IDJyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuY29udGVudC13cmFwIHtcbiAgICBtYXJnaW4tdG9wOiAxNXB4OyB9IH1cblxuLmRhcmstYmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuZGFyay1iZy5mdWxsIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlO1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC01MHZ3O1xuICAgIG1hcmdpbi1yaWdodDogLTUwdnc7IH1cbiAgLmRhcmstYmcgLmVudHJ5LWNvbnRlbnQge1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5kYXJrLWJnIC5lbnRyeS1kYXRlIHtcbiAgICBjb2xvcjogI2RmZGZkZjsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKG1heC13aWR0aDogMTAzMHB4KSB7XG4gIC5zaWRlYmFyLXdyYXAsXG4gIC5zdGF0aWMtY29sdW1uLXdyYXAge1xuICAgIHdpZHRoOiAyNTBweCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNpZGViYXItd3JhcCxcbiAgLnN0YXRpYy1jb2x1bW4td3JhcCB7XG4gICAgd2lkdGg6IDMwOXB4O1xuICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zaWRlYmFyLXdyYXAgLmJsb2NrLXdyYXBwZXIsXG4gIC5zdGF0aWMtY29sdW1uLXdyYXAgLmJsb2NrLXdyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IDJyZW07IH1cbiAgICAuaGVyby1tYWluIC5zaWRlYmFyLXdyYXAgLmJsb2NrLXdyYXBwZXIsIC5oZXJvLW1haW5cbiAgICAuc3RhdGljLWNvbHVtbi13cmFwIC5ibG9jay13cmFwcGVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc3RhdGljLWNvbHVtbi13cmFwIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0QxRDVENTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cblxuLmJsb2NrLXdyYXBwZXI6bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1ib3R0b206IDIycHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYmxvY2std3JhcHBlcjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH0gfVxuICAuaGVyby1tYWluIC5ibG9jay13cmFwcGVyOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmJsb2NrLXdyYXBwZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmxvY2std3JhcHBlciNzdGlja3ktYmxvY2sge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4uYmxvY2std3JhcHBlci0tYm9yZGVyLXRvcCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRDFENUQ1O1xuICBwYWRkaW5nLXRvcDogMXJlbTsgfVxuXG4uaGVyby1tYWluIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAuaGVyby1tYWluIC5tZWRpdW0tMTIuc21hbGwtb3JkZXItMyB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuaGVyby1tYWluIC5tYWluLWl0ZW0gLmFydGljbGUtaXRlbS1pbWcge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMXJlbTtcbiAgICAgIGhlaWdodDogMjkycHg7IH1cbiAgICAgIC5oZXJvLW1haW4gLm1haW4taXRlbSAuYXJ0aWNsZS1pdGVtLWltZyBpbWcge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9IH1cbiAgLmhlcm8tbWFpbiAuYXJ0aWNsZS1pdGVtLXRpdGxlIGgyIHtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIGZvbnQtc2l6ZTogMS42MjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaGVyby1tYWluIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDIge1xuICAgICAgICBmb250LXNpemU6IDIuMTg3NXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDsgfSB9XG4gICAgW2Rpcj1cImx0clwiXSAuaGVyby1tYWluIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDIge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiBpbml0aWFsOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICBbZGlyPVwibHRyXCJdIC5oZXJvLW1haW4gLmFydGljbGUtaXRlbS10aXRsZSBoMiB7XG4gICAgICAgICAgZm9udC1zaXplOiAyLjI1cmVtOyB9IH1cbiAgLmhlcm8tbWFpbiAuZW50cnktaGlnaHRsaWdodCB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICBbZGlyPVwibHRyXCJdIC5oZXJvLW1haW4gLmVudHJ5LWhpZ2h0bGlnaHQge1xuICAgICAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgLmhlcm8tbWFpbiAuZW50cnktaGlnaHRsaWdodCB1bCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmhlcm8tbWFpbiAuZW50cnktaGlnaHRsaWdodCBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLmhlcm8tbWFpbiAuZW50cnktaGlnaHRsaWdodCBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuICAgICAgLmhlcm8tbWFpbiAuZW50cnktaGlnaHRsaWdodCBsaSBhIHtcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgICAgIFtkaXI9XCJsdHJcIl0gLmhlcm8tbWFpbiAuZW50cnktaGlnaHRsaWdodCBsaSBhIHtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgICAgIC5oZXJvLW1haW4gLmVudHJ5LWhpZ2h0bGlnaHQgbGkgYTpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICMyQzhBODI7IH1cbiAgICAuaGVyby1tYWluIC5lbnRyeS1oaWdodGxpZ2h0IHRpbWUge1xuICAgICAgY29sb3I6ICM5Mjk4OTg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLmhlcm8tbWFpbiAuZW50cnktaGlnaHRsaWdodCB0aW1lOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzkyOTg5ODtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogLTFweDtcbiAgICAgICAgdG9wOiAzcHg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgIC5oZXJvLW1haW4gLmVudHJ5LWhpZ2h0bGlnaHQgdGltZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5oZXJvLWFmdGVyIHtcbiAgbWFyZ2luLXRvcDogMi41cmVtO1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNEMUQ1RDU7IH1cblxuLnNlY3Rpb24td3JhcHBlcjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG4uYmxvY2stdGl0bGUsXG4uc2VjdGlvbi10aXRsZSxcbi5wYWdlLXRpdGxlLFxuLnRpdGxlIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cbiAgLmJsb2NrLXRpdGxlLnRpdGxlLWl0YWxpYyBhLFxuICAuc2VjdGlvbi10aXRsZS50aXRsZS1pdGFsaWMgYSxcbiAgLnBhZ2UtdGl0bGUudGl0bGUtaXRhbGljIGEsXG4gIC50aXRsZS50aXRsZS1pdGFsaWMgYSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljOyB9XG4gIC5ibG9jay10aXRsZSBoMSxcbiAgLmJsb2NrLXRpdGxlIGgyLFxuICAuYmxvY2stdGl0bGUgaDMsXG4gIC5ibG9jay10aXRsZSBoNCxcbiAgLnNlY3Rpb24tdGl0bGUgaDEsXG4gIC5zZWN0aW9uLXRpdGxlIGgyLFxuICAuc2VjdGlvbi10aXRsZSBoMyxcbiAgLnNlY3Rpb24tdGl0bGUgaDQsXG4gIC5wYWdlLXRpdGxlIGgxLFxuICAucGFnZS10aXRsZSBoMixcbiAgLnBhZ2UtdGl0bGUgaDMsXG4gIC5wYWdlLXRpdGxlIGg0LFxuICAudGl0bGUgaDEsXG4gIC50aXRsZSBoMixcbiAgLnRpdGxlIGgzLFxuICAudGl0bGUgaDQge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5ibG9jay10aXRsZSBoMSxcbiAgICAgIC5ibG9jay10aXRsZSBoMixcbiAgICAgIC5ibG9jay10aXRsZSBoMyxcbiAgICAgIC5ibG9jay10aXRsZSBoNCxcbiAgICAgIC5zZWN0aW9uLXRpdGxlIGgxLFxuICAgICAgLnNlY3Rpb24tdGl0bGUgaDIsXG4gICAgICAuc2VjdGlvbi10aXRsZSBoMyxcbiAgICAgIC5zZWN0aW9uLXRpdGxlIGg0LFxuICAgICAgLnBhZ2UtdGl0bGUgaDEsXG4gICAgICAucGFnZS10aXRsZSBoMixcbiAgICAgIC5wYWdlLXRpdGxlIGgzLFxuICAgICAgLnBhZ2UtdGl0bGUgaDQsXG4gICAgICAudGl0bGUgaDEsXG4gICAgICAudGl0bGUgaDIsXG4gICAgICAudGl0bGUgaDMsXG4gICAgICAudGl0bGUgaDQge1xuICAgICAgICBmb250LXNpemU6IDEuMzc1cmVtOyB9IH1cbiAgICAuYmxvY2stdGl0bGUgaDEgYSxcbiAgICAuYmxvY2stdGl0bGUgaDIgYSxcbiAgICAuYmxvY2stdGl0bGUgaDMgYSxcbiAgICAuYmxvY2stdGl0bGUgaDQgYSxcbiAgICAuc2VjdGlvbi10aXRsZSBoMSBhLFxuICAgIC5zZWN0aW9uLXRpdGxlIGgyIGEsXG4gICAgLnNlY3Rpb24tdGl0bGUgaDMgYSxcbiAgICAuc2VjdGlvbi10aXRsZSBoNCBhLFxuICAgIC5wYWdlLXRpdGxlIGgxIGEsXG4gICAgLnBhZ2UtdGl0bGUgaDIgYSxcbiAgICAucGFnZS10aXRsZSBoMyBhLFxuICAgIC5wYWdlLXRpdGxlIGg0IGEsXG4gICAgLnRpdGxlIGgxIGEsXG4gICAgLnRpdGxlIGgyIGEsXG4gICAgLnRpdGxlIGgzIGEsXG4gICAgLnRpdGxlIGg0IGEge1xuICAgICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgICAgIC5ibG9jay10aXRsZSBoMSBhOmhvdmVyLFxuICAgICAgLmJsb2NrLXRpdGxlIGgyIGE6aG92ZXIsXG4gICAgICAuYmxvY2stdGl0bGUgaDMgYTpob3ZlcixcbiAgICAgIC5ibG9jay10aXRsZSBoNCBhOmhvdmVyLFxuICAgICAgLnNlY3Rpb24tdGl0bGUgaDEgYTpob3ZlcixcbiAgICAgIC5zZWN0aW9uLXRpdGxlIGgyIGE6aG92ZXIsXG4gICAgICAuc2VjdGlvbi10aXRsZSBoMyBhOmhvdmVyLFxuICAgICAgLnNlY3Rpb24tdGl0bGUgaDQgYTpob3ZlcixcbiAgICAgIC5wYWdlLXRpdGxlIGgxIGE6aG92ZXIsXG4gICAgICAucGFnZS10aXRsZSBoMiBhOmhvdmVyLFxuICAgICAgLnBhZ2UtdGl0bGUgaDMgYTpob3ZlcixcbiAgICAgIC5wYWdlLXRpdGxlIGg0IGE6aG92ZXIsXG4gICAgICAudGl0bGUgaDEgYTpob3ZlcixcbiAgICAgIC50aXRsZSBoMiBhOmhvdmVyLFxuICAgICAgLnRpdGxlIGgzIGE6aG92ZXIsXG4gICAgICAudGl0bGUgaDQgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjMkM4QTgyOyB9XG4gIC5ibG9jay10aXRsZS5zZXBhcmF0b3ItY2VudGVyLWFib3ZlOmJlZm9yZSxcbiAgLnNlY3Rpb24tdGl0bGUuc2VwYXJhdG9yLWNlbnRlci1hYm92ZTpiZWZvcmUsXG4gIC5wYWdlLXRpdGxlLnNlcGFyYXRvci1jZW50ZXItYWJvdmU6YmVmb3JlLFxuICAudGl0bGUuc2VwYXJhdG9yLWNlbnRlci1hYm92ZTpiZWZvcmUge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIC13ZWJraXQtZmxleC1iYXNpczogMDtcbiAgICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogMDtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIC13ZWJraXQtYm94LW9yZGluYWwtZ3JvdXA6IDI7XG4gICAgLXdlYmtpdC1vcmRlcjogMTtcbiAgICAtbXMtZmxleC1vcmRlcjogMTtcbiAgICBvcmRlcjogMTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICB0b3A6IC0xMHB4O1xuICAgIHdpZHRoOiA1cmVtO1xuICAgIGJvcmRlci1ib3R0b206IDAuMTI1cmVtIHNvbGlkICMwMDAwMDA7XG4gICAgbWFyZ2luOiAxcmVtIGF1dG8gMDsgfVxuICAuYmxvY2stdGl0bGUuc2VwYXJhdG9yLWxlZnQtYWJvdmU6YmVmb3JlLFxuICAuc2VjdGlvbi10aXRsZS5zZXBhcmF0b3ItbGVmdC1hYm92ZTpiZWZvcmUsXG4gIC5wYWdlLXRpdGxlLnNlcGFyYXRvci1sZWZ0LWFib3ZlOmJlZm9yZSxcbiAgLnRpdGxlLnNlcGFyYXRvci1sZWZ0LWFib3ZlOmJlZm9yZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAwO1xuICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiAwO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMjtcbiAgICAtd2Via2l0LW9yZGVyOiAxO1xuICAgIC1tcy1mbGV4LW9yZGVyOiAxO1xuICAgIG9yZGVyOiAxO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHRvcDogLTEwcHg7XG4gICAgd2lkdGg6IDhyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwMDAwMDA7XG4gICAgbWFyZ2luOiAxcmVtIDAgMDsgfVxuICAuYmxvY2stdGl0bGUuc3R5bGUtdjIsXG4gIC5zZWN0aW9uLXRpdGxlLnN0eWxlLXYyLFxuICAucGFnZS10aXRsZS5zdHlsZS12MixcbiAgLnRpdGxlLnN0eWxlLXYyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5ibG9jay10aXRsZS5zdHlsZS12MyxcbiAgLnNlY3Rpb24tdGl0bGUuc3R5bGUtdjMsXG4gIC5wYWdlLXRpdGxlLnN0eWxlLXYzLFxuICAudGl0bGUuc3R5bGUtdjMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgLmJsb2NrLXRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMsXG4gICAgLnNlY3Rpb24tdGl0bGUuc3R5bGUtdjMgLmhlYWQtdGFicyAudGFicyxcbiAgICAucGFnZS10aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLFxuICAgIC50aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gICAgICAuYmxvY2stdGl0bGUuc3R5bGUtdjMgLmhlYWQtdGFicyAudGFicyBsaSxcbiAgICAgIC5zZWN0aW9uLXRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMgbGksXG4gICAgICAucGFnZS10aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzIGxpLFxuICAgICAgLnRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMgbGkge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwOyB9XG4gICAgLmJsb2NrLXRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMtdGl0bGUsXG4gICAgLnNlY3Rpb24tdGl0bGUuc3R5bGUtdjMgLmhlYWQtdGFicyAudGFicy10aXRsZSxcbiAgICAucGFnZS10aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLXRpdGxlLFxuICAgIC50aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLXRpdGxlIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAgIC5ibG9jay10aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLXRpdGxlOmZpcnN0LWNoaWxkIGEsXG4gICAgICAuc2VjdGlvbi10aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLXRpdGxlOmZpcnN0LWNoaWxkIGEsXG4gICAgICAucGFnZS10aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLXRpdGxlOmZpcnN0LWNoaWxkIGEsXG4gICAgICAudGl0bGUuc3R5bGUtdjMgLmhlYWQtdGFicyAudGFicy10aXRsZTpmaXJzdC1jaGlsZCBhIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM3MTcxNzE7XG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM3MTcxNzE7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNzE3MTcxOyB9XG4gICAgICAuYmxvY2stdGl0bGUuc3R5bGUtdjMgLmhlYWQtdGFicyAudGFicy10aXRsZTpsYXN0LWNoaWxkIGEsXG4gICAgICAuc2VjdGlvbi10aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLXRpdGxlOmxhc3QtY2hpbGQgYSxcbiAgICAgIC5wYWdlLXRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMtdGl0bGU6bGFzdC1jaGlsZCBhLFxuICAgICAgLnRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMtdGl0bGU6bGFzdC1jaGlsZCBhIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM3MTcxNzE7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzcxNzE3MTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM3MTcxNzE7IH1cbiAgICAgIC5ibG9jay10aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLXRpdGxlID4gYSxcbiAgICAgIC5zZWN0aW9uLXRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMtdGl0bGUgPiBhLFxuICAgICAgLnBhZ2UtdGl0bGUuc3R5bGUtdjMgLmhlYWQtdGFicyAudGFicy10aXRsZSA+IGEsXG4gICAgICAudGl0bGUuc3R5bGUtdjMgLmhlYWQtdGFicyAudGFicy10aXRsZSA+IGEge1xuICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGNvbG9yOiAjNzE3MTcxO1xuICAgICAgICBmb250LXNpemU6IDAuNjg3NXJlbTsgfVxuICAgICAgICAuYmxvY2stdGl0bGUuc3R5bGUtdjMgLmhlYWQtdGFicyAudGFicy10aXRsZSA+IGE6Zm9jdXMsIC5ibG9jay10aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSwgLmJsb2NrLXRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMtdGl0bGUgPiBhOmhvdmVyLFxuICAgICAgICAuc2VjdGlvbi10aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLXRpdGxlID4gYTpmb2N1cyxcbiAgICAgICAgLnNlY3Rpb24tdGl0bGUuc3R5bGUtdjMgLmhlYWQtdGFicyAudGFicy10aXRsZSA+IGFbYXJpYS1zZWxlY3RlZD1cInRydWVcIl0sXG4gICAgICAgIC5zZWN0aW9uLXRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMtdGl0bGUgPiBhOmhvdmVyLFxuICAgICAgICAucGFnZS10aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLXRpdGxlID4gYTpmb2N1cyxcbiAgICAgICAgLnBhZ2UtdGl0bGUuc3R5bGUtdjMgLmhlYWQtdGFicyAudGFicy10aXRsZSA+IGFbYXJpYS1zZWxlY3RlZD1cInRydWVcIl0sXG4gICAgICAgIC5wYWdlLXRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMtdGl0bGUgPiBhOmhvdmVyLFxuICAgICAgICAudGl0bGUuc3R5bGUtdjMgLmhlYWQtdGFicyAudGFicy10aXRsZSA+IGE6Zm9jdXMsXG4gICAgICAgIC50aXRsZS5zdHlsZS12MyAuaGVhZC10YWJzIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSxcbiAgICAgICAgLnRpdGxlLnN0eWxlLXYzIC5oZWFkLXRhYnMgLnRhYnMtdGl0bGUgPiBhOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xuICAgICAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5ibG9jay10aXRsZS5zdHlsZS12NCxcbiAgLnNlY3Rpb24tdGl0bGUuc3R5bGUtdjQsXG4gIC5wYWdlLXRpdGxlLnN0eWxlLXY0LFxuICAudGl0bGUuc3R5bGUtdjQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZmUzZTM7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nOiAxcmVtIDFyZW0gMC41cmVtOyB9XG5cbi5lZGl0b3ItZW50cmllcyAubWFpbi1lZGl0b3JzIC5zZWN0aW9uLXRpdGxlIHtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgfVxuXG4uZWRpdG9yLWVudHJpZXMgLnRpdGxlLFxuLmVkaXRvci1lbnRyaWVzIC5zZWN0aW9uLXRpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG5cbi5zZWN0aW9uLXRpdGxlLnN0eWxlLXYzOmFmdGVyLFxuLnBhZ2UtdGl0bGUuc3R5bGUtdjM6YWZ0ZXIge1xuICBtYXJnaW4tdG9wOiAycHg7IH1cblxuLnNlY3Rpb24tdGl0bGUuc3R5bGUtdjMgaDEsXG4uc2VjdGlvbi10aXRsZS5zdHlsZS12MyBoMixcbi5zZWN0aW9uLXRpdGxlLnN0eWxlLXYzIGgzLFxuLnNlY3Rpb24tdGl0bGUuc3R5bGUtdjMgaDQsXG4uc2VjdGlvbi10aXRsZS5zdHlsZS12MyBoNSxcbi5zZWN0aW9uLXRpdGxlLnN0eWxlLXYzIGg2LFxuLnBhZ2UtdGl0bGUuc3R5bGUtdjMgaDEsXG4ucGFnZS10aXRsZS5zdHlsZS12MyBoMixcbi5wYWdlLXRpdGxlLnN0eWxlLXYzIGgzLFxuLnBhZ2UtdGl0bGUuc3R5bGUtdjMgaDQsXG4ucGFnZS10aXRsZS5zdHlsZS12MyBoNSxcbi5wYWdlLXRpdGxlLnN0eWxlLXYzIGg2IHtcbiAgZm9udC13ZWlnaHQ6IDgwMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc2VjdGlvbi10aXRsZS5zdHlsZS12MyxcbiAgLnBhZ2UtdGl0bGUuc3R5bGUtdjMge1xuICAgIC8qc3BhbiB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH0qLyB9XG4gICAgLnNlY3Rpb24tdGl0bGUuc3R5bGUtdjM6YWZ0ZXIsXG4gICAgLnBhZ2UtdGl0bGUuc3R5bGUtdjM6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5zZWN0aW9uLXRpdGxlLFxuLmJsb2NrLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG4gIC5zZWN0aW9uLXRpdGxlIGgyLFxuICAuc2VjdGlvbi10aXRsZSBoMyxcbiAgLmJsb2NrLXRpdGxlIGgyLFxuICAuYmxvY2stdGl0bGUgaDMge1xuICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgW2Rpcj1cImx0clwiXSAuc2VjdGlvbi10aXRsZSBoMiwgW2Rpcj1cImx0clwiXVxuICAgIC5zZWN0aW9uLXRpdGxlIGgzLCBbZGlyPVwibHRyXCJdXG4gICAgLmJsb2NrLXRpdGxlIGgyLCBbZGlyPVwibHRyXCJdXG4gICAgLmJsb2NrLXRpdGxlIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICAuaW4tZm9jdXMgLnNlY3Rpb24tdGl0bGUsIC5pbi1mb2N1c1xuICAuYmxvY2stdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAuaW4tZm9jdXMgLnNlY3Rpb24tdGl0bGUsIC5pbi1mb2N1c1xuICAgICAgLmJsb2NrLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfSB9XG4gICAgLmluLWZvY3VzIC5zZWN0aW9uLXRpdGxlIGgzLCAuaW4tZm9jdXNcbiAgICAuYmxvY2stdGl0bGUgaDMge1xuICAgICAgZm9udC1zaXplOiAxLjYyNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmluLWZvY3VzIC5zZWN0aW9uLXRpdGxlIGgzLCAuaW4tZm9jdXNcbiAgICAgICAgLmJsb2NrLXRpdGxlIGgzIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuODc1cmVtOyB9IH1cbiAgICAuaW4tZm9jdXMgLnNlY3Rpb24tdGl0bGUgLmJ1dHRvbiwgLmluLWZvY3VzXG4gICAgLmJsb2NrLXRpdGxlIC5idXR0b24ge1xuICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTsgfVxuXG4uYmxvY2stdGl0bGUgaS5pY29uLWFyY2hpdmUge1xuICBtYXJnaW4tbGVmdDogMTBweDsgfVxuXG4ucGFnZS10aXRsZSBoMSB7XG4gIGZvbnQtc2l6ZTogMnJlbTsgfVxuXG4ucGFnZS10aXRsZSBoMiB7XG4gIGZvbnQtc2l6ZTogMnJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5wYWdlLXRpdGxlIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgcGFkZGluZzogMTBweCA1cHg7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGJhY2tncm91bmQ6ICNjZDJjMjQ7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7IH1cbiAgICAgIC5wYWdlLXRpdGxlIGgyIHNwYW4ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyB9IH1cblxuLnBhZ2UtdGl0bGUgLnN1YmhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBjb2xvcjogIzRkOTk4YTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYy10YWItY29udGVudF9qcyAuc2VjdGlvbi1jb250ZW50IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9IH1cblxuLm9iamVjdHMtbGlzdCB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgLmJsb2NrLXdyYXBwZXIgLm9iamVjdHMtbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAvKi5vYmplY3QtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAubWVkaWEtb2JqZWN0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9Ki8gfVxuICAub2JqZWN0cy1saXN0LnBhZGRpbmctaG9yaXpvbnRhbC0xIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07IH1cbiAgLm9iamVjdHMtbGlzdC5oYXMtc2VwYXJhdG9yIC5tZWRpYS1vYmplY3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLm9iamVjdHMtbGlzdC5oYXMtc2VwYXJhdG9yIC5vYmplY3QtaXRlbSB7XG4gICAgcGFkZGluZzogMXJlbSAwOyB9XG4gICAgLm9iamVjdHMtbGlzdC5oYXMtc2VwYXJhdG9yIC5vYmplY3QtaXRlbS5pbmNyZWFzZWQtc3BhY2Uge1xuICAgICAgcGFkZGluZzogMS41cmVtIDA7IH1cbiAgICAub2JqZWN0cy1saXN0Lmhhcy1zZXBhcmF0b3IgLm9iamVjdC1pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEMUQ1RDU7IH1cbiAgICAub2JqZWN0cy1saXN0Lmhhcy1zZXBhcmF0b3IgLm9iamVjdC1pdGVtLmluY3JlYXNlZC1zcGFjZSBoMyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtOyB9XG5cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbjpvbmx5LWNoaWxkOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLnNsaWNrLWRvdHMge1xuICBib3R0b206IC0yMHB4OyB9XG4gIC5zbGljay1kb3RzIGxpIHtcbiAgICB3aWR0aDogNDdweDtcbiAgICBoZWlnaHQ6IDRweDsgfVxuICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbiB7XG4gICAgICB3aWR0aDogNDdweDtcbiAgICAgIGhlaWdodDogNHB4OyB9XG4gICAgICAuc2xpY2stZG90cyBsaSBidXR0b246YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgd2lkdGg6IDQ3cHg7XG4gICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNmNGYzO1xuICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDsgfVxuICAgIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7IH1cblxuLnNsaWRlci12MSB7XG4gIG1hcmdpbi10b3A6IC0xLjVyZW07IH1cblxuLm1lZGlhLWFydGljbGUtbGlzdCBoMyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIFtsYW5nPVwiZmFcIl0gLm1lZGlhLWFydGljbGUtbGlzdCBoMyxcbiAgW2xhbmc9XCJ1clwiXSAubWVkaWEtYXJ0aWNsZS1saXN0IGgzIHtcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLm1lZGlhLWFydGljbGUtbGlzdCBoMyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuW2xhbmc9XCJmYVwiXSAubWVkaWEtYXJ0aWNsZS1saXN0IGg0LFxuW2xhbmc9XCJ1clwiXSAubWVkaWEtYXJ0aWNsZS1saXN0IGg0IHtcbiAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4ubWVkaWEtYXJ0aWNsZS1saXN0IC5tZWRpYS1vYmplY3QtaW1nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLm1lZGlhLWFydGljbGUtbGlzdCAubWVkaWEtb2JqZWN0LWltZyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgLm1lZGlhLWFydGljbGUtbGlzdCAubWVkaWEtb2JqZWN0LWltZyA+IGEgPiBpbWcge1xuICAgICAgICBhc3BlY3QtcmF0aW86IDQvMztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLm1lZGlhLWFydGljbGUtbGlzdCAubWVkaWEtb2JqZWN0LWltZyB7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgICBtYXJnaW46IDAuMjVyZW0gMXJlbSAwIDA7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgLm1lZGlhLWFydGljbGUtbGlzdCAubWVkaWEtb2JqZWN0LWltZyA+IGEgPiBpbWcge1xuICAgICAgICBhc3BlY3QtcmF0aW86IDQvMztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWVkaWEtYXJ0aWNsZS1saXN0IC5tZWRpYS1vYmplY3QtaW1nIGltZyB7XG4gICAgICB3aWR0aDogMTI1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAubWVkaWEtYXJ0aWNsZS1saXN0IC5tZWRpYS1vYmplY3QtaW1nIGltZyB7XG4gICAgICB3aWR0aDogOTBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5tZWRpYS1hcnRpY2xlLWxpc3QgLm1lZGlhLW9iamVjdCB7XG4gICAgZ2FwOiAyMHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLm1lZGlhLWFydGljbGUtbGlzdCAubWVkaWEtb2JqZWN0LXNlY3Rpb246bm90KDpvbmx5LWNoaWxkKSB7XG4gICAgd2lkdGg6IDUwJTsgfSB9XG5cbi5tZWRpYS1hcnRpY2xlLWxpc3QgLm1lZGlhLW9iamVjdC1zZWN0aW9uOm9ubHktY2hpbGQ6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLm1lZGlhLWFydGljbGUtbGlzdCAuYXJ0aWNsZS1saXN0LWl0ZW0uaGlkZS1pbWcgLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfSB9XG5cbi5tZWRpYS1hcnRpY2xlLWxpc3QgLmFydGljbGUtbGlzdC1pdGVtLmhpZGUtaW1nIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctbGVmdDogMDsgfVxuXG4uYXJ0aWNsZXMtbGlzdC5oYXMtc2VwYXJhdG9yIC5tZWRpYS1vYmplY3Qge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5hcnRpY2xlcy1saXN0Lmhhcy1zZXBhcmF0b3IgPiBkaXYge1xuICBwYWRkaW5nOiAxcmVtIDA7IH1cbiAgLmFydGljbGVzLWxpc3QuaGFzLXNlcGFyYXRvciA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cbiAgLmFydGljbGVzLWxpc3QuaGFzLXNlcGFyYXRvciA+IGRpdjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0QxRDVENTsgfVxuICAuYXJ0aWNsZXMtbGlzdC5oYXMtc2VwYXJhdG9yID4gZGl2IC5hcnRpY2xlLWl0ZW0sXG4gIC5hcnRpY2xlcy1saXN0Lmhhcy1zZXBhcmF0b3IgPiBkaXYgLmFydGljbGUtbGlzdC1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFydGljbGVzLWxpc3QuaGFzLXNlcGFyYXRvciA+IGRpdiAuYXJ0aWNsZS1pdGVtIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmFydGljbGVzLWxpc3QuaGFzLXNlcGFyYXRvciA+IGRpdiAuYXJ0aWNsZS1pdGVtLWluZm8ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXJ0aWNsZXMtbGlzdC5zbS1zaG93LW9uZS5oYXMtc2VwYXJhdG9yID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0QxRDVENTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAuYXJ0aWNsZXMtbGlzdC5zbS1zaG93LW9uZS5oYXMtc2VwYXJhdG9yID4gZGl2Om5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci1ib3R0b206IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXJ0aWNsZXMtbGlzdC5zbS1oYXMtc2VwYXJhdG9yID4gZGl2Om5vdCg6bGFzdC1jaGlsZCkge1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRDFENUQ1O1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH0gfVxuXG4uYXJ0aWNsZS1saXN0LWl0ZW0gaDYge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4uYXV0aG9yLW5hbWUsXG4uYXJ0aWNsZS1lcGlzb2RlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTsgfVxuICAub2JqZWN0LWl0ZW0uaW5jcmVhc2VkLXNwYWNlIC5hdXRob3ItbmFtZSwgLm9iamVjdC1pdGVtLmluY3JlYXNlZC1zcGFjZVxuICAuYXJ0aWNsZS1lcGlzb2RlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtOyB9XG4gIC5hdXRob3ItbmFtZSBhLFxuICAuYXJ0aWNsZS1lcGlzb2RlIGEge1xuICAgIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBjb2xvcjogIzJDOEE4MjsgfVxuICAgIC5ibG9jay13cmFwcGVyLXYyIC5hdXRob3ItbmFtZSBhLCAuYmxvY2std3JhcHBlci12MlxuICAgIC5hcnRpY2xlLWVwaXNvZGUgYSB7XG4gICAgICBjb2xvcjogIzVlOTA5NjsgfVxuICAgIC5hdXRob3ItbmFtZSBhOmhvdmVyLFxuICAgIC5hcnRpY2xlLWVwaXNvZGUgYTpob3ZlciB7XG4gICAgICBjb2xvcjogIzRkOTk4YTsgfVxuXG4uY2F0ZWdvcnktZmllbGQge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cbiAgLmNhdGVnb3J5LWZpZWxkIGEge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBjb2xvcjogIzJDOEE4MjtcbiAgICBwYWRkaW5nOiA1cHggMDsgfVxuICAgIC5jYXRlZ29yeS1maWVsZCBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMjUzQzNBOyB9XG4gIC5jYXRlZ29yeS1maWVsZCBzcGFuIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cblxuLm1ldGEtYXJlYSB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXNpemU6IDAuNzVyZW07IH1cblxuLmxpbmstaG9sZGVyIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIG1hcmdpbjogMCAwIDAuNXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiRWZmcmFcIjsgfVxuICAubGluay1ob2xkZXIgYSB7XG4gICAgY29sb3I6ICM3MTcxNzE7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5saW5rLWhvbGRlciBpIHtcbiAgICBmb250LXNpemU6IDAuNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAubGluay1ob2xkZXIucHJpbWFyeS1jb2xvciBhIHtcbiAgICBjb2xvcjogIzJDOEE4MjsgfVxuICAgIC5saW5rLWhvbGRlci5wcmltYXJ5LWNvbG9yIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cblxuLmFydGljbGUtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuYXJ0aWNsZS1pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5hcnRpY2xlLWl0ZW0uc3R5bGUtdjIgLmFydGljbGUtaXRlbS1pbWcge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIC5hcnRpY2xlLWl0ZW0uc3R5bGUtdjIgLmFydGljbGUtaXRlbS1pbWcgaW1nIHtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiA0LzM7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAtby1vYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5hcnRpY2xlLWl0ZW0uc3R5bGUtdjIgLmFydGljbGUtaXRlbS1pbWcge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5hcnRpY2xlLWl0ZW0uaGVyby13cmFwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmFydGljbGUtaXRlbS52aWRlby1pdGVtIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfSB9XG4gIC5ncmlkLWNvbHVtbi0yIC5hcnRpY2xlLWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmVkaXRvcmlhbC1saXN0IC5hcnRpY2xlLWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLWl0ZW1zIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH0gfVxuICAuYXJ0aWNsZXMtbGlzdCAuYXJ0aWNsZS1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmFydGljbGVzLWxpc3QgLmFydGljbGUtaXRlbSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYXJ0aWNsZS1pdGVtLWF1ZGlvIC5hcnRpY2xlLWl0ZW0tdGl0bGUge1xuICAgIG1heC13aWR0aDogNzAlOyB9IH1cblxuLmFydGljbGUtaXRlbS1jb250ZW50IHAge1xuICBjb2xvcjogIzRkNGQ0ZDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uYXJ0aWNsZS1pdGVtLWRlc2MgcCB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG5cbi5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLmFydGljbGUtaXRlbS1pbWcgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuYXJ0aWNsZS1pdGVtLWltZyA+IGEgPiBpbWcge1xuICAgICAgYXNwZWN0LXJhdGlvOiA0LzM7XG4gICAgICAtby1vYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9IH1cbiAgLmFydGljbGUtaXRlbS1pbWcgPiBhOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgZWFzZSAwcywgYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlIDBzLCBvcGFjaXR5IDAuMjVzIGVhc2UgMHM7IH1cbiAgLmFydGljbGUtaXRlbS1pbWcgPiBhOmhvdmVyOmFmdGVyLCAuYXJ0aWNsZS1pdGVtLWltZyA+IGEuaG92ZXJlZC1pbWc6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAuYXJ0aWNsZS1pdGVtLWltZyAuc2lnbi1pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogLTIwcHg7IH1cbiAgLmVxdWFsaXplLWNvbHVtbnMgLmFydGljbGUtaXRlbS1pbWcge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAuYmxvY2std3JhcHBlciAuYXJ0aWNsZS1pdGVtLWltZyBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5nYW1lcy1pdGVtIC5hcnRpY2xlLWl0ZW0taW1nIGltZyB7XG4gICAgICB3aWR0aDogYXV0bzsgfSB9XG4gIC5oYXMtb3ZlcmxheSAuYXJ0aWNsZS1pdGVtLWltZyBhOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3ZDcwO1xuICAgIG9wYWNpdHk6IDAuMztcbiAgICB6LWluZGV4OiAxOyB9XG4gIC5oYXMtb3ZlcmxheSAuYXJ0aWNsZS1pdGVtLWltZyBpbWcge1xuICAgIGZpbHRlcjogZ3JheTtcbiAgICAvKiBJRTYtOSAqL1xuICAgIC13ZWJraXQtZmlsdGVyOiBncmF5c2NhbGUoMSk7XG4gICAgLyogR29vZ2xlIENocm9tZSwgU2FmYXJpIDYrICYgT3BlcmEgMTUrICovXG4gICAgZmlsdGVyOiBncmF5c2NhbGUoMSk7XG4gICAgLyogTWljcm9zb2Z0IEVkZ2UgYW5kIEZpcmVmb3ggMzUrICovIH1cblxuLmFydGljbGUtaXRlbS1hdXRob3Ige1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5hcnRpY2xlLWl0ZW0tYXV0aG9yIGltZyB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG1heC13aWR0aDogMjJweDtcbiAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAuYXJ0aWNsZS1pdGVtLWF1dGhvciBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDM0cHg7IH0gfVxuXG4uYXJ0aWNsZS1pdGVtLXRpdGxlIGgyLFxuLmFydGljbGUtaXRlbS10aXRsZSBoMyxcbi5hcnRpY2xlLWl0ZW0tdGl0bGUgaDQsXG4uYXJ0aWNsZS1pdGVtLXRpdGxlIGg1LFxuLmFydGljbGUtaXRlbS10aXRsZSBoNiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIFtkaXI9XCJsdHJcIl0gLmFydGljbGUtaXRlbS10aXRsZSBoMiwgW2Rpcj1cImx0clwiXVxuICAuYXJ0aWNsZS1pdGVtLXRpdGxlIGgzLCBbZGlyPVwibHRyXCJdXG4gIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDQsIFtkaXI9XCJsdHJcIl1cbiAgLmFydGljbGUtaXRlbS10aXRsZSBoNSwgW2Rpcj1cImx0clwiXVxuICAuYXJ0aWNsZS1pdGVtLXRpdGxlIGg2IHtcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG5cbi50aXRsZS1ub3JtYWwgLmFydGljbGUtaXRlbS10aXRsZSBoMixcbi50aXRsZS1ub3JtYWwgLmFydGljbGUtaXRlbS10aXRsZSBoMyxcbi50aXRsZS1ub3JtYWwgLmFydGljbGUtaXRlbS10aXRsZSBoNCxcbi50aXRsZS1ub3JtYWwgLmFydGljbGUtaXRlbS10aXRsZSBoNSxcbi50aXRsZS1ub3JtYWwgLmFydGljbGUtaXRlbS10aXRsZSBoNiB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cblxuLmhlcm8tc2xpZGVyIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDIge1xuICBmb250LXNpemU6IDIuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhlcm8tc2xpZGVyIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDIge1xuICAgICAgZm9udC1zaXplOiAzLjEyNXJlbTsgfSB9XG5cbi5hcnRpY2xlLWl0ZW0tdGl0bGUgaDUge1xuICBsaW5lLWhlaWdodDogMS42OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFydGljbGUtaXRlbS10aXRsZSBoNSB7XG4gICAgICBsaW5lLWhlaWdodDogMS43OyB9IH1cblxuLmFydGljbGUtaXRlbS10aXRsZSBhIHtcbiAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmFydGljbGUtaXRlbS10aXRsZSBhOmhvdmVyLCAuYXJ0aWNsZS1pdGVtLXRpdGxlIGEuaG92ZXJlZCB7XG4gICAgY29sb3I6ICMyQzhBODI7IH1cblxuLmFydGljbGUtaXRlbS10aXRsZS5zdHlsZS12MiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW07IH1cbiAgLmFydGljbGUtaXRlbS10aXRsZS5zdHlsZS12MiBoNiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LWZhbWlseTogXCJFZmZyYVwiO1xuICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtOyB9XG4gIC5hcnRpY2xlLWl0ZW0tdGl0bGUuc3R5bGUtdjIgc3BhbiB7XG4gICAgY29sb3I6ICMyQzhBODI7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdhbWUtaXRlbS1pbmZvIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDIge1xuICAgIGZvbnQtc2l6ZTogMi4wNjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGF0aC1mcm9udHBhZ2UgLmdhbWUtaXRlbS1pbmZvIC5hcnRpY2xlLWl0ZW0tdGl0bGUgaDMge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9IH1cblxuLmFydGljbGUtaXRlbS10aXRsZSBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogI2RjZWJkODtcbiAgcGFkZGluZzogMC41cmVtO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIGNvbG9yOiAjMGExYTBmOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLWNvbHVtbi0yIC5hcnRpY2xlLWl0ZW0tdGl0bGUge1xuICAgIG1pbi1oZWlnaHQ6IDU1cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBoZWlnaHQ6IDMwcHg7IH1cbiAgICBbZGlyPVwibHRyXCJdIC5ncmlkLWNvbHVtbi0yIC5hcnRpY2xlLWl0ZW0tdGl0bGUge1xuICAgICAgbWluLWhlaWdodDogNjBweDsgfSB9XG5cbi5hbmNob3Ige1xuICBmb250LWZhbWlseTogXCJFZmZyYVwiO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07IH1cbiAgLmFuY2hvciBpIHtcbiAgICBmb250LXNpemU6IDlweDtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4uYXJ0aWNsZS1pdGVtLWNhdGVnb3J5IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW46IDA7IH1cbiAgLmFydGljbGUtaXRlbS10aXRsZSAuYXJ0aWNsZS1pdGVtLWNhdGVnb3J5IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjRyZW07IH1cbiAgICAuYXJ0aWNsZS1pdGVtLXRpdGxlIC5hcnRpY2xlLWl0ZW0tY2F0ZWdvcnk6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyQzhBODI7XG4gICAgICB3aWR0aDogMS41cHg7XG4gICAgICBoZWlnaHQ6IDEzcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDZweDtcbiAgICAgIGxlZnQ6IDA7IH1cbiAgICAuYXJ0aWNsZS1pdGVtLXRpdGxlIC5hcnRpY2xlLWl0ZW0tY2F0ZWdvcnkgYSB7XG4gICAgICBjb2xvcjogIzJDOEE4MjsgfVxuICAgICAgLmFydGljbGUtaXRlbS10aXRsZSAuYXJ0aWNsZS1pdGVtLWNhdGVnb3J5IGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5hcnRpY2xlcy1saXN0IC5hcnRpY2xlLWl0ZW0tY2F0ZWdvcnkge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5hcnRpY2xlLWl0ZW0taGlnaGxpZ2h0IHVsIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLmFydGljbGUtaXRlbS1oaWdobGlnaHQgdWwgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICBmb250LWZhbWlseTogXCJFZmZyYVwiO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgY29sb3I6ICM1NTU1NTU7IH1cblxuLmFydGljbGUtaXRlbS1mb290ZXIgLmFydGljbGUtaXRlbS1oaWdobGlnaHQgdWwgbGkge1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4uYXJ0aWNsZXMtbGlzdCAuYXJ0aWNsZS1pdGVtLWhpZ2hsaWdodCB1bCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuLmFydGljbGUtaXRlbS1tZXRhIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBjb2xvcjogIzNiM2IzYjtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xuICBmb250LWZhbWlseTogXCJFZmZyYVwiOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFydGljbGUtaXRlbS1tZXRhIHtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtOyB9IH1cbiAgLmFydGljbGUtaXRlbS1tZXRhIGkge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5hcnRpY2xlLWl0ZW0tbWV0YSBhIHtcbiAgICBjb2xvcjogIzJDOEE4MjsgfVxuICAgIC5hcnRpY2xlLWl0ZW0tbWV0YSBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5hcnRpY2xlLWl0ZW0tbWV0YSA+IHNwYW46bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjOTI5ODk4O1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07IH1cbiAgLmFydGljbGUtaXRlbS1tZXRhIC5tZXRhLWF1dGhvciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGNvbG9yOiAjMkM4QTgyOyB9XG4gIC5hcnRpY2xlLWl0ZW0tbWV0YSAubWV0YS12aWV3cyBzcGFuIHtcbiAgICBjb2xvcjogIzJDOEE4MjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zZWFyY2gtcmVzdWx0cyAuYXJ0aWNsZS1pdGVtLW1ldGEge1xuICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAuZGFyay10aGVtZSAuYXJ0aWNsZS1pdGVtLW1ldGEge1xuICAgIGNvbG9yOiAjYWZhZmFmOyB9XG4gIC5hcnRpY2xlLWl0ZW0tbWV0YS5icmVha2luZyB0aW1lIHtcbiAgICBjb2xvcjogI2NlNDI0MjsgfVxuXG4udmlld3MtY291bnQtcGxhY2Vob2xkZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC52aWV3cy1jb3VudC1wbGFjZWhvbGRlci5zaG93dmlld3Mge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4udmlld3MtY291bnQsXG4udmlkZW8tc3RhbXAge1xuICBmb250LWZhbWlseTogXCJFZmZyYVwiO1xuICBmb250LXNpemU6IDAuNjI1cmVtO1xuICBjb2xvcjogIzg5OGY5MztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnZpZXdzLWNvdW50LFxuICAgIC52aWRlby1zdGFtcCB7XG4gICAgICBsaW5lLWhlaWdodDogMjsgfSB9XG4gIC52aWV3cy1jb3VudC52aWV3cy1jb3VudC1wbGFjZWhvbGRlcixcbiAgLnZpZGVvLXN0YW1wLnZpZXdzLWNvdW50LXBsYWNlaG9sZGVyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnZpZXdzLWNvdW50LnZpZXdzLWNvdW50LXBsYWNlaG9sZGVyLnNob3d2aWV3cyxcbiAgICAudmlkZW8tc3RhbXAudmlld3MtY291bnQtcGxhY2Vob2xkZXIuc2hvd3ZpZXdzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAudmlld3MtY291bnQgaSxcbiAgLnZpZGVvLXN0YW1wIGkge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi52aWV3cy1jb3VudC5hYnMtZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogNXB4O1xuICByaWdodDogMTBweDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHotaW5kZXg6IDE7IH1cblxuLnZpZGVvLXN0YW1wLmFicy1lbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNywgNjAsIDU4LCAwLjU5KTtcbiAgcGFkZGluZzogMnB4IDVweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHotaW5kZXg6IDE7XG4gIGZvbnQtZmFtaWx5OiBcIkF3c2F0IERpZ2l0YWxcIjsgfVxuXG4ubWVkaWEtbGFiZWwge1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyQzhBODI7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLm1lZGlhLWxhYmVsIGkge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjM1cmVtOyB9XG4gIC5tZWRpYS1sYWJlbDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJDOEE4MjsgfVxuICAuYXJ0aWNsZS1pdGVtLW1ldGEgLm1lZGlhLWxhYmVsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cblxuLm1lZGlhLWxhYmVsLmFicy1lbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwLjc1cmVtO1xuICBsZWZ0OiAwLjc1cmVtO1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuZ3JpZC1pdGVtcyAubWVkaWEtbGFiZWwuYWJzLWVsLFxuICAub2JqZWN0LWl0ZW0gLm1lZGlhLWxhYmVsLmFicy1lbCB7XG4gICAgYm90dG9tOiAwLjZyZW07XG4gICAgbGVmdDogMC42cmVtOyB9XG4gIC5vYmplY3QtaXRlbSAubWVkaWEtbGFiZWwuYWJzLWVsIHtcbiAgICBwYWRkaW5nOiAwLjI1cmVtOyB9XG4gICAgLm9iamVjdC1pdGVtIC5tZWRpYS1sYWJlbC5hYnMtZWwgaSB7XG4gICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgLmFydGljbGUtaXRlbS1vdmVyYm94LWlubmVyIC5tZWRpYS1sYWJlbC5hYnMtZWwge1xuICAgIGJvdHRvbTogMS4yNXJlbTtcbiAgICBsZWZ0OiAycmVtOyB9XG5cbi5wbGF5LWljb24sIC5hbGJ1bS1pY29uLFxuLmFicy1vdmVyLWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgdG9wOiAwLjVyZW07XG4gIGxlZnQ6IDAuNXJlbTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHotaW5kZXg6IDE7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBsYXktaWNvbiwgLmFsYnVtLWljb24sXG4gICAgLmFicy1vdmVyLWljb24ge1xuICAgICAgdG9wOiAxcmVtO1xuICAgICAgbGVmdDogMXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMzVweDsgfSB9XG4gIC5wbGF5LWljb24gaW1nLCAuYWxidW0taWNvbiBpbWcsXG4gIC5hYnMtb3Zlci1pY29uIGltZyB7XG4gICAgd2lkdGg6IDMwcHg7IH1cbiAgLmVudHJ5LXJlbGF0ZWQgLnBsYXktaWNvbiwgLmVudHJ5LXJlbGF0ZWQgLmFsYnVtLWljb24sIC5lbnRyeS1yZWxhdGVkXG4gIC5hYnMtb3Zlci1pY29uIHtcbiAgICBmb250LXNpemU6IDIuODEyNXJlbTsgfVxuICAgIC5lbnRyeS1yZWxhdGVkIC5wbGF5LWljb24gaW1nLCAuZW50cnktcmVsYXRlZCAuYWxidW0taWNvbiBpbWcsIC5lbnRyeS1yZWxhdGVkXG4gICAgLmFicy1vdmVyLWljb24gaW1nIHtcbiAgICAgIHdpZHRoOiA1NXB4OyB9XG4gIC5wbGF5LWljb24gaS5pY29uLXBsYXktYXJyb3csIC5hbGJ1bS1pY29uIGkuaWNvbi1wbGF5LWFycm93LFxuICAuYWJzLW92ZXItaWNvbiBpLmljb24tcGxheS1hcnJvdyB7XG4gICAgZm9udC1zaXplOiA4cmVtO1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7IH1cbiAgICAuYXJ0aWNsZXMtbGlzdC5oYXMtc2VwYXJhdG9yIC5wbGF5LWljb24gaS5pY29uLXBsYXktYXJyb3csIC5hcnRpY2xlcy1saXN0Lmhhcy1zZXBhcmF0b3IgLmFsYnVtLWljb24gaS5pY29uLXBsYXktYXJyb3csIC5hcnRpY2xlcy1saXN0Lmhhcy1zZXBhcmF0b3JcbiAgICAuYWJzLW92ZXItaWNvbiBpLmljb24tcGxheS1hcnJvdyB7XG4gICAgICBmb250LXNpemU6IDMuNXJlbTsgfVxuICAgIC5ncmlkLWl0ZW1zIC5wbGF5LWljb24gaS5pY29uLXBsYXktYXJyb3csIC5ncmlkLWl0ZW1zIC5hbGJ1bS1pY29uIGkuaWNvbi1wbGF5LWFycm93LCAuZ3JpZC1pdGVtc1xuICAgIC5hYnMtb3Zlci1pY29uIGkuaWNvbi1wbGF5LWFycm93IHtcbiAgICAgIGZvbnQtc2l6ZTogMy41cmVtOyB9XG4gIC5zaWRlYmFyLXdyYXAgLnBsYXktaWNvbiwgLnNpZGViYXItd3JhcCAuYWxidW0taWNvbiwgLnNpZGViYXItd3JhcFxuICAuYWJzLW92ZXItaWNvbiB7XG4gICAgdG9wOiAwLjVyZW07XG4gICAgbGVmdDogMC41cmVtOyB9XG4gICAgLnNpZGViYXItd3JhcCAucGxheS1pY29uIGltZywgLnNpZGViYXItd3JhcCAuYWxidW0taWNvbiBpbWcsIC5zaWRlYmFyLXdyYXBcbiAgICAuYWJzLW92ZXItaWNvbiBpbWcge1xuICAgICAgd2lkdGg6IDMwcHg7IH1cbiAgLmdyaWQtaXRlbXMgLnBsYXktaWNvbiwgLmdyaWQtaXRlbXMgLmFsYnVtLWljb24sIC5ncmlkLWl0ZW1zXG4gIC5hYnMtb3Zlci1pY29uIHtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICB0b3A6IGF1dG87XG4gICAgbGVmdDogMC43NXJlbTtcbiAgICBib3R0b206IDAuNzVyZW07XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lOyB9XG4gIC52aWRlby1saXN0IC5wbGF5LWljb24sIC52aWRlby1saXN0IC5hbGJ1bS1pY29uLCAudmlkZW8tbGlzdFxuICAuYWJzLW92ZXItaWNvbiB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIHRvcDogMC41cmVtO1xuICAgIGxlZnQ6IDAuNXJlbTsgfVxuXG4ubWVkaWEtYXJ0aWNsZS1saXN0IC5hbGJ1bS1pY29uLFxuLnN0YXRpYy1jb2x1bW4td3JhcCAuYWxidW0taWNvbiB7XG4gIHRvcDogN3B4O1xuICBsZWZ0OiA3cHg7IH1cbiAgLm1lZGlhLWFydGljbGUtbGlzdCAuYWxidW0taWNvbiBpbWcsXG4gIC5zdGF0aWMtY29sdW1uLXdyYXAgLmFsYnVtLWljb24gaW1nIHtcbiAgICB3aWR0aDogMThweDsgfVxuXG4ubGFiZWwtbGl2ZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYmFja2dyb3VuZDogIzJjOGE4MjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJjOGE4MjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJjOGE4MjtcbiAgY29sb3I6ICNmZmZmZmY7IH1cblxuLmxhYmVsLFxuLmxhYmVsLWxpdmUge1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5sYWJlbCBhLFxuICAubGFiZWwtbGl2ZSBhIHtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAubGFiZWwgaSxcbiAgLmxhYmVsLWxpdmUgaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDNweDsgfVxuICAubGFiZWwuYWJzLWVsLFxuICAubGFiZWwtbGl2ZS5hYnMtZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyQzhBODI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAxO1xuICAgIHBhZGRpbmc6IDdweCA3cHggNXB4OyB9XG4gIC5sYWJlbC5sYWJlbC1jZW50ZXIsXG4gIC5sYWJlbC1saXZlLmxhYmVsLWNlbnRlciB7XG4gICAgcmlnaHQ6IGluaXRpYWw7XG4gICAgbGVmdDogNTAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gICAgW2Rpcj1cImx0clwiXSAubGFiZWwubGFiZWwtY2VudGVyLCBbZGlyPVwibHRyXCJdXG4gICAgLmxhYmVsLWxpdmUubGFiZWwtY2VudGVyIHtcbiAgICAgIHJpZ2h0OiA1MCU7XG4gICAgICBsZWZ0OiBpbml0aWFsOyB9XG4gIC5sYWJlbC5sYWJlbC1ib3R0b20sXG4gIC5sYWJlbC1saXZlLmxhYmVsLWJvdHRvbSB7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiBhdXRvOyB9XG4gIC5sYWJlbC5saXZlLFxuICAubGFiZWwtbGl2ZS5saXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQkQzQzJGO1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmxhYmVsLmxpdmUgaTpiZWZvcmUsXG4gICAgLmxhYmVsLWxpdmUubGl2ZSBpOmJlZm9yZSB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAubGFiZWwuYnJlYWtpbmctbmV3cyxcbiAgLmxhYmVsLWxpdmUuYnJlYWtpbmctbmV3cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0JEM0MyRjsgfVxuICAubGFiZWwuYW5hbHlzaXMsXG4gIC5sYWJlbC1saXZlLmFuYWx5c2lzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmM4YTgyOyB9XG4gIC5sYWJlbC5zcGVjaWFsLFxuICAubGFiZWwtbGl2ZS5zcGVjaWFsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGU0NTQwOyB9XG4gIC5sYWJlbC5saXZlY292ZXJhZ2UsXG4gIC5sYWJlbC1saXZlLmxpdmVjb3ZlcmFnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0JEM0MyRjsgfVxuICAubGFiZWwuYnJlYWtpbmcsXG4gIC5sYWJlbC1saXZlLmJyZWFraW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQkQzQzJGOyB9XG4gIC5hcnRpY2xlLWl0ZW0tdGl0bGUgLmxhYmVsLFxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24gaDMgLmxhYmVsLFxuICAuZW50cnktaGlnaGxpZ2h0IGxpIC5sYWJlbCwgLmFydGljbGUtaXRlbS10aXRsZVxuICAubGFiZWwtbGl2ZSxcbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uIGgzXG4gIC5sYWJlbC1saXZlLFxuICAuZW50cnktaGlnaGxpZ2h0IGxpXG4gIC5sYWJlbC1saXZlIHtcbiAgICBtYXJnaW4tbGVmdDogMC40cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgcGFkZGluZzogNnB4IDVweCA1cHg7IH1cbiAgICAuYXJ0aWNsZS1pdGVtLXRpdGxlIC5sYWJlbCBpLFxuICAgIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiBoMyAubGFiZWwgaSxcbiAgICAuZW50cnktaGlnaGxpZ2h0IGxpIC5sYWJlbCBpLCAuYXJ0aWNsZS1pdGVtLXRpdGxlXG4gICAgLmxhYmVsLWxpdmUgaSxcbiAgICAubWVkaWEtb2JqZWN0LXNlY3Rpb24gaDNcbiAgICAubGFiZWwtbGl2ZSBpLFxuICAgIC5lbnRyeS1oaWdobGlnaHQgbGlcbiAgICAubGFiZWwtbGl2ZSBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMTFweDsgfVxuICAgIC5hcnRpY2xlLWl0ZW0tdGl0bGUgLmxhYmVsIC5sb3R0aWUtaWNvLFxuICAgIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiBoMyAubGFiZWwgLmxvdHRpZS1pY28sXG4gICAgLmVudHJ5LWhpZ2hsaWdodCBsaSAubGFiZWwgLmxvdHRpZS1pY28sIC5hcnRpY2xlLWl0ZW0tdGl0bGVcbiAgICAubGFiZWwtbGl2ZSAubG90dGllLWljbyxcbiAgICAubWVkaWEtb2JqZWN0LXNlY3Rpb24gaDNcbiAgICAubGFiZWwtbGl2ZSAubG90dGllLWljbyxcbiAgICAuZW50cnktaGlnaGxpZ2h0IGxpXG4gICAgLmxhYmVsLWxpdmUgLmxvdHRpZS1pY28ge1xuICAgICAgd2lkdGg6IDE2cHg7IH1cbiAgLm1lZGlhLW9iamVjdC1pbWcgLmxhYmVsLCAubWVkaWEtb2JqZWN0LWltZ1xuICAubGFiZWwtbGl2ZSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHBhZGRpbmc6IDZweCA1cHggNXB4OyB9XG4gICAgLm1lZGlhLW9iamVjdC1pbWcgLmxhYmVsIGksIC5tZWRpYS1vYmplY3QtaW1nXG4gICAgLmxhYmVsLWxpdmUgaSB7XG4gICAgICBmb250LXNpemU6IDExcHg7IH1cbiAgICAubWVkaWEtb2JqZWN0LWltZyAubGFiZWwgLmxvdHRpZS1pY28sIC5tZWRpYS1vYmplY3QtaW1nXG4gICAgLmxhYmVsLWxpdmUgLmxvdHRpZS1pY28ge1xuICAgICAgd2lkdGg6IDE2cHg7IH1cblxuLmxvdHRpZS1pY28ge1xuICBoZWlnaHQ6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogNXB4OyB9XG4gIC5sYWJlbC1saXZlIC5sb3R0aWUtaWNvLFxuICAubGFiZWwgLmxvdHRpZS1pY28ge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5saXZlLXRpY2tlci10aXRsZSAubG90dGllLWljbyB7XG4gICAgd2lkdGg6IDI1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5jYWxsb3V0LmFsZXJ0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjMDAwMDsgfVxuXG4uYnJlYWtpbmctbmV3cy1hcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTsgfVxuICAuYnJlYWtpbmctbmV3cy1hcmVhIGg2LFxuICAuYnJlYWtpbmctbmV3cy1hcmVhIC5sYWJlbCB7XG4gICAgZm9udC1zaXplOiAxOHB4OyB9XG4gIC5icmVha2luZy1uZXdzLWFyZWEgLmxhYmVsLmxpdmUge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMjBkZWcsICNjYzAwMDAgMjUlLCB3aGl0ZSAyNSUpO1xuICAgIGNvbG9yOiAjY2MwMDAwO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMnJlbTsgfVxuICAgIFtkaXI9XCJsdHJcIl0gLmJyZWFraW5nLW5ld3MtYXJlYSAubGFiZWwubGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjM4ZGVnLCAjY2MwMDAwIDI1JSwgd2hpdGUgMjUlKTsgfVxuICAuYnJlYWtpbmctbmV3cy1hcmVhIGEge1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5icmVha2luZy1uZXdzLWFyZWEgc3Bhbjpub3QoLmxhYmVsKSB7XG4gICAgcGFkZGluZzogMCAxLjNyZW07IH1cbiAgLmJyZWFraW5nLW5ld3MtYXJlYSBzcGFuOm5vdCgubGFiZWwpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5icmVha2luZy1uZXdzLWFyZWEgc3Bhbjpub3QoLmxhYmVsKTpub3QoOmxhc3QtY2hpbGQpOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiL1wiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDsgfVxuICAuYnJlYWtpbmctbmV3cy1hcmVhIC5jbG9zZS1idXR0b24ge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IGluaGVyaXQ7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmJyZWFraW5nLWhlcm8gaDEge1xuICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9IH1cblxuLmJyZWFraW5nLWhlcm8gLmhlcm8taXRlbSAuYXJ0aWNsZS1pdGVtLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5icmVha2luZy1oZXJvIC5oZXJvLWl0ZW0gLmFydGljbGUtaXRlbS10aXRsZSBoMiB7XG4gICAgICBmb250LXNpemU6IDMzcHg7IH0gfVxuXG4uYnJlYWtpbmctaGVybyAubGFiZWwuYWJzLWVsIHtcbiAgZm9udC1zaXplOiAxM3B4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5lbnRyeS1hcnRpY2xlLWlubmVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xLjg3NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTEuODc1cmVtOyB9XG4gICAgLmVudHJ5LWFydGljbGUtaW5uZXIgPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuXG4uZW50cnktbWVkaWEge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuZW50cnktbWVkaWEge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfSB9XG4gIC5lbnRyeS1tZWRpYSAuc2xpY2stYXJyb3cge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44Mik7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICBoZWlnaHQ6IDQycHg7XG4gICAgd2lkdGg6IDQycHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmVudHJ5LW1lZGlhIC5zbGljay1hcnJvdyB7XG4gICAgICAgIGhlaWdodDogNTlweDtcbiAgICAgICAgd2lkdGg6IDU5cHg7IH0gfVxuICAgIC5lbnRyeS1tZWRpYSAuc2xpY2stYXJyb3c6YmVmb3JlIHtcbiAgICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5lbnRyeS1tZWRpYSAuc2xpY2stYXJyb3cuc2xpY2stbmV4dCB7XG4gICAgICBsZWZ0OiAwLjVyZW07IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5lbnRyeS1tZWRpYSAuc2xpY2stYXJyb3cuc2xpY2stbmV4dCB7XG4gICAgICAgICAgbGVmdDogMS41cmVtOyB9IH1cbiAgICAuZW50cnktbWVkaWEgLnNsaWNrLWFycm93LnNsaWNrLXByZXYge1xuICAgICAgcmlnaHQ6IDAuNXJlbTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmVudHJ5LW1lZGlhIC5zbGljay1hcnJvdy5zbGljay1wcmV2IHtcbiAgICAgICAgICByaWdodDogMS41cmVtOyB9IH1cbiAgICAuZW50cnktbWVkaWEgLnNsaWNrLWFycm93OmhvdmVyLnNsaWNrLXByZXY6YmVmb3JlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgICAgY29sb3I6ICMyQzhBODI7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZSAwczsgfVxuICAgIC5lbnRyeS1tZWRpYSAuc2xpY2stYXJyb3c6aG92ZXIuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgY29sb3I6ICMyQzhBODI7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZSAwczsgfVxuXG4uZW50cnktdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC5lbnRyeS10aXRsZSBoMSB7XG4gICAgZm9udC1zaXplOiAyLjM3NXJlbTtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmVudHJ5LXRpdGxlIGgyIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBtYXJnaW46IDAuOHJlbSAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5lbnRyeS10aXRsZSBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICBtYXJnaW46IDAuOHJlbSAwIDFyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5lbnRyeS10aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgICAuZW50cnktdGl0bGUgaDEge1xuICAgICAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zOyB9IH1cbiAgLmVudHJ5LXRpdGxlICsgLmVudHJ5LWZ1bGwtbWV0YSB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTsgfVxuXG4uZW50cnktY2F0ZWdvcnkge1xuICBmb250LXNpemU6IDFyZW07XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmVudHJ5LWNhdGVnb3J5IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogZmxleDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmVudHJ5LWNhdGVnb3J5IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7IH0gfVxuICAuZW50cnktY2F0ZWdvcnkgYSB7XG4gICAgY29sb3I6ICM0ZDRkNGQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICAgIGZsb2F0OiByaWdodDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5lbnRyeS1jYXRlZ29yeSBhIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07IH0gfVxuICAgIC5lbnRyeS1jYXRlZ29yeSBhOmhvdmVyLCAuZW50cnktY2F0ZWdvcnkgYS5hY3RpdmUge1xuICAgICAgY29sb3I6ICMyQzhBODI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmVudHJ5LWNhdGVnb3J5IGE6bm90KC5zdWItY2F0ZWdvcnkpIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI7IH0gfVxuICAgIC5lbnRyeS1jYXRlZ29yeSBhLnN1Yi1jYXRlZ29yeSB7XG4gICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgY29sb3I6ICMyNTNDM0E7XG4gICAgICBmb250LWZhbWlseTogXCJBd3NhdCBEaWdpdGFsXCI7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAuZW50cnktY2F0ZWdvcnkgYS5zdWItY2F0ZWdvcnkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAycmVtOyB9IH1cbiAgICAgIC5lbnRyeS1jYXRlZ29yeSBhLnN1Yi1jYXRlZ29yeTpmaXJzdC1jaGlsZDphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTAyXCI7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICAgICAgZm9udC1zaXplOiA5cHg7XG4gICAgICAgIGNvbG9yOiAjMkM4QTgyO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG4gICAgLmVudHJ5LWNhdGVnb3J5IGE6Zmlyc3QtY2hpbGQge1xuICAgICAgZm9udC1zaXplOiAxOHB4OyB9XG5cbi5wYWdlLWluZGljYXRvciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAucGFnZS1pbmRpY2F0b3Ige1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgIG1hcmdpbi10b3A6IDE1cHg7IH0gfVxuXG4ucGFnZS1jYXRlZ29yeSB7XG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnBhZ2UtY2F0ZWdvcnkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDJyZW07IH0gfVxuICAucGFnZS1jYXRlZ29yeSBhLFxuICAucGFnZS1jYXRlZ29yeSBoMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbG9yOiAjMkM4QTgyO1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmVudHJ5LWhpZ2hsaWdodCB7XG4gIGNvbG9yOiAjNTU1NTU1OyB9XG4gIC5lbnRyeS1oaWdobGlnaHQgdWwge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIG1hcmdpbi10b3A6IDFyZW07IH1cbiAgICAuZW50cnktaGlnaGxpZ2h0IHVsLnJlZC1idWxsZXRzIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIC5lbnRyeS1oaWdobGlnaHQgdWwgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTsgfVxuICAgICAgLm1haW4taXRlbSAuZW50cnktaGlnaGxpZ2h0IHVsIGxpIHRpbWUge1xuICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgIGNvbG9yOiAjM2IzYjNiO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmVudHJ5LWhpZ2hsaWdodCB1bCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9IH1cbiAgLmVudHJ5LWhpZ2hsaWdodC5icmVha2luZyBsaSBhIHtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuZW50cnktaGlnaGxpZ2h0LmJyZWFraW5nIHRpbWUge1xuICAgIGNvbG9yOiAjY2U0MjQyO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5lbnRyeS1oaWdobGlnaHQuYnJlYWtpbmcgdGltZTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGU5MTRcIjtcbiAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgZm9udC1zaXplOiA0cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IDNweDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTNweDtcbiAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjsgfVxuICAgICAgW2Rpcj1cImx0clwiXSAuZW50cnktaGlnaGxpZ2h0LmJyZWFraW5nIHRpbWU6YmVmb3JlIHtcbiAgICAgICAgdG9wOiA1cHg7IH1cbiAgLmJyZWFraW5nLWhlcm8gLmVudHJ5LWhpZ2hsaWdodCB1bCBsaTo6bWFya2VyIHtcbiAgICBmb250LXNpemU6IDIxcHg7IH1cblxuLmdyaWQtaGlnaGxpZ2h0cyB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRDFENUQ1OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtaGlnaGxpZ2h0cyB1bCB7XG4gICAgICB3aWR0aDogNTAlOyB9IH1cbiAgLmdyaWQtaGlnaGxpZ2h0cyB1bDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjRDFENUQ1OyB9XG5cbi5lbnRyeS1jb250ZW50IHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7XG4gIGNvbG9yOiAjMzQzNDM0O1xuICBsaW5lLWhlaWdodDogMS42OyB9XG4gIFtkaXI9XCJydGxcIl0gLmVudHJ5LWNvbnRlbnQge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICAuZW50cnktY29udGVudCA+ICoge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgIC5lbnRyeS1jb250ZW50ID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmVudHJ5LWNvbnRlbnQgLnR3aXR0ZXItdHdlZXQge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cbiAgLmVudHJ5LWNvbnRlbnQgLnBhcmFncmFwaC0tdHlwZS0tZGVzY3JpcHRpb24gZGl2W2RhdGEtb2VtYmVkLXVybCo9XCJ0d2l0dGVyLmNvbVwiXSB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIC5lbnRyeS1jb250ZW50IHAge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XG4gICAgLmVudHJ5LWNvbnRlbnQgcCBpbWcge1xuICAgICAgd2lkdGg6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIGRpc3BsYXk6IGluaGVyaXQ7IH1cbiAgICAuZW50cnktY29udGVudCBwID4gaWZyYW1lIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5lbnRyeS1jb250ZW50IGRpdltjb250ZW50ZWRpdGFibGU9XCJmYWxzZVwiXSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgLmVudHJ5LWNvbnRlbnQgZmlndXJlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xuICAgIHdpZHRoOiBmaXQtY29udGVudDsgfVxuICAuZW50cnktY29udGVudCBiciB7XG4gICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlwiOyB9XG4gIC5lbnRyeS1jb250ZW50IHAgYnIge1xuICAgIG1hcmdpbjogMCAwIDFyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjsgfVxuICAuZW50cnktY29udGVudCBhIHtcbiAgICBjb2xvcjogIzJDOEE4MjsgfVxuICAgIC5lbnRyeS1jb250ZW50IGE6aG92ZXIge1xuICAgICAgY29sb3I6ICMxNjQ1NDE7IH1cbiAgLmVudHJ5LWNvbnRlbnQgYmxvY2txdW90ZTpub3QoLnRpa3Rvay1lbWJlZCkge1xuICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgY29sb3I6ICMyNTNDM0E7XG4gICAgYmFja2dyb3VuZDogI2VjZjRmMztcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIHBhZGRpbmc6IDJyZW0gM3JlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1yaWdodDogMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZW50cnktY29udGVudCBibG9ja3F1b3RlOm5vdCgudGlrdG9rLWVtYmVkKSB7XG4gICAgICAgIHBhZGRpbmc6IDNyZW0gNXJlbTsgfSB9XG4gICAgLmVudHJ5LWNvbnRlbnQgYmxvY2txdW90ZTpub3QoLnRpa3Rvay1lbWJlZCk6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMHJlbTtcbiAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ljb24vbG93ZXItcXVvdGUucG5nXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuZW50cnktY29udGVudCBibG9ja3F1b3RlOm5vdCgudGlrdG9rLWVtYmVkKTpiZWZvcmUge1xuICAgICAgICAgIGJvdHRvbTogMXJlbTtcbiAgICAgICAgICBsZWZ0OiA0MHB4O1xuICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgIGhlaWdodDogMzVweDsgfSB9XG4gICAgLmVudHJ5LWNvbnRlbnQgYmxvY2txdW90ZTpub3QoLnRpa3Rvay1lbWJlZCk6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwcmVtO1xuICAgICAgcmlnaHQ6IDI1cHg7XG4gICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ljb24vdXBwZXItcXVvdGUucG5nXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuZW50cnktY29udGVudCBibG9ja3F1b3RlOm5vdCgudGlrdG9rLWVtYmVkKTphZnRlciB7XG4gICAgICAgICAgdG9wOiAxcmVtO1xuICAgICAgICAgIHJpZ2h0OiA0NXB4O1xuICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgIGhlaWdodDogMzVweDsgfSB9XG4gICAgLmVudHJ5LWNvbnRlbnQgYmxvY2txdW90ZTpub3QoLnRpa3Rvay1lbWJlZCkgcCB7XG4gICAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgIGNvbG9yOiAjMjUzQzNBO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5lbnRyeS1jb250ZW50IGJsb2NrcXVvdGU6bm90KC50aWt0b2stZW1iZWQpIHAge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS42ODc1cmVtOyB9IH1cbiAgICAgIC5lbnRyeS1jb250ZW50IGJsb2NrcXVvdGU6bm90KC50aWt0b2stZW1iZWQpIHA6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIGNvbG9yOiAjMkM4QTgyO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiRWZmcmFcIjsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIC5lbnRyeS1jb250ZW50IGJsb2NrcXVvdGU6bm90KC50aWt0b2stZW1iZWQpIHA6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTsgfSB9XG4gIC5lbnRyeS1jb250ZW50IC50aWt0b2stZW1iZWQge1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5lbnRyeS1jb250ZW50IGlmcmFtZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDsgfVxuICAuZW50cnktY29udGVudCAudHdpdHRlci10d2VldCxcbiAgLmVudHJ5LWNvbnRlbnQgLmluc3RhZ3JhbS1tZWRpYSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDsgfVxuICAubXVsdGltZWRpYS1lbnRyaWVzIC5lbnRyeS1jb250ZW50IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5lbnRyeS1jb250ZW50LnN0eWxlLXYxIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07IH0gfVxuICAuZW50cnktY29udGVudCBwICsgaDMsXG4gIC5lbnRyeS1jb250ZW50IHAgKyBoMiB7XG4gICAgZm9udC1mYW1pbHk6IFwiRWZmcmFcIjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgbWFyZ2luLXRvcDogMzVweDsgfVxuXG4uZW50cnktYWRkcmVzcyB7XG4gIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG4gIC5lbnRyeS1hZGRyZXNzIGgzIHtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAuZW50cnktYWRkcmVzcyB1bCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgLmVudHJ5LWFkZHJlc3MgdWwgbGkge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZW50cnktc3BvdGxpZ2h0IHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjRDFENUQ1O1xuICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07IH1cbiAgICAuc3R5bGUtdjEgLmVudHJ5LXNwb3RsaWdodCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0ycmVtOyB9IH1cblxuLmVudHJ5LXNwb3RsaWdodCBoMiB7XG4gIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5lbnRyeS1zcG90bGlnaHQgaDIge1xuICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cblxuLmVudHJ5LXN1YnNjcmliZSB7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmVudHJ5LXN1YnNjcmliZSB7XG4gICAgICB3aWR0aDogNDAwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuZW50cnktc3Vic2NyaWJlIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9IH1cblxuLmVudHJ5LXJlbGF0ZWQgLnNlY3Rpb24tdGl0bGUgaDQge1xuICBmb250LXdlaWdodDogbm9ybWFsOyB9XG5cbi5lbnRyeS10YWdzIHtcbiAgbWFyZ2luOiAwIDAgMi41cmVtO1xuICBwYWRkaW5nOiAxcmVtIDAgMC41cmVtO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgxNjEsIDE2MSwgMTQ4LCAwLjQpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxNjEsIDE2MSwgMTQ4LCAwLjQpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuICAuZW50cnktdGFncyBzcGFuIHtcbiAgICBjb2xvcjogIzJDOEE4MjtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBsaW5lLWhlaWdodDogMjlweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtOyB9XG4gIC5lbnRyeS10YWdzIC5idXR0b24ge1xuICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgIG1hcmdpbjogMCAwIDAuNXJlbSAwLjVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogaW5pdGlhbDtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5lbnRyeS10YWdzIC5idXR0b24ge1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW07IH0gfVxuICAgIC5lbnRyeS10YWdzIC5idXR0b24uZ3JheS5ob2xsb3c6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VjZjRmMztcbiAgICAgIGJvcmRlci1jb2xvcjogI2VjZjRmMzsgfVxuICAuZW50cnktYXJ0aWNsZS1pbm5lciAuZW50cnktdGFncyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uZW50cnktc2hhcmVzLXdyYXBwZXIge1xuICBtYXJnaW46IDAgMCAxcmVtOyB9XG4gIC5lbnRyeS1zaGFyZXMtd3JhcHBlciBhIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07IH1cbiAgICAuZW50cnktc2hhcmVzLXdyYXBwZXIgYTpob3ZlciB7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5lbnRyeS1zaGFyZXMtd3JhcHBlciBhIGkge1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gIC5lbnRyeS1tZXRhLWZvb3RlciAuZW50cnktc2hhcmVzLXdyYXBwZXIgYSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMC43NXJlbTtcbiAgICBjb2xvcjogIzg5OGY5MzsgfVxuICAgIC5lbnRyeS1tZXRhLWZvb3RlciAuZW50cnktc2hhcmVzLXdyYXBwZXIgYTpob3ZlciB7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuXG4uZW50cnktbWV0YSAuZW50cnktbWV0YS1mb290ZXIge1xuICBwYWRkaW5nOiAwLjc1cmVtIDA7IH1cblxuLmVudHJ5LXNoYXJlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIC5lbnRyeS1zaGFyZSBhIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07IH1cbiAgICAuZW50cnktc2hhcmUgYTpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5lbnRyeS1zaGFyZSBhIGkge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZW50cnktc2hhcmUgYSB7XG4gICAgICBtYXJnaW4tbGVmdDogMS4yNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5lbnRyeS1hc2lkZS1pbmZvIHtcbiAgICB3aWR0aDogMzEwcHg7IH1cbiAgICAuZW50cnktYXNpZGUtaW5mby5jYXJ0b29uLWF1dGhvciB7XG4gICAgICBtYXJnaW4tdG9wOiA3MHB4OyB9XG4gICAgICBbZGlyPVwibHRyXCJdIC5lbnRyeS1hc2lkZS1pbmZvLmNhcnRvb24tYXV0aG9yIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNjVweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuZW50cnktYXNpZGUtaW5mbyB7XG4gICAgd2lkdGg6IDIwMHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmVudHJ5LWZ1bGwtbWV0YSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfSB9XG5cbi5lbnRyeS1hdXRob3Ige1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC5lbnRyeS1hdXRob3IgaW1nIHtcbiAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAuZW50cnktYXV0aG9yIGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtOyB9XG4gICAgLmVudHJ5LWF1dGhvciBhOm5vdCg6bGFzdC1jaGlsZCk6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIsXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwOyB9XG4gIC5lbnRyeS1hdXRob3IgdWwge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07IH1cbiAgICAuZW50cnktYXV0aG9yIHVsIGxpIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogMC41cmVtOyB9XG5cbi5lbnRyeS1hdXRob3ItaW1nIHtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAwMDAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5lbnRyeS1sYWJlbCB7XG4gICAgbWF4LXdpZHRoOiA2MDBweDsgfSB9XG5cbi5lbnRyeS1sYWJlbCB1bCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5lbnRyeS1sYWJlbCB1bCB7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICAuZW50cnktbGFiZWwgdWwgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VhZjNmMjtcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7IH1cbiAgICAuZW50cnktbGFiZWwgdWwgbGkgYSB7XG4gICAgICBjb2xvcjogIzJDOEE4MjsgfVxuICAgICAgLmVudHJ5LWxhYmVsIHVsIGxpIGEgc3Bhbjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5lbnRyeS1hc2lkZS1tZXRhIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5lbnRyeS1mdWxsLW1ldGEgLmVudHJ5LWFzaWRlLW1ldGEge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRDFENUQ1O1xuICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG4uZW50cnktZGF0ZS1pdGVtcyAuZW50cnktZGF0ZTpub3QoOm9ubHktY2hpbGQpOmZpcnN0LWNoaWxkIHtcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmVudHJ5LWRhdGUtaXRlbXMge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuXG4uZW50cnktZGF0ZSB7XG4gIGNvbG9yOiAjNzE3MTcxO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGNvbG9yOiAjOTI5ODk4O1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmVudHJ5LWRhdGUge1xuICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07IH0gfVxuICAuZW50cnktZGF0ZSBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuZW50cnktYXNpZGUtbWV0YSAuZW50cnktZGF0ZSB7XG4gICAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gICAgZm9udC1mYW1pbHk6IFwiRWZmcmFcIjtcbiAgICBwYWRkaW5nLXRvcDogMC4ycmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5lbnRyeS1hc2lkZS1tZXRhIC5lbnRyeS1kYXRlIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07IH0gfVxuICAuZW50cnktbWV0YSAuZW50cnktZGF0ZSB7XG4gICAgcGFkZGluZzogMCAwIDAuMjVyZW07XG4gICAgY29sb3I6ICM5OTk5OTk7IH1cbiAgICAuZW50cnktbWV0YSAuZW50cnktZGF0ZSBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICAuZW50cnktZnVsbC1tZXRhIC5lbnRyeS1kYXRlIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLmVudHJ5LWFzaWRlLXNoYXJlcyAuZW50cnktc2hhcmUtcm93Om5vdCguZW50cnktYm9va21hcmspIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH1cblxuLmVudHJ5LWFzaWRlLXNoYXJlcyAuZW50cnktYm9va21hcmsge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLmVudHJ5LWFzaWRlLXNoYXJlcyAuZW50cnktYm9va21hcmsuYWN0aXZlIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkOWVkZWI7IH1cbiAgICAuZW50cnktYXNpZGUtc2hhcmVzIC5lbnRyeS1ib29rbWFyay5hY3RpdmUgYSBpOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIu6kvVwiO1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLm11bHRpbWVkaWEtZW50cmllcyAuZW50cnktYXNpZGUtc2hhcmVzIHtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbi5lbnRyeS1zaGFyZXMgLmVudHJ5LWJvb2ttYXJrIHtcbiAgbWFyZ2luLXJpZ2h0OiAycmVtOyB9XG5cbi5oZXJvLXNsaWRlciAuc2xpY2stZG90cyBsaSB7XG4gIG1hcmdpbjogMCA4cHg7IH1cblxuLnNoYXJlLWljb25zLXdyYXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAuc2hhcmUtaWNvbnMtd3JhcCAuc29jaWFsLWxibCB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuZW50cnktc2hhcmVzLXdyYXBwZXIgLnNoYXJlLWljb25zLXdyYXAge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNEMUQ1RDU7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC5lbnRyeS1hc2lkZS1pbmZvIC5zaGFyZS1pY29ucy13cmFwIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAubXVsdGltZWRpYS1lbnRyaWVzIC5zaGFyZS1pY29ucy13cmFwIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzJDOEE4MjtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgcGFkZGluZy10b3A6IDEuNXJlbTsgfVxuICAudmlkZW8tYXNpZGUtbWV0YSAuc2hhcmUtaWNvbnMtd3JhcCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gICAgLnZpZGVvLWFzaWRlLW1ldGEgLnNoYXJlLWljb25zLXdyYXAgLmVudHJ5LXNoYXJlLXJvdyBhIHtcbiAgICAgIGNvbG9yOiAjMkM4QTgyOyB9XG4gIC5zaGFyZS1pY29ucy13cmFwLmFkZHRoaXNfdG9vbGJveCAuYXRjbGVhciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4ubXVsdGltZWRpYS1lbnRyaWVzIHtcbiAgcGFkZGluZzogMnJlbSAxcmVtIDFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubXVsdGltZWRpYS1lbnRyaWVzIHtcbiAgICAgIHBhZGRpbmc6IDNyZW07IH0gfVxuXG4uZW50cnktbWV0YSAuYnRuLXNoYXJlLXdyYXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5lbnRyeS1tZXRhIC5idG4tc2hhcmUtd3JhcCB7XG4gICAgICBkaXNwbGF5OiBpbmhlcml0OyB9XG4gICAgICAuZW50cnktbWV0YSAuYnRuLXNoYXJlLXdyYXAgLmJ0bi1zaGFyZS1zb2NpYWwge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5lbnRyeS1hc2lkZS1tZXRhIC5idG4tc2hhcmUtd3JhcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9IH1cblxuLmVudHJ5LXNoYXJlLXJvdyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuZW50cnktc2hhcmUtcm93Om5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAuZW50cnktc2hhcmUtcm93IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfSB9XG4gIC5lbnRyeS1zaGFyZS1yb3cgYSB7XG4gICAgY29sb3I6ICMyQzhBODI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjdmNjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgaGVpZ2h0OiAzOHB4O1xuICAgIHdpZHRoOiAzOHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC5lbnRyeS1zaGFyZS1yb3cgYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDllZGViOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5lbnRyeS1zaGFyZS1yb3cgYSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gICAgLmRhcmstdGhlbWUgLmVudHJ5LXNoYXJlLXJvdyBhIHtcbiAgICAgIGNvbG9yOiAjMkM4QTgyOyB9XG4gICAgLnBvZGNhc3Qtc2NyZWVuIC5lbnRyeS1zaGFyZS1yb3cgYSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gICAgICAucG9kY2FzdC1zY3JlZW4gLmVudHJ5LXNoYXJlLXJvdyBhOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Q5ZWRlYjsgfVxuICAuZW50cnktc2hhcmUtcm93IC5pY29uLXNoYXJlIHtcbiAgICBjb2xvcjogIzJDOEE4MjsgfVxuXG4uZW50cnktY29udGVudCBmaWdjYXB0aW9uIHtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgcGFkZGluZzogMC41cmVtO1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbWFyZ2luLXRvcDogMDsgfVxuXG4uaW1nLWNhcHRpb24ge1xuICBmb250LXNpemU6IDAuNjg3NXJlbTtcbiAgY29sb3I6ICM3MTcxNzE7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgbWluLWhlaWdodDogMC4xcmVtOyB9XG4gIC5lbnRyeS1tZWRpYSAuaW1nLWNhcHRpb24sIC5pbWctY2FwdGlvbi5zdHlsZWQge1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgcGFkZGluZzogMC41cmVtO1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLmltZy1jYXB0aW9uLmRhcmsge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7XG4gICAgcGFkZGluZzogMC41cmVtIDFyZW0gMC4ycmVtOyB9XG4gIC5saXZlLWJsb2cgLmltZy1jYXB0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmluamVjdGVkLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9IH1cblxuLmluamVjdGVkLWJsb2NrIC5ibG9jay1jb250ZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgcGFkZGluZzogMS41cmVtO1xuICB3aWR0aDogMTAwJTsgfVxuICAuaW5qZWN0ZWQtYmxvY2sgLmJsb2NrLWNvbnRlbnQgaDUgYSB7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAuaW5qZWN0ZWQtYmxvY2sgLmJsb2NrLWNvbnRlbnQgaDUgYTpob3ZlciB7XG4gICAgICBjb2xvcjogIzJDOEE4MjsgfVxuXG4uaW5qZWN0ZWQtYmxvY2sgLmJsb2NrLXRpdGxlIHtcbiAgd2lkdGg6IDEzNXB4O1xuICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAxLjVyZW07IH1cbiAgLmluamVjdGVkLWJsb2NrIC5ibG9jay10aXRsZSBoMiB7XG4gICAgZm9udC1zaXplOiAyN3B4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMkM4QTgyOyB9XG5cbi5pbmplY3RlZC1ibG9jayAuaXRlbS1hcmVhLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTsgfVxuXG4uaW5qZWN0ZWQtYmxvY2sgLml0ZW0tYXJlYSBoMi5pdGVtLWFyZWEtdGl0bGUge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5pbmplY3RlZC1ibG9jayAuaXRlbS1hcmVhIGgyLml0ZW0tYXJlYS10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDEuNjg3NXJlbTsgfSB9XG5cbi5pbmplY3RlZC1ibG9jayAuaXRlbS1hcmVhIHAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmluamVjdGVkLWJsb2NrIC5pdGVtLWFyZWEgcCB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTsgfSB9XG5cbi5pbmplY3RlZC1ibG9jayBoNS5pdGVtLWFyZWEtdGl0bGUge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4uaW5qZWN0ZWQtYmxvY2sgcCB7XG4gIGNvbG9yOiAjNTU1NTU1O1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG5cbi5pbmplY3RlZC1ibG9jayB1bCB7XG4gIGNvbG9yOiAjNTU1NTU1O1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuaW5qZWN0ZWQtYmxvY2sgdWwgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuLmluamVjdGVkLW9waW5pb24gLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5pbmplY3RlZC1vcGluaW9uIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZjdmYWZhO1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5pbmplY3RlZC1vcGluaW9uIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCAubWVkaWEtb2JqZWN0LWltZyB7XG4gICAgICB3aWR0aDogNzVweDtcbiAgICAgIGhlaWdodDogNzVweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gICAgICAuaW5qZWN0ZWQtb3BpbmlvbiAubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQgLm1lZGlhLW9iamVjdC1pbWcgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG5cbi5pbmplY3RlZC1vcGluaW9uIC5saW5rLWhvbGRlciB7XG4gIG1hcmdpbi1ib3R0b206IDJweDsgfVxuXG4uaW5qZWN0ZWQtb3BpbmlvbiAuYXV0aG9yLW5hbWUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7IH1cblxuLmluamVjdGVkLW9waW5pb24gaDUge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07IH1cblxuLndpdGgtc2VwYXJhdG9yIC5tZWRpYS1vYmplY3Q6bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRDFENUQ1O1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuXG4ud2l0aC1zZXBhcmF0b3IgcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07IH1cbiAgLndpdGgtc2VwYXJhdG9yIHA6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMzAlO1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1NTU1NTU7IH1cbiAgLndpdGgtc2VwYXJhdG9yIHA6bGFzdC1jaGlsZDphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4uaXRlbS1hcmVhIHAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbi5pdGVtLWFyZWEtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAuaXRlbS1hcmVhLWltZyBidXR0b24ge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIC5pdGVtLWFyZWEtaW1nIGJ1dHRvbjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAwLjg7IH1cblxuLml0ZW0tYXJlYS10aXRsZSBzcGFuIHtcbiAgY29sb3I6ICMyQzhBODI7IH1cblxuLml0ZW0tYXJlYS10aXRsZSBhIHtcbiAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLml0ZW0tYXJlYS10aXRsZSBhOmhvdmVyIHtcbiAgICBjb2xvcjogIzJDOEE4MjsgfVxuXG4uaXRlbS1hcmVhLW1ldGEge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cbiAgLml0ZW0tYXJlYS1tZXRhIHRpbWUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgY29sb3I6ICM1ZjcxNzY7IH1cbiAgICAuaXRlbS1hcmVhLW1ldGEgdGltZSBzcGFuIHtcbiAgICAgIGNvbG9yOiAjMkM4QTgyOyB9XG4gICAgLml0ZW0tYXJlYS1tZXRhIHRpbWUgaSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07IH1cblxuLmF1dGhvci1tZXRhLWFyZWEge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwMDAwMDtcbiAgcGFkZGluZzogMCAwIDAuNXJlbTsgfVxuICAuYXV0aG9yLW1ldGEtYXJlYSBpbWcge1xuICAgIG1heC13aWR0aDogNTBweDsgfVxuXG51bC5oYXMtc2VwYXJhdG9yIGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0QxRDVENTsgfVxuXG4ub3Bpbmlvbi1hdXRob3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLm9waW5pb24tYXV0aG9yIHtcbiAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAub3Bpbmlvbi1hdXRob3Ige1xuICAgICAgcGFkZGluZzogMS41cmVtIDFyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH0gfVxuICAub3Bpbmlvbi1hdXRob3IgLmF1dGhvci1uYW1lIHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLm9waW5pb24tYXV0aG9yIC5hdXRob3ItbmFtZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAub3Bpbmlvbi1hdXRob3IgLmF1dGhvci1kZXNjIHtcbiAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICBmb250LWZhbWlseTogXCJFZmZyYVwiOyB9XG4gIC5vcGluaW9uLWF1dGhvciAuYXV0aG9yLW1ldGEge1xuICAgIHBhZGRpbmc6IDFyZW0gMXJlbSAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5vcGluaW9uLWF1dGhvciAuYXV0aG9yLW1ldGEge1xuICAgICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAub3Bpbmlvbi1hdXRob3Iuc2luZ2xlIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAub3Bpbmlvbi1hdXRob3Iuc2luZ2xlIC5hdXRob3ItZ3JpZCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA5MnB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtaW4taGVpZ2h0OiA5NXB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAub3Bpbmlvbi1hdXRob3Iuc2luZ2xlIC53cml0ZXItY2hlY2sge1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAub3Bpbmlvbi1hdXRob3Iuc2luZ2xlIC5hdXRob3ItbWV0YSB7XG4gICAgICBwYWRkaW5nLXRvcDogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLm9waW5pb24tYXV0aG9yLnNpbmdsZSAuc29jaWFscy1ibG9jayB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA3cHg7IH1cbiAgICAgIC5vcGluaW9uLWF1dGhvci5zaW5nbGUgLnNvY2lhbHMtYmxvY2sgYSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi5hdXRob3ItaW1nIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB3aWR0aDogOTJweDtcbiAgaGVpZ2h0OiA5MnB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAtd2Via2l0LW1hc2staW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KHdoaXRlLCBibGFjayk7IH1cbiAgLmF1dGhvci1pbWcgaW1nIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLCB0cmFuc2Zvcm0gMC4ycztcbiAgICAvKiBBbmltYXRpb24gKi9cbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgLmF1dGhvci1pbWcgYTpob3ZlciBpbWcge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTsgfVxuICAgIC5hdXRob3ItaXRlbSAuYXV0aG9yLWltZyBhOmhvdmVyIGltZyB7XG4gICAgICB0cmFuc2Zvcm06IGluaGVyaXQ7IH1cbiAgLmF1dGhvci1pbWcgYTpob3ZlcjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLm9waW5pb24tYXV0aG9yIC5hdXRob3ItaW1nIHtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAuZmxleC1lcXVhbCAuYXV0aG9yLWltZyB7XG4gICAgZGlzcGxheTogaW5saW5lLXRhYmxlOyB9XG4gIC5vcGluaW9uLWF1dGhvci1saXN0IC5hdXRob3ItaW1nIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLnJlbGF0ZWQtb3BpbmlvbnMgLmF1dGhvci1pbWcge1xuICAgIHdpZHRoOiA3NXB4O1xuICAgIGhlaWdodDogNzVweDsgfVxuICAuZ2FtZS1hdXRob3ItaW5mbyAuYXV0aG9yLWltZyB7XG4gICAgd2lkdGg6IDYzcHg7XG4gICAgaGVpZ2h0OiA2M3B4O1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gICAgLmdhbWUtYXV0aG9yLWluZm8gLmF1dGhvci1pbWcgaW1nIHtcbiAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDApO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpOyB9XG5cbi5yZWxhdGVkLW9waW5pb25zIHtcbiAgbWFyZ2luLXRvcDogMS41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMS41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnJlbGF0ZWQtb3BpbmlvbnMgPiBkaXY6bnRoLWNoaWxkKDFuICsgMSk6bnRoLWxhc3QtY2hpbGQoLW4gKyAxKTpub3QoLmhpZGUtZm9yLWxhcmdlKSAuYXJ0aWNsZS1pdGVtLFxuICAgIC5yZWxhdGVkLW9waW5pb25zID4gZGl2Om50aC1jaGlsZCgxbiArIDEpOm50aC1sYXN0LWNoaWxkKC1uICsgMSk6bm90KC5oaWRlLWZvci1sYXJnZSkgfiAuY2VsbCAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLnJlbGF0ZWQtb3BpbmlvbnMgPiBkaXY6bnRoLWNoaWxkKDJuICsgMSk6bnRoLWxhc3QtY2hpbGQoLW4gKyAyKTpub3QoLmhpZGUtZm9yLWxhcmdlKSAuYXJ0aWNsZS1pdGVtLFxuICAgIC5yZWxhdGVkLW9waW5pb25zID4gZGl2Om50aC1jaGlsZCgybiArIDEpOm50aC1sYXN0LWNoaWxkKC1uICsgMik6bm90KC5oaWRlLWZvci1sYXJnZSkgfiAuY2VsbCAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAucmVsYXRlZC1vcGluaW9ucyA+IGRpdiB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuICAgIC5yZWxhdGVkLW9waW5pb25zIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEMUQ1RDU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucmVsYXRlZC1vcGluaW9ucyB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0QxRDVENTsgfSB9XG5cbi5mb250LWNvbnRyb2wge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2Y0ZjM7XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLmZvbnQtY29udHJvbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IDkwcHg7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgLmZvbnQtY29udHJvbCAuZm50Q2hhbmdlLWJ0biB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZm9udC1jb250cm9sIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG4gIC5mb250LWNvbnRyb2wgc3BhbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDAgM3B4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LWZhbWlseTogdGFob21hO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmZvbnQtY29udHJvbCAuZm9udC1zaXplIHtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgLmZvbnQtY29udHJvbCAuaWNvLWRyYWcge1xuICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICBsaW5lLWhlaWdodDogMDsgfVxuICAuZW50cnktZnVsbC1tZXRhIC5mb250LWNvbnRyb2wge1xuICAgIHdpZHRoOiAyMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLmVudHJ5LWFzaWRlLWluZm8gLmZvbnQtY29udHJvbCB7XG4gICAgbWFyZ2luLXRvcDogM3JlbTsgfVxuICAgIC5lbnRyeS1hc2lkZS1pbmZvIC5mb250LWNvbnRyb2w6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkM4QTgyO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogLTEuNXJlbTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG4uc2xpZGVyLWNvbnRyb2wgaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgIzAwMDAwMCAwJSwgI2RjZWJlOSAwJSk7XG4gIHdpZHRoOiAxNzRweDtcbiAgaGVpZ2h0OiA1cHg7XG4gIGJvdHRvbTogdW5zZXQ7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcCAwO1xuICBib3JkZXItcmFkaXVzOiAyMHB4OyB9XG4gIFtkaXI9XCJsdHJcIl0gLnNsaWRlci1jb250cm9sIGlucHV0W3R5cGU9XCJyYW5nZVwiXSB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsICMwMDAwMDAgMCUsICNkY2ViZTkgMCUpOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLmVudHJ5LW1ldGEgLnNsaWRlci1jb250cm9sIGlucHV0W3R5cGU9XCJyYW5nZVwiXSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xuICAgICAgbWFyZ2luOiAwIDUwJTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgW2Rpcj1cImx0clwiXSAuZW50cnktbWV0YSAuc2xpZGVyLWNvbnRyb2wgaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpOyB9IH1cbiAgLmVudHJ5LWZ1bGwtbWV0YSAuc2xpZGVyLWNvbnRyb2wgaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcbiAgICB3aWR0aDogMTE2cHg7IH1cblxuLnNsaWRlci1jb250cm9sIGlucHV0W3R5cGU9XCJyYW5nZVwiXTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICB3aWR0aDogMTZweDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBoZWlnaHQ6IDE2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGN1cnNvcjogZXctcmVzaXplO1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5lbnRyeS1tZXRhIC5zbGlkZXItY29udHJvbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMjAwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNDVweDtcbiAgICBiYWNrZ3JvdW5kOiAjZWNmNGYzO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMjsgfVxuICAuc2xpZGVyLWNvbnRyb2wuY2xvc2UgaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcbiAgICBhbmltYXRpb246IDFzIGVhc2Utb3V0IG5vcm1hbCBmb3J3YXJkcyAyIGZhZGVvdXQ7IH0gfVxuXG4vKiAtLS0tLS0tIFNlY3Rpb24gTWVudSAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG4uc2VjdGlvbi1tZW51LXdyYXBwZXIge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBtYXJnaW4tdG9wOiAycmVtOyB9XG5cbi5zZWN0aW9uLW1lbnUgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLnNlY3Rpb24tbWVudSBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMCAxcmVtOyB9XG4gIC5zZWN0aW9uLW1lbnUgbGk6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLnNlY3Rpb24tbWVudSBsaSBhIHtcbiAgICBjb2xvcjogI2FkYWRhZDsgfVxuXG4uc2VjdGlvbi1tZW51LWRyb3Bkb3duIHVsLFxuLnNlY3Rpb24tbWVudS13cmFwcGVyIHVsIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEMUQ1RDU7IH1cblxuLnNlY3Rpb24tbWVudS1kcm9wZG93bi5zdHlsZS12MSBsaSxcbi5zZWN0aW9uLW1lbnUtd3JhcHBlci5zdHlsZS12MSBsaSB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07IH1cbiAgLnNlY3Rpb24tbWVudS1kcm9wZG93bi5zdHlsZS12MSBsaS5hY3RpdmUsIC5zZWN0aW9uLW1lbnUtZHJvcGRvd24uc3R5bGUtdjEgbGk6aG92ZXIsXG4gIC5zZWN0aW9uLW1lbnUtd3JhcHBlci5zdHlsZS12MSBsaS5hY3RpdmUsXG4gIC5zZWN0aW9uLW1lbnUtd3JhcHBlci5zdHlsZS12MSBsaTpob3ZlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMyQzhBODI7IH1cbiAgICAuc2VjdGlvbi1tZW51LWRyb3Bkb3duLnN0eWxlLXYxIGxpLmFjdGl2ZSBhLCAuc2VjdGlvbi1tZW51LWRyb3Bkb3duLnN0eWxlLXYxIGxpOmhvdmVyIGEsXG4gICAgLnNlY3Rpb24tbWVudS13cmFwcGVyLnN0eWxlLXYxIGxpLmFjdGl2ZSBhLFxuICAgIC5zZWN0aW9uLW1lbnUtd3JhcHBlci5zdHlsZS12MSBsaTpob3ZlciBhIHtcbiAgICAgIGNvbG9yOiAjMkM4QTgyOyB9XG5cbi5kcm9wZG93bi13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMzAwcHg7XG4gIG1hcmdpbjogMnJlbSBhdXRvOyB9XG4gIC5kcm9wZG93bi13cmFwcGVyIC5idXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgbWluLXdpZHRoOiA5NXB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgY29sb3I6ICM4OThmOTM7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4OyB9XG4gICAgLmRyb3Bkb3duLXdyYXBwZXIgLmJ1dHRvbjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmRyb3Bkb3duLXdyYXBwZXIgLmJ1dHRvbiBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTsgfVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAzOHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMyQzhBODI7XG4gIGNvbG9yOiAjMkM4QTgyO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyOyB9IH1cbiAgLmRyb3Bkb3duLXRvZ2dsZSBpIHtcbiAgICBmb250LXNpemU6IDFyZW07IH1cbiAgLmRyb3Bkb3duLXRvZ2dsZTpob3ZlciwgLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XG4gICAgY29sb3I6ICMyQzhBODI7IH1cblxuLmRyb3Bkb3duLW1lbnUge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwYWRkaW5nOiAwLjI1cmVtIDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgei1pbmRleDogMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgY29sb3I6ICMyQzhBODI7XG4gIHRvcDogY2FsYygxMDAlICsgMC4yNXJlbSk7IH1cbiAgLmRyb3Bkb3duLW1lbnUgbGkge1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgLmRyb3Bkb3duLW1lbnUgbGk6aG92ZXI6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICB3aWR0aDogNXB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyQzhBODI7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmRyb3Bkb3duLW1lbnUgbGkgYSB7XG4gICAgICBjb2xvcjogIzJDOEE4MjtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDAuNjI1cmVtIDEuNXJlbTsgfVxuICAgICAgLmRyb3Bkb3duLW1lbnUgbGkgYSBpIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICAgICAgY29sb3I6ICMyQzhBODI7IH1cbiAgICAgIC5kcm9wZG93bi1tZW51IGxpIGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuZHJvcGRvd24tbWVudS5hY3RpdmUgYSB7XG4gICAgY29sb3I6ICMyQzhBODI7IH1cbiAgLmRyb3Bkb3duLW1lbnUuZXhwYW5kIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cblxuLyogLS0tLS0tLSBTZWN0aW9uIE1lbnUgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0gTVkgUFJPRklMRSAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG4udXNlci1wcm9maWxlIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogNDBweDtcbiAgcGFkZGluZzogMCAwLjdyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgLnVzZXItcHJvZmlsZSAuaWNvbi1hcnJvdy1kb3duIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgLnVzZXItcHJvZmlsZS5ob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI1M0MzQTtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC51c2VyLXByb2ZpbGUuaG92ZXIgLmljb24tYXJyb3ctZG93bjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGU5MTdcIjsgfVxuXG5bdHlwZT1cImNoZWNrYm94XCJdICsgLnVzZXItcHJvZmlsZSxcblt0eXBlPVwiY2hlY2tib3hcIl0gKyAudXNlci1wcm9maWxlLWltZyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbjogMDsgfVxuXG4udXNlci1wcm9maWxlLWltZyB7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7IH1cbiAgLnVzZXItcHJvZmlsZS1pbWcgaW1nIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgbWF4LXdpZHRoOiAyMnB4O1xuICAgIG1heC1oZWlndGg6IDIycHg7IH1cblxuLnVzZXItZHJvcGRvd246Y2hlY2tlZCB+IC5hY2NvdW50LW1lbnUtbGlzdCB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIG9wYWNpdHk6IDI7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpOyB9XG5cbi51c2VyLWRyb3Bkb3duOmNoZWNrZWQgfiAudXNlci1wcm9maWxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI1M0MzQTtcbiAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLnVzZXItZHJvcGRvd246Y2hlY2tlZCB+IC51c2VyLXByb2ZpbGUgLmljb24tYXJyb3ctZG93bjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTE3XCI7IH1cblxuLmFjY291bnQtbWVudSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFjY291bnQtbWVudSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgICBtaW4td2lkdGg6IDEzMXB4OyB9IH1cbiAgLmFjY291bnQtbWVudSAudXNlciB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4OyB9XG4gIC5zdGlja3kgLmFjY291bnQtbWVudSB7XG4gICAgbWluLXdpZHRoOiBhdXRvOyB9XG4gIC5hY2NvdW50LW1lbnUgLmFjY291bnQtbWVudS1saXN0IHtcbiAgICBtaW4td2lkdGg6IDEzMXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyNTNDM0E7XG4gICAgcGFkZGluZzogMC41cmVtO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiA5OTtcbiAgICB0b3A6IDQwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbjogMC4ycyBlYXNlLWluLW91dDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAuYWNjb3VudC1tZW51IC5hY2NvdW50LW1lbnUtbGlzdCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlY2Y0ZjM7XG4gICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgbGVmdDogLTEuMXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMjBweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMjBweDtcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHRvcDogNTVweDsgfSB9XG4gICAgLnN0aWNreSAuYWNjb3VudC1tZW51IC5hY2NvdW50LW1lbnUtbGlzdCB7XG4gICAgICB0b3A6IDM1cHg7IH1cbiAgICAuYWNjb3VudC1tZW51IC5hY2NvdW50LW1lbnUtbGlzdCB1bCB7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICB0cmFuc2l0aW9uOiAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gICAgLmFjY291bnQtbWVudSAuYWNjb3VudC1tZW51LWxpc3QgbGk6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzNhNTQ1MjtcbiAgICAgIG1hcmdpbjogMCAtMC41cmVtO1xuICAgICAgcGFkZGluZzogMCAwLjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmFjY291bnQtbWVudSAuYWNjb3VudC1tZW51LWxpc3QgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmZmZmOyB9IH1cbiAgICAuYWNjb3VudC1tZW51IC5hY2NvdW50LW1lbnUtbGlzdCBhLFxuICAgIC5hY2NvdW50LW1lbnUgLmFjY291bnQtbWVudS1saXN0IGJ1dHRvbiB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIHBhZGRpbmc6IDAuN3JlbSAwLjVyZW07XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgIC5hY2NvdW50LW1lbnUgLmFjY291bnQtbWVudS1saXN0IGEsXG4gICAgICAgIC5hY2NvdW50LW1lbnUgLmFjY291bnQtbWVudS1saXN0IGJ1dHRvbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgIHBhZGRpbmc6IDFyZW07IH0gfVxuICAgICAgLmFjY291bnQtbWVudSAuYWNjb3VudC1tZW51LWxpc3QgYTpob3ZlcixcbiAgICAgIC5hY2NvdW50LW1lbnUgLmFjY291bnQtbWVudS1saXN0IGJ1dHRvbjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjMkM4QTgyOyB9XG4gICAgICAuYWNjb3VudC1tZW51IC5hY2NvdW50LW1lbnUtbGlzdCBhIGksXG4gICAgICAuYWNjb3VudC1tZW51IC5hY2NvdW50LW1lbnUtbGlzdCBidXR0b24gaSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAgIC5hY2NvdW50LW1lbnUgLmFjY291bnQtbWVudS1saXN0IGEgaSxcbiAgICAgICAgICAuYWNjb3VudC1tZW51IC5hY2NvdW50LW1lbnUtbGlzdCBidXR0b24gaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICBjb2xvcjogIzg0OTU5NDsgfSB9XG4gICAgICAgIC5hY2NvdW50LW1lbnUgLmFjY291bnQtbWVudS1saXN0IGEgaS5pY29uLWVudmVsb3AyLFxuICAgICAgICAuYWNjb3VudC1tZW51IC5hY2NvdW50LW1lbnUtbGlzdCBidXR0b24gaS5pY29uLWVudmVsb3AyIHtcbiAgICAgICAgICBmb250LXNpemU6IDEwcHg7IH1cbiAgICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAgICAgLmFjY291bnQtbWVudSAuYWNjb3VudC1tZW51LWxpc3QgYSBpLmljb24tZW52ZWxvcDIsXG4gICAgICAgICAgICAuYWNjb3VudC1tZW51IC5hY2NvdW50LW1lbnUtbGlzdCBidXR0b24gaS5pY29uLWVudmVsb3AyIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4OyB9IH1cblxuLmZvcm0tYXJlYS13cmFwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxcmVtO1xuICB3aWR0aDogMzUwcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAuZm9ybS1hcmVhLXdyYXAge1xuICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mb3JtLWFyZWEtd3JhcCB7XG4gICAgICB3aWR0aDogNTIwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mb3JtLWFyZWEtd3JhcCB7XG4gICAgICBwYWRkaW5nOiAzcmVtIDZyZW07XG4gICAgICBtYXJnaW46IDNyZW0gYXV0bzsgfSB9XG4gIC5mb3JtLWFyZWEtd3JhcCAuc2VjdGlvbi10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfVxuICAgIC5mb3JtLWFyZWEtd3JhcCAuc2VjdGlvbi10aXRsZSBoMyB7XG4gICAgICBjb2xvcjogIzJDOEE4MjsgfVxuICAuZm9ybS1hcmVhLXdyYXAgLmN1c3RvbS10eHQtc3R5bGUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbWFyZ2luOiAycmVtIDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbG9yOiAjYWNhY2FjOyB9XG4gICAgLmZvcm0tYXJlYS13cmFwIC5jdXN0b20tdHh0LXN0eWxlOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNEMUQ1RDU7XG4gICAgICB6LWluZGV4OiAxOyB9XG4gICAgLmZvcm0tYXJlYS13cmFwIC5jdXN0b20tdHh0LXN0eWxlIHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBmb250LWZhbWlseTogXCJFZmZyYVwiO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBjb2xvcjogIzI1M0MzQTsgfVxuICAuZm9ybS1hcmVhLXdyYXAgaW5wdXRbdHlwZT1cImVtYWlsXCJdOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pLFxuICAuZm9ybS1hcmVhLXdyYXAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5mb3JtLWFyZWEtd3JhcCBpbnB1dFt0eXBlPVwiZW1haWxcIl06cGxhY2Vob2xkZXItc2hvd24sXG4gIC5mb3JtLWFyZWEtd3JhcCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06cGxhY2Vob2xkZXItc2hvd24ge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5mb3JtLWFyZWEtd3JhcCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07IH1cblxuLmZvcm0tYXJlYSBzZWxlY3Qge1xuICBib3JkZXItY29sb3I6ICNEQ0RGREY7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5mb3JtLWFyZWEgLmlucHV0LXJhZGlvIHtcbiAgYm9yZGVyLWNvbG9yOiAjRENERkRGO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgd2lkdGg6IGNhbGMoNTAlIC0gMTBweCk7XG4gIGhlaWdodDogMi40Mzc1cmVtO1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4OyB9XG4gIC5mb3JtLWFyZWEgLmlucHV0LXJhZGlvIGxhYmVsIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4uZm9ybS1hcmVhIC5zdWJtaXQtYnRuIHtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgcGFkZGluZzogMC44cmVtIDJyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi5mb3JtLWFyZWEgLmlucHV0LWZpZWxkIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC5mb3JtLWFyZWEgLmlucHV0LWZpZWxkIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgLmZvcm0tYXJlYSAuaW5wdXQtZmllbGQgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAuZm9ybS1hcmVhIC5pbnB1dC1maWVsZCBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjRENERkRGO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5mb3JtLWFyZWEgLmlucHV0LWZpZWxkIGlucHV0W3R5cGU9XCJlbWFpbFwiXTpub3QoLm5vLWljbyksXG4gICAgLmZvcm0tYXJlYSAuaW5wdXQtZmllbGQgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOm5vdCgubm8taWNvKSxcbiAgICAuZm9ybS1hcmVhIC5pbnB1dC1maWVsZCBpbnB1dFt0eXBlPVwidGV4dFwiXTpub3QoLm5vLWljbykge1xuICAgICAgcGFkZGluZy1sZWZ0OiAzcmVtOyB9XG4gIC5mb3JtLWFyZWEgLmlucHV0LWZpZWxkIHNlbGVjdCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMTBweCk7IH1cbiAgLmZvcm0tYXJlYSAuaW5wdXQtZmllbGQuaW5wdXQtZGVmYXVsdCBpbnB1dFt0eXBlPVwiZW1haWxcIl06bm90KC5uby1pY28pLFxuICAuZm9ybS1hcmVhIC5pbnB1dC1maWVsZC5pbnB1dC1kZWZhdWx0IGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpub3QoLm5vLWljbyksXG4gIC5mb3JtLWFyZWEgLmlucHV0LWZpZWxkLmlucHV0LWRlZmF1bHQgaW5wdXRbdHlwZT1cInRleHRcIl06bm90KC5uby1pY28pIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtOyB9XG5cbi5mb3JtLWFyZWEgbGFiZWwge1xuICBjb2xvcjogIzJDOEE4MjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LWZhbWlseTogXCJFZmZyYVwiOyB9XG5cbi5mb3Jnb3QtcGFzc3dvcmQgYSB7XG4gIGNvbG9yOiAjMkM4QTgyOyB9XG4gIC5mb3Jnb3QtcGFzc3dvcmQgYTpob3ZlciB7XG4gICAgY29sb3I6ICMyNTNDM0E7IH1cblxuLmZvcmdvdC1wYXNzd29yZCBidXR0b24ge1xuICBjb2xvcjogIzJDOEE4MjtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5mb3Jnb3QtcGFzc3dvcmQgYnV0dG9uOmhvdmVyIHtcbiAgICBjb2xvcjogIzI1M0MzQTsgfVxuXG4uZm9ybS1hcmVhIC5mb3Jnb3QtcGFzc3dvcmQge1xuICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgei1pbmRleDogMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5mb3JtLXNvY2lhbHMtYnRucyBidXR0b24uZXhwYW5kZWQge1xuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBjb2xvcjogIzcxNzE3MSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAzMHB4ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogI0RDREZERiAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgZm9udC1mYW1pbHk6IFwiRWZmcmFcIiAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmZvcm0tc29jaWFscy1idG5zIGJ1dHRvbi5leHBhbmRlZCBzcGFuIHtcbiAgICBwYWRkaW5nOiAwIDFyZW0gIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50OyB9XG4gIC5mb3JtLXNvY2lhbHMtYnRucyBidXR0b24uZXhwYW5kZWQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2ZhZmEgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubXktcGFnZSB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5teS1wYWdlIC5teS10YWdzIC50YWdzLWxpc3Qge1xuICAgIG1pbi13aWR0aDogOTAwcHg7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc2Nyb2xsX2pzIHtcbiAgICBtYXJnaW4tbGVmdDogLTEuNXJlbTsgfSB9XG5cbi5hc2lkZS1iYXIge1xuICBmb250LWZhbWlseTogXCJFZmZyYVwiOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmFzaWRlLWJhciB7XG4gICAgICBtYXJnaW46IDAgLTFyZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKG1heC13aWR0aDogMTAzMHB4KSB7XG4gICAgLmFzaWRlLWJhciB7XG4gICAgICB3aWR0aDogMjUwcHggIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFzaWRlLWJhciB7XG4gICAgICB3aWR0aDogMjY5cHg7XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtOyB9IH1cbiAgLmFzaWRlLWJhciAubWVudS10YWJzIHtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VjZjRmMztcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5hc2lkZS1iYXIgLm1lbnUtdGFicyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH0gfVxuICAgIC5hc2lkZS1iYXIgLm1lbnUtdGFicyAudGFicy10aXRsZSA+IGE6Zm9jdXMsXG4gICAgLmFzaWRlLWJhciAubWVudS10YWJzIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiAjMkM4QTgyOyB9XG4gICAgLmFzaWRlLWJhciAubWVudS10YWJzID4gbGk6bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSkgPiAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmZmZmOyB9XG4gICAgLmFzaWRlLWJhciAubWVudS10YWJzID4gbGk6bm90KC5sb2dvdXQpID4gYTpiZWZvcmUsXG4gICAgLmFzaWRlLWJhciAubWVudS10YWJzID4gbGk6bm90KC5sb2dvdXQpID4gLmJ1dHRvbjpiZWZvcmUge1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiAxcmVtO1xuICAgICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICAgIGNvbnRlbnQ6IFwi7qSWXCI7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5hc2lkZS1iYXIgLm1lbnUtdGFicyA+IGxpOm5vdCgubG9nb3V0KSA+IGE6YmVmb3JlLFxuICAgICAgICAuYXNpZGUtYmFyIC5tZW51LXRhYnMgPiBsaTpub3QoLmxvZ291dCkgPiAuYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCLupIJcIjsgfVxuICAgICAgICAgIFtkaXI9XCJsdHJcIl0gLmFzaWRlLWJhciAubWVudS10YWJzID4gbGk6bm90KC5sb2dvdXQpID4gYTpiZWZvcmUsIFtkaXI9XCJsdHJcIl1cbiAgICAgICAgICAuYXNpZGUtYmFyIC5tZW51LXRhYnMgPiBsaTpub3QoLmxvZ291dCkgPiAuYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIu6kg1wiOyB9IH1cbiAgICAuYXNpZGUtYmFyIC5tZW51LXRhYnMgPiBsaS5pcy1hY3RpdmUgPiBhIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBjb2xvcjogIzJDOEE4MjsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgLmFzaWRlLWJhciAubWVudS10YWJzID4gbGkuaXMtYWN0aXZlID4gYTpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwi7qSXXCI7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07IH0gfVxuICAgIC5hc2lkZS1iYXIgLm1lbnUtdGFicyA+IGxpLmlzLWFjdGl2ZSAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmZmZmY7IH1cbiAgICAuYXNpZGUtYmFyIC5tZW51LXRhYnMgPiBsaSA+IGEsXG4gICAgLmFzaWRlLWJhciAubWVudS10YWJzID4gbGkgPiAuYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGNvbG9yOiAjOTY5Njk2O1xuICAgICAgcGFkZGluZzogMS41cmVtO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmN2ZhZmE7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgIC5hc2lkZS1iYXIgLm1lbnUtdGFicyA+IGxpID4gYSxcbiAgICAgICAgLmFzaWRlLWJhciAubWVudS10YWJzID4gbGkgPiAuYnV0dG9uIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZmZmZmZjtcbiAgICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAgICAgLmFzaWRlLWJhciAubWVudS10YWJzID4gbGkgPiBhOmhvdmVyLCAuYXNpZGUtYmFyIC5tZW51LXRhYnMgPiBsaSA+IGE6Zm9jdXMsXG4gICAgICAuYXNpZGUtYmFyIC5tZW51LXRhYnMgPiBsaSA+IC5idXR0b246aG92ZXIsXG4gICAgICAuYXNpZGUtYmFyIC5tZW51LXRhYnMgPiBsaSA+IC5idXR0b246Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6ICMyQzhBODI7IH1cbiAgICAgIC5hc2lkZS1iYXIgLm1lbnUtdGFicyA+IGxpID4gYSBzcGFuIGksXG4gICAgICAuYXNpZGUtYmFyIC5tZW51LXRhYnMgPiBsaSA+IC5idXR0b24gc3BhbiBpIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTsgfVxuICAgICAgICAuYXNpZGUtYmFyIC5tZW51LXRhYnMgPiBsaSA+IGEgc3BhbiBpLmljb24tZW52ZWxvcDEsXG4gICAgICAgIC5hc2lkZS1iYXIgLm1lbnUtdGFicyA+IGxpID4gLmJ1dHRvbiBzcGFuIGkuaWNvbi1lbnZlbG9wMSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4OyB9XG4gICAgICAgIC5hc2lkZS1iYXIgLm1lbnUtdGFicyA+IGxpID4gYSBzcGFuIGkuaWNvbi1zaWduLW91dCxcbiAgICAgICAgLmFzaWRlLWJhciAubWVudS10YWJzID4gbGkgPiAuYnV0dG9uIHNwYW4gaS5pY29uLXNpZ24tb3V0IHtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgIC5hc2lkZS1iYXIgLm1lbnUtdGFicyA+IGxpID4gYTpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+IC5hY2NvcmRpb24tdGl0bGUsXG4gICAgICAgIC5hc2lkZS1iYXIgLm1lbnUtdGFicyA+IGxpID4gLmJ1dHRvbjpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+IC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7IH0gfVxuICAgIC5hc2lkZS1iYXIgLm1lbnUtdGFicyA+IGxpID4gLmJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7XG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7IH1cbiAgICAgIC5hc2lkZS1iYXIgLm1lbnUtdGFicyA+IGxpID4gLmJ1dHRvbiBpIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTsgfVxuICAgICAgICAuYXNpZGUtYmFyIC5tZW51LXRhYnMgPiBsaSA+IC5idXR0b24gaS5pY29uLWVudmVsb3AxIHtcbiAgICAgICAgICBmb250LXNpemU6IDE1cHg7IH1cbiAgICAgICAgLmFzaWRlLWJhciAubWVudS10YWJzID4gbGkgPiAuYnV0dG9uIGkuaWNvbi1zaWduLW91dCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIC5hc2lkZS1iYXIgLm1lbnUtdGFicyAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNmNGYzO1xuICAgICAgICBib3JkZXI6IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAudXBkYXRlLXBhc3N3b3JkIHtcbiAgICBjb2xvcjogIzJDOEE4MjtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnRvcHBlci10aXRsZS5tYXJnaW4tYm90dG9tLTMge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW0gIWltcG9ydGFudDsgfSB9XG5cbi50b3BwZXItdGl0bGUgaDMge1xuICBjb2xvcjogIzJDOEE4MjsgfVxuXG4ubmV3c2xldHRlci1tb2RhbCAudG9wcGVyLXRpdGxlIGgyIHtcbiAgZm9udC1zaXplOiAxLjU2MjVyZW07XG4gIG1hcmdpbi10b3A6IC0zcmVtOyB9XG5cbi50b3BwZXItdGl0bGUuc3R5bGUtMSBoMiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBtYXJnaW4tdG9wOiAycmVtOyB9XG4gIC50b3BwZXItdGl0bGUuc3R5bGUtMSBoMjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGhlaWdodDogMnB4O1xuICAgIHdpZHRoOiA1MnB4O1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgLm5vdGlmaWNhdGlvbi1tb2RhbCAudG9wcGVyLXRpdGxlLnN0eWxlLTEgaDIge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cblxuLnByb2ZpbGUtYXZhdGFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5wcm9maWxlLWF2YXRhciBpbWcge1xuICAgIHdpZHRoOiA3NnB4O1xuICAgIGhlaWdodDogNzZweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucHJvZmlsZS1hdmF0YXIgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwM3B4O1xuICAgICAgICBoZWlnaHQ6IDEwM3B4OyB9IH1cblxuLnByb2ZpbGUtYXZhdGFyLWVkaXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5wcm9maWxlLWF2YXRhci1lZGl0IGkge1xuICAgIGZvbnQtc2l6ZTogMTBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wcm9maWxlLWF2YXRhci1lZGl0IHtcbiAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgaGVpZ2h0OiAzMHB4OyB9XG4gICAgICAucHJvZmlsZS1hdmF0YXItZWRpdCBpIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9IH1cblxuLnByb2ZpbGUtZGV0YWlscyBoMyB7XG4gIGNvbG9yOiAjMkM4QTgyOyB9XG5cbi5wcm9maWxlLWNvbnRlbnQge1xuICBtYXJnaW46IDFyZW0gMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wcm9maWxlLWNvbnRlbnQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlY2Y0ZjM7XG4gICAgICBib3JkZXItcmFkaXVzOiA0MHB4O1xuICAgICAgcGFkZGluZzogM3JlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH0gfVxuXG4uYXJyb3ctcG9pbnRlciBsb3R0aWUtcGxheWVyIHtcbiAgd2lkdGg6IDEwMHB4O1xuICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYXJyb3ctcG9pbnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5tZW51LXBvaW50ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWVudS1wb2ludGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE3LjVyZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDsgfSB9XG5cbi8qIC0tLS0tLS0gTVkgUFJPRklMRSAtLS0tLS0tIEVORCAtLS0tLS0tLSAqL1xuLyogLS0tLS0tLSBQRVJTT05BTElaRSAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG4uaW5wdXQtZmllbGQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7IH1cbiAgLmlucHV0LWZpZWxkIC5pY28tbGFiZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAxNnB4O1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMjBweDtcbiAgICBjb2xvcjogIzlhOWE5YTsgfVxuICAuaW5wdXQtZmllbGQgLmljby1zaG93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgcGFkZGluZy10b3A6IDAuOHJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjhyZW07XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuaW5wdXQtZmllbGQuaW5wdXQtZGVmYXVsdCB7XG4gICAgZGlyZWN0aW9uOiBydGw7IH1cbiAgICAuaW5wdXQtZmllbGQuaW5wdXQtZGVmYXVsdCAuaWNvLWxhYmVsIHtcbiAgICAgIHJpZ2h0OiAxNnB4OyB9XG4gICAgLmlucHV0LWZpZWxkLmlucHV0LWRlZmF1bHQgLmljby1zaG93IHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuOHJlbTsgfVxuICAuaW5wdXQtZmllbGQgLnJlcXVpcmVkIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogLTFyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi5yZXF1aXJlZCB7XG4gIGNvbG9yOiAjMkM4QTgyO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cblxuLm1lc3NhZ2Uge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGNvbG9yOiAjMkM4QTgyOyB9XG4gIC5tZXNzYWdlLmFsZXJ0IHtcbiAgICBjb2xvcjogI0RGNkQzRjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAucGVyc29uYWwtbWVzc2FnZSB7XG4gICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGVyc29uYWwtbWVzc2FnZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEMUQ1RDU7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfSB9XG5cbi5wZXJzb25hbC1tZXNzYWdlIGgyIHtcbiAgZm9udC1zaXplOiAxLjU2MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGNvbG9yOiAjMjUzQzNBO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wZXJzb25hbC1tZXNzYWdlIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMy4xMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS40OyB9IH1cblxuLnBlcnNvbmFsLW1lc3NhZ2UgaDMge1xuICBmb250LXNpemU6IDIuMzc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4uYWN0aW9uLWJ0biB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBtYXJnaW46IDNyZW0gYXV0byAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYWN0aW9uLWJ0biB7XG4gICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgLmFjdGlvbi1idG4gYSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5hY3Rpb24tYnRuIC5idXR0b24ge1xuICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgcGFkZGluZzogMC44cmVtIDJyZW07XG4gICAgbWluLXdpZHRoOiAxNjlweDtcbiAgICBoZWlnaHQ6IDQ2cHg7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gIC5hY3Rpb24tYnRuIC5za2lwLWJ0biB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMyQzhBODI7XG4gICAgY29sb3I6ICMyQzhBODI7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5hY3Rpb24tYnRuIC5wcmV2LWJ0biB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcbiAgICBjb2xvcjogIzk2OTY5NjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuYWN0aW9uLWJ0biAucHJldi1idG4ge1xuICAgICAgICBtYXJnaW4tdG9wOiAxcmVtOyB9IH1cbiAgICAuYWN0aW9uLWJ0biAucHJldi1idG46aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDsgfVxuICAuYWN0aW9uLWJ0biAuZ290by1idG4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFOUYyRUY7XG4gICAgY29sb3I6ICMyNTNDM0E7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFjdGlvbi0tYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgLmFjdGlvbi0tYnV0dG9uIC5uZXh0LWJ0biB7XG4gICAgICBvcmRlcjogMjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5pbWctY292ZXIge1xuICAgIHdpZHRoOiA1NDBweDsgfSB9XG5cbi5wZXJzb25hbC1pbm5lciB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGVyc29uYWwtaW5uZXIge1xuICAgICAgbWFyZ2luLXRvcDogOHJlbTsgfSB9XG5cbi5mdW5jdGlvbi1pbmZvIGgzIHtcbiAgZm9udC1zaXplOiAzMHB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZ1bmN0aW9uLWluZm8gaDMge1xuICAgICAgZm9udC1zaXplOiA0MHB4OyB9IH1cblxuLmdldC1zdGFydGVkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMzBweCAwOyB9XG4gIC5nZXQtc3RhcnRlZCAuYWN0aW9uLWJ0biB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDQ7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07IH1cblxuLnBlcnNvbmFsLXdyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnBlcnNvbmFsLXdyYXAtYmVmb3JlIHtcbiAgICBoZWlnaHQ6IDgwdmg7XG4gICAgb3ZlcmZsb3cteTogYXV0bzsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAucGVyc29uYWwtd3JhcC1iZWZvcmUge1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxODBweCk7XG4gICAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgICAgICAgLyogSUUgYW5kIEVkZ2UgKi9cbiAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyB9XG4gICAgICAgIC5wZXJzb25hbC13cmFwLWJlZm9yZTo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAucGVyc29uYWwtd3JhcC1hZnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiA0O1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtOyB9XG4gICAgLnBlcnNvbmFsLXdyYXAtYWZ0ZXI6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBiYWNrZ3JvdW5kOiAjZjdmYWZhO1xuICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQoMGRlZywgI2Y3ZmFmYSAwJSwgcmdiYSgyNDcsIDI1MCwgMjUwLCAwLjQ4MjIzKSA4MCUsIHJnYmEoMjQ3LCAyNTAsIDI1MCwgMCkgMTAwJSk7XG4gICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgwZGVnLCAjZjdmYWZhIDAlLCByZ2JhKDI0NywgMjUwLCAyNTAsIDAuNDgyMjMpIDgwJSwgcmdiYSgyNDcsIDI1MCwgMjUwLCAwKSAxMDAlKTtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwZGVnLCAjZjdmYWZhIDAlLCByZ2JhKDI0NywgMjUwLCAyNTAsIDAuNDgyMjMpIDgwJSwgcmdiYSgyNDcsIDI1MCwgMjUwLCAwKSAxMDAlKTtcbiAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9XCIjZjdmYWZhXCIsZW5kQ29sb3JzdHI9XCIjZjdmYWZhXCIsR3JhZGllbnRUeXBlPTEpOyB9XG4gICAgLnBlcnNvbmFsLXdyYXAtYWZ0ZXIgLmFjdGlvbi1idG4ge1xuICAgICAgei1pbmRleDogMztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAucGVyc29uYWwtd3JhcC1hdXRob3Ige1xuICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5wZXJzb25hbC13cmFwLWF1dGhvciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwOyB9IH1cblxuLmhvcml6b250YWwtc2Nyb2xsLXdyYXBwZXIgLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIHtcbiAgd2lkdGg6IDMwMHB4O1xuICBsZWZ0OiBpbmhlcml0OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9IH1cblxuLmhvcml6b250YWwtc2Nyb2xsLWlubmVyIHtcbiAgaGVpZ2h0OiBpbmhlcml0OyB9XG5cbi52LWlubmVyLXNjcm9sbC5hdXRob3JzLWxpc3Qge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICBjb2x1bW4tZ2FwOiAxMHB4O1xuICByb3ctZ2FwOiAxMHB4O1xuICBqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAudi1pbm5lci1zY3JvbGwuYXV0aG9ycy1saXN0IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudi1pbm5lci1zY3JvbGwuYXV0aG9ycy1saXN0IHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIDFmcik7XG4gICAgICBjb2x1bW4tZ2FwOiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmlubmVyLXNjcm9sbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDZyZW07IH0gfVxuXG4uaW5uZXItc2Nyb2xsLmF1dGhvcnMtbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuaW5uZXItc2Nyb2xsLmF1dGhvcnMtbGlzdCB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuaW5uZXItc2Nyb2xsIC5hdXRob3Itb3B0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9IH1cblxuLmlubmVyLXNjcm9sbCAudGFnLW9wdGlvbiAudGFnIHtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBwYWRkaW5nOiA1cHggMTBweCAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmlubmVyLXNjcm9sbCAudGFnLW9wdGlvbiAudGFnIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDsgfSB9XG5cbi5zZWxlY3QtbGlzdC1pbm5lciB7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IDZyZW07IH1cblxuLnRhZ3MtbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAudGFncy1saXN0LnYtaW5uZXItc2Nyb2xsIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAudGFncy1saXN0LnYtaW5uZXItc2Nyb2xsIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7IH0gfVxuICAucGVyc29uYWwtd3JhcCAudGFncy1saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wZXJzb25hbC13cmFwIC50YWdzLWxpc3Qge1xuICAgICAgICBtYXgtd2lkdGg6IDkzN3B4O1xuICAgICAgICBtYXJnaW46IDRyZW0gYXV0byAwOyB9IH1cblxuLmF1dGhvci1vcHRpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDg2cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5hdXRob3Itb3B0aW9uIHtcbiAgICAgIHdpZHRoOiAxMTVweDsgfSB9XG4gIC5hdXRob3Itb3B0aW9uIC5hdXRob3ItaW1nIHtcbiAgICB3aWR0aDogODZweDtcbiAgICBoZWlnaHQ6IDg2cHg7XG4gICAgbWFyZ2luOiAwIGF1dG8gMS41cmVtOyB9XG4gIC5hdXRob3Itb3B0aW9uIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDgwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6IDA7IH1cbiAgICAuYXV0aG9yLW9wdGlvbiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxlOTMxXCI7XG4gICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7IH1cbiAgICAuYXV0aG9yLW9wdGlvbiBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCB+IC5hdXRob3ItaW1nIGltZyB7XG4gICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgwKTsgfVxuICAgIC5hdXRob3Itb3B0aW9uIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIH4gLmF1dGhvci1tZXRhIC5hdXRob3ItbmFtZSB7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5hdXRob3Itb3B0aW9uIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcZTkzMlwiO1xuICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICAgICAgY29sb3I6ICMyQzhBODI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGVyc29uYWwtd3JhcCAuYXV0aG9yLW9wdGlvbiB7XG4gICAgICBtYXJnaW46IDAuNXJlbTsgfSB9XG5cbi5hdXRob3Itb3B0aW9uIC5hdXRob3ItbWV0YSB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LWZhbWlseTogXCJFZmZyYVwiO1xuICBjb2xvcjogIzkyOTg5ODsgfVxuICAuYXV0aG9yLW9wdGlvbiAuYXV0aG9yLW1ldGEgLmF1dGhvci1uYW1lIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm15LWF1dGhvcnMgLmF1dGhvcnMtbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4OiAxIDAgMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAubXktYXV0aG9ycyAuYXV0aG9ycy1saXN0IC5tQ1NCX2NvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG5cbi5teS1hdXRob3JzIC5hdXRob3Itb3B0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm15LWF1dGhvcnMgLmF1dGhvci1pbWcge1xuICAgIHdpZHRoOiA5OXB4O1xuICAgIGhlaWdodDogOTlweDsgfSB9XG5cbi5tYW5hZ2UtYmxvY2s6bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI0QxRDVENTtcbiAgcGFkZGluZy10b3A6IDJyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1hbmFnZS1ibG9jayBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIHRvcDogOTBweDsgfSB9XG5cbi5hZGQtbW9yZSB7XG4gIGNvbG9yOiAjMkM4QTgyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLmFkZC1tb3JlIHtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgLmFkZC1tb3JlIGkge1xuICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5hZGQtbW9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRmMGVmO1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAgIC5hZGQtbW9yZTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlNGVkZWM7XG4gICAgICAgIGNvbG9yOiAjMkM4QTgyOyB9XG4gICAgICAuYWRkLW1vcmUuYmlnIHtcbiAgICAgICAgd2lkdGg6IDk5cHg7XG4gICAgICAgIGhlaWdodDogOTlweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07IH1cbiAgICAgICAgLmFkZC1tb3JlLmJpZyBpIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuNzVyZW07IH1cbiAgICAgIC5hZGQtbW9yZS5zbWFsbCB7XG4gICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwcHg7IH1cbiAgICAgICAgLmFkZC1tb3JlLnNtYWxsIGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC42ODc1cmVtOyB9IH1cbiAgLmFkZC1tb3JlLmJ1dHRvbiB7XG4gICAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gICAgbWFyZ2luOiAwLjVyZW07IH1cbiAgLmFkZC1tb3JlIHNwYW4ge1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmNhdGVnb3J5LW1lbnUgLmFkZC1tb3JlIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRmMGVmO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgaGVpZ2h0OiAzMHB4OyB9XG4gICAgICAuY2F0ZWdvcnktbWVudSAuYWRkLW1vcmU6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlZGVjO1xuICAgICAgICBjb2xvcjogIzJDOEE4MjsgfVxuICAgICAgLmNhdGVnb3J5LW1lbnUgLmFkZC1tb3JlIGkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbi53cml0ZXItY2hlY2sge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAud3JpdGVyLWNoZWNrIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlY2Y0ZjM7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHdpZHRoOiAyNnB4O1xuICAgIGhlaWdodDogMjZweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICMyQzhBODI7XG4gICAgcGFkZGluZy10b3A6IDdweDtcbiAgICB6LWluZGV4OiAxO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDgwcHg7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAud3JpdGVyLWNoZWNrIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDllZGViOyB9XG4gICAgLndyaXRlci1jaGVjayBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwi7qS7XCI7XG4gICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7IH1cbiAgICAud3JpdGVyLWNoZWNrIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyQzhBODI7IH1cbiAgICAgIC53cml0ZXItY2hlY2sgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQ6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCLupLxcIjtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICAgICAgZm9udC1zaXplOiA4cHg7IH1cblxuLmxvdHRpZS13cmFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmxvdHRpZS13cmFwIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07IH0gfVxuICAubG90dGllLXdyYXAgLmxvdHRpZS1jaGVjayB7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICAubG90dGllLXdyYXAgLmxvdHRpZS1jaGVjayBzdmcge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VjZjRmMztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDI2cHggIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogMjZweCAhaW1wb3J0YW50O1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwOyB9XG5cbi5tdWx0aS1jaGVjayB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAubXVsdGktY2hlY2sgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuYXV0aG9ycy1saXN0IC5tdWx0aS1jaGVjazpob3ZlciBpbWcge1xuICAgIGZpbHRlcjogZ3JheXNjYWxlKDApOyB9XG5cbi50YWctb3B0aW9uIHtcbiAgbWFyZ2luOiAwLjVyZW07IH1cbiAgLnRhZy1vcHRpb246aG92ZXIgLnRhZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJDOEE4MjtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAudGFnLW9wdGlvbiAudGFnIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2VkOWQ4O1xuICAgIHBhZGRpbmc6IDAuNXJlbSAycmVtIDAuMnJlbTtcbiAgICBmb250LWZhbWlseTogXCJFZmZyYVwiO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLm15LXRhZ3MgLnRhZy1vcHRpb24gLnRhZyxcbiAgICAubW9kYWwtd3JhcCAudGFnLW9wdGlvbiAudGFnIHtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLnRhZy1vcHRpb24gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnRhZy1vcHRpb24gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgfiAudGFnIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyQzhBODI7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLm5ld3NsZXR0ZXItaWNvIGxvdHRpZS1wbGF5ZXIge1xuICB3aWR0aDogMTc2cHg7XG4gIGhlaWdodDogMTc2cHg7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG5cbi5lbnRyeS1zdWJzY3JpYmUgLm5ld3NsZXR0ZXItaWNvIHtcbiAgbWFyZ2luLWJvdHRvbTogLTNyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm5ld3NsZXR0ZXItbGlzdCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgyLCBhdXRvKTtcbiAgICBncmlkLWF1dG8tY29sdW1uczogMWZyO1xuICAgIGdyaWQtYXV0by1mbG93OiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICByb3ctZ2FwOiAycmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnBlcnNvbmFsLXdyYXAgLm5ld3NsZXR0ZXItbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiA1MHB4O1xuICAgIG1hcmdpbi10b3A6IDRyZW07IH0gfVxuXG4ubmV3c2xldHRlci1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNmNGYzO1xuICB3aWR0aDogMzE1cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAubmV3c2xldHRlci1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtYXgtd2lkdGg6IDExODFweCkge1xuICAgIC5uZXdzbGV0dGVyLWl0ZW0ge1xuICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm5ld3NsZXR0ZXItaXRlbSB7XG4gICAgICB3aWR0aDogMjkycHg7XG4gICAgICBwYWRkaW5nOiAycmVtIDFyZW0gMXJlbTsgfSB9XG4gIC5uZXdzbGV0dGVyLWl0ZW0gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm5ld3NsZXR0ZXItaXRlbSBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCB+IC5jaGVja2JveC1idXR0b24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJDOEE4MjsgfVxuICAgICAgLm5ld3NsZXR0ZXItaXRlbSBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCB+IC5jaGVja2JveC1idXR0b24gLmljb24tZW52ZWxvcDIge1xuICAgICAgICBmb250LXNpemU6IDExcHg7IH1cbiAgICAgICAgLm5ld3NsZXR0ZXItaXRlbSBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCB+IC5jaGVja2JveC1idXR0b24gLmljb24tZW52ZWxvcDI6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZTkzY1wiOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnByb2ZpbGUtbmV3c2xldHRlciAubmV3c2xldHRlci1pdGVtIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAucGVyc29uYWwtd3JhcC1uZXdzbGV0dGVyIC5uZXdzbGV0dGVyLWl0ZW0ge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wZXJzb25hbC13cmFwLW5ld3NsZXR0ZXIgLm5ld3NsZXR0ZXItaXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLm5ld3NsZXR0ZXItaXRlbS1pbmZvIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAubmV3c2xldHRlci1pdGVtLWljb24gaW1nIHtcbiAgICB3aWR0aDogNDlweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5uZXdzbGV0dGVyLWl0ZW0taWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTJyZW07XG4gICAgbGVmdDogMXJlbTsgfSB9XG5cbi5uZXdzbGV0dGVyLWl0ZW0tYWN0aW9uIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi5uZXdzbGV0dGVyLWl0ZW0tdGl0bGUgaDMge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAxNnB4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm5ld3NsZXR0ZXItaXRlbS10aXRsZSBoMyB7XG4gICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuXG4ubmV3c2xldHRlci1pdGVtLW1ldGEge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgY29sb3I6ICMzYjNiM2I7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7IH1cblxuLmNoZWNrYm94LWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gIHBhZGRpbmc6IDAuM3JlbSAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNoZWNrYm94LWJ1dHRvbiB7XG4gICAgICBwYWRkaW5nOiAwLjhyZW0gMS41cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDA7IH0gfVxuICAuY2hlY2tib3gtYnV0dG9uIC5pY29tb29uLWljb24ge1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5jc3RtLWlucHQge1xuICAgIG1hcmdpbi10b3A6IC0xNXB4OyB9IH1cblxuLmVuZC1tZXNzYWdlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogM3JlbSAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTVyZW0pOyB9XG4gIC5lbmQtbWVzc2FnZSAuYnV0dG9uIHtcbiAgICBtYXJnaW46IDAgYXV0byAxcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDE4cHg7IH1cbiAgLmVuZC1tZXNzYWdlIC5zdWNjZXNzLWxvdHRpZSB7XG4gICAgd2lkdGg6IDEzOHB4O1xuICAgIGhlaWdodDogMTM4cHg7XG4gICAgbWFyZ2luOiAwIGF1dG8gMS41cmVtOyB9XG4gIC5lbmQtbWVzc2FnZS1zdWNjZXNzIGgzIHtcbiAgICBmb250LXNpemU6IDEuNzVyZW07IH1cbiAgLmVuZC1tZXNzYWdlLXN1Y2Nlc3MgcCB7XG4gICAgZm9udC1mYW1pbHk6IFwiRWZmcmFcIjsgfVxuXG4ucmV2ZWFsIC52ZXJ0aWNhbC1zY3JvbGwtd3JhcHBlcixcbi5tb2RhbC13cmFwIC52ZXJ0aWNhbC1zY3JvbGwtd3JhcHBlciB7XG4gIGhlaWdodDogNDUwcHg7XG4gIG92ZXJmbG93LXk6IGF1dG87IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAucmV2ZWFsIC52ZXJ0aWNhbC1zY3JvbGwtd3JhcHBlcixcbiAgICAubW9kYWwtd3JhcCAudmVydGljYWwtc2Nyb2xsLXdyYXBwZXIge1xuICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyB9XG4gICAgICAucmV2ZWFsIC52ZXJ0aWNhbC1zY3JvbGwtd3JhcHBlcjo6LXdlYmtpdC1zY3JvbGxiYXIsXG4gICAgICAubW9kYWwtd3JhcCAudmVydGljYWwtc2Nyb2xsLXdyYXBwZXI6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5yZXZlYWwgLnZlcnRpY2FsLXNjcm9sbC1pbm5lcixcbi5tb2RhbC13cmFwIC52ZXJ0aWNhbC1zY3JvbGwtaW5uZXIge1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLnJldmVhbC1vdmVybGF5IHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjk1KTsgfVxuXG4uc3Vic2NyaWJlLWFsbCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zdWJzY3JpYmUtYWxsIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgei1pbmRleDogMjsgfSB9XG5cbi5ub3RpZi1tZXNzYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuNXJlbTsgfVxuXG4vKiAtLS0tLS0tIFBFUlNPTkFMSVpFIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG4vKiAtLS0tLS0tIENVU1RPTSBNT0RBTCAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG4ubW9kYWwtb3BlbiB7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjsgfVxuXG4ubW9kYWwtdG9nZ2xlIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5tb2RhbC13cmFwIHtcbiAgcGFkZGluZzogMnJlbTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxMDAwMDtcbiAgLyogMSAqL1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5tb2RhbC13cmFwIHtcbiAgICAgIG92ZXJmbG93OiBhdXRvOyB9IH1cblxuLm1vZGFsLXdyYXAuaXMtdmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIG9wYWNpdHk6IDE7IH1cblxuLm1vZGFsLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDk5O1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbjsgfVxuXG4ubW9kYWwtd3JhcC5pcy12aXNpYmxlIC5tb2RhbC1vdmVybGF5IHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMHM7IH1cblxuLm1vZGFsLXdyYXBwZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDk5OTk7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiA5NSU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3gtc2hhZG93OiAwIDAgMS41ZW0gcmdiYSgwLCAwLCAwLCAwLjM1KTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tb2RhbC13cmFwcGVyIHtcbiAgICAgIHdpZHRoOiA2MHJlbTsgfVxuICAgICAgLm5vdGlmaWNhdGlvbi1tb2RhbCAubW9kYWwtd3JhcHBlciB7XG4gICAgICAgIHdpZHRoOiAzOTBweDsgfSB9XG4gIC5ub3RpZmljYXRpb24tbW9kYWwgLm1vZGFsLXdyYXBwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDYwNTc7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogMzZweDsgfVxuICAgIC5ub3RpZmljYXRpb24tbW9kYWwgLm1vZGFsLXdyYXBwZXIgaW1nIHtcbiAgICAgIHdpZHRoOiAyMDhweDsgfVxuXG4ubW9kYWwtdHJhbnNpdGlvbiB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIDAuMTJzO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwJSk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLm1vZGFsLXdyYXAuaXMtdmlzaWJsZSAubW9kYWwtdHJhbnNpdGlvbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIHRvcDogMXJlbTtcbiAgb3BhY2l0eTogMTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tb2RhbC13cmFwLmlzLXZpc2libGUgLm1vZGFsLXRyYW5zaXRpb24ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgdG9wOiA1MCU7IH0gfVxuXG4ubW9kYWwtY2xvc2UsXG4uZ2FtZS1jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgcGFkZGluZzogMC44ZW07XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LXNpemU6IDI1cHg7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5ub3RpZmljYXRpb24tbW9kYWwgLm1vZGFsLWNsb3NlLCAubm90aWZpY2F0aW9uLW1vZGFsXG4gIC5nYW1lLWNsb3NlIHtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAubW9kYWwtY2xvc2U6aG92ZXIsXG4gIC5nYW1lLWNsb3NlOmhvdmVyIHtcbiAgICBjb2xvcjogIzc3NzsgfVxuXG4ubW9kYWwtYmVmb3JlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAxcmVtOyB9XG4gIC5tb2RhbC1iZWZvcmUgLmNsb3NlLWJ1dHRvbiB7XG4gICAgcG9zaXRpb246IHN0YXRpYzsgfVxuICAubW9kYWwtYmVmb3JlIC5idXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLm1vZGFsLWlubmVyIHtcbiAgcGFkZGluZzogMCAxcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1vZGFsLWlubmVyIHtcbiAgICAgIHBhZGRpbmc6IDAgM3JlbTsgfSB9XG4gIC5ub3RpZmljYXRpb24tbW9kYWwgLm1vZGFsLWlubmVyIHtcbiAgICBwYWRkaW5nOiAyMHB4IDIwcHggNTBweDtcbiAgICAvKiBNb2JpbGUgTGFuZHNjYXBlICovIH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA4OTZweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgICAgLm5vdGlmaWNhdGlvbi1tb2RhbCAubW9kYWwtaW5uZXIge1xuICAgICAgICBoZWlnaHQ6IDMwMHB4O1xuICAgICAgICBvdmVyZmxvdzogc2Nyb2xsOyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiA0MTJweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA5MTZweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgICAgLm5vdGlmaWNhdGlvbi1tb2RhbCAubW9kYWwtaW5uZXIge1xuICAgICAgICBoZWlnaHQ6IDMwMHB4O1xuICAgICAgICBvdmVyZmxvdzogc2Nyb2xsOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogNjAxcHgpIGFuZCAobWluLWhlaWdodDogNjAwcHgpIHtcbiAgICAgIC5ub3RpZmljYXRpb24tbW9kYWwgLm1vZGFsLWlubmVyIHtcbiAgICAgICAgaGVpZ2h0OiA1MDBweDtcbiAgICAgICAgb3ZlcmZsb3c6IHNjcm9sbDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5ub3RpZmljYXRpb24tbW9kYWwgLm1vZGFsLWlubmVyIHtcbiAgICAgICAgcGFkZGluZzogMzVweCAxcmVtIDc1cHg7IH0gfVxuXG4uc2VsZWN0LWFsbCB7XG4gIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDFyZW07XG4gIGxlZnQ6IDFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuc2VsZWN0LWFsbCB7XG4gICAgICBsaW5lLWhlaWdodDogMC4yOyB9IH1cbiAgLnNlbGVjdC1hbGwgaSB7XG4gICAgZm9udC1zaXplOiA3cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDsgfVxuXG4ubmV3c2xldHRlci1tb2RhbCAubmV3c2xldHRlci1pY28ge1xuICBtYXJnaW4tdG9wOiAtMjZweDsgfVxuXG4ubmV3c2xldHRlci1tb2RhbCAubW9kYWwtaW5uZXIge1xuICBwYWRkaW5nLWJvdHRvbTogNDNweDsgfVxuXG4ubmV3c2xldHRlci1tb2RhbCBmb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5uZXdzbGV0dGVyLW1vZGFsIGZvcm0gPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9yZGVyOiAyOyB9XG5cbi5uZXdzbGV0dGVyLW1vZGFsIC5tYWlsY2hpbXAtbmV3c2xldHRlci1zdWJzY3JpYmUge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICBtYXJnaW46IDFyZW0gYXV0byAwOyB9XG5cbi5uZXdzbGV0dGVyLW1vZGFsIC5uZXdzbGV0dGVyLWNvbnRlbnQgLm1haWxjaGltcC1uZXdzbGV0dGVyLXN1YnNjcmliZSB7XG4gIG1heC13aWR0aDogNTkwcHg7XG4gIG9yZGVyOiAzOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5uZXdzbGV0dGVyLW1vZGFsIHtcbiAgICBvdmVyZmxvdzogc2Nyb2xsOyB9IH1cblxuLm5ld3NsZXR0ZXItbW9kYWwgLm1lc3NhZ2VzIHtcbiAgbWFyZ2luLXRvcDogMjBweDsgfVxuXG4ubmV3c2xldHRlci1tb2RhbCAubWVzc2FnZXMubWVzc2FnZXMtLXN0YXR1cyB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIGNvbG9yOiAjMkM4QTgyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm5ld3NsZXR0ZXItbW9kYWwgLm1lc3NhZ2VzLm1lc3NhZ2VzLS1zdGF0dXM6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIu6kslwiO1xuICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuXG4ubmV3c2xldHRlci1jb250ZW50IC5tYWlsY2hpbXAtaW5uZXIge1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC5uZXdzbGV0dGVyLWNvbnRlbnQgLm1haWxjaGltcC1pbm5lciBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIGFjY2VudC1jb2xvcjogIzAwMDAwMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAubmV3c2xldHRlci1jb250ZW50IC5tYWlsY2hpbXAtbmV3c2xldHRlci13cmFwcGVyIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH0gfVxuXG4ubmV3c2xldHRlci1jb250ZW50IC5tYWlsY2hpbXAtbmV3c2xldHRlci1zdWJzY3JpYmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7IH1cblxuLm5ld3NsZXR0ZXItY29udGVudCAuZm9ybS1yZXF1aXJlZCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLm5ld3NsZXR0ZXItY29udGVudCAuanMtZm9ybS1pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9IH1cblxuLm5ld3NsZXR0ZXItY29udGVudCAubWFpbGNoaW1wLW5ld3NsZXR0ZXItbWVyZ2VmaWVsZHMge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5uZXdzbGV0dGVyLWNvbnRlbnQgaW5wdXQuZm9ybS1lbWFpbCB7XG4gIGJvcmRlci1jb2xvcjogIzg0OGU4ZDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZGlyZWN0aW9uOiBsdHI7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi5uZXdzbGV0dGVyLWNvbnRlbnQgLmZvcm0tc3VibWl0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAyLjczNzVyZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5uZXdzbGV0dGVyLWNvbnRlbnQgLmZvcm0tc3VibWl0IHtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAzcmVtOyB9IH1cbiAgLm5ld3NsZXR0ZXItY29udGVudCAuZm9ybS1zdWJtaXQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyYzhhODI7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7IH1cblxuLm5vdGlmaWNhdGlvbi1tb2RhbCAuYnV0dG9uIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbjogMCAwLjJyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubm90aWZpY2F0aW9uLW1vZGFsIC5idXR0b24ge1xuICAgICAgbWFyZ2luOiAwIDAuNXJlbTsgfSB9XG5cbi5ub3RpZmljYXRpb24tbW9kYWwgLmJ1dHRvbi5kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgY29sb3I6ICNmZmZmZmY7IH1cblxuLm5vdGlmaWNhdGlvbi1tb2RhbCAuYnV0dG9uLmxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm5vdGlmaWNhdGlvbi1tb2RhbCBpbWcge1xuICAgIGhlaWdodDogMjI5cHg7IH0gfVxuXG4ubm90aWZpY2F0aW9uLW1vZGFsIHAge1xuICBmb250LXNpemU6IDE5cHg7XG4gIGNvbG9yOiAjZWZlY2UyO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5ub3RpZmljYXRpb24tbW9kYWwgLmNob2ljZXMge1xuICBtYXJnaW4tdG9wOiA0NXB4O1xuICBtYXJnaW4tYm90dG9tOiAzNXB4OyB9XG5cbi8qIC0tLS0tLS0gQ1VTVE9NIE1PREFMIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG4vKiAtLS0tLS0tIDQwNCBOT1QgRk9VTkQgLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLm5vdC1mb3VuZC13cmFwIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubm90LWZvdW5kLXdyYXAgLm5vdC1mb3VuZC10ZXh0IHtcbiAgICB3aWR0aDogMzByZW07IH0gfVxuXG4ubm90LWZvdW5kLXdyYXAgLm5vdC1mb3VuZC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubm90LWZvdW5kLXdyYXAgLm5vdC1mb3VuZC1pbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAtMTsgfSB9XG5cbi5ub3QtZm91bmQtbnVtIHtcbiAgZm9udC1zaXplOiA2LjEyNXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFNlcmlmXCIsIHNlcmlmO1xuICBmb250LXdlaWdodDogYm9sZGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm5vdC1mb3VuZC1udW0ge1xuICAgICAgZm9udC1zaXplOiA5LjYyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ub3QtZm91bmQtdHh0IHtcbiAgICBtYXJnaW46IDFyZW0gMCA0cmVtOyB9IH1cblxuLm5vdC1mb3VuZC10eHQgaDIge1xuICBmb250LXNpemU6IDJyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGNvbG9yOiAjMkM4QTgyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm5vdC1mb3VuZC10eHQgaDIge1xuICAgICAgZm9udC1zaXplOiAzLjM3NXJlbTsgfSB9XG5cbi5ub3QtZm91bmQtdHh0IHAge1xuICBmb250LWZhbWlseTogXCJFZmZyYVwiO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBjb2xvcjogIzRkNGQ0ZDsgfVxuXG4ubm90LWZvdW5kLWJ0biAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBwYWRkaW5nOiAxcmVtIDNyZW07IH1cbiAgLm5vdC1mb3VuZC1idG4gLmJ1dHRvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJDOEE4MjtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4vKiAtLS0tLS0tIDQwNCBOT1QgRk9VTkQgLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuLyogLS0tLS0gV0VBVEhFUiBXSURHRVQgLS0tLS0tIFNUQVJUIC0tLS0tLSAqL1xuLndlYXRoZXItd2lkZ2V0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuXG4jY3VycmVudFdlYXRoZXIge1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLndlYXRoZXItb3V0bGluZSB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgLW1vei1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAtby1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgcGFkZGluZzogMXJlbSAycmVtIDFyZW07XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIC8qIG5ldGJvb2sgb25seSAqLyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLndlYXRoZXItb3V0bGluZSB7XG4gICAgICBwYWRkaW5nOiAxcmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLndlYXRoZXItb3V0bGluZSB7XG4gICAgICBwYWRkaW5nOiAxcmVtOyB9IH1cblxuLnJhaW55IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy93ZWF0aGVyL3JhaW55LmpwZyk7IH1cblxuLmNsb3VkeSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvd2VhdGhlci9jbG91ZHkuanBnKTsgfVxuXG4uc2FuZHN0b3JtIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy93ZWF0aGVyL3NhbmRzdG9ybS5qcGcpOyB9XG5cbi5jbGVhciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvd2VhdGhlci9jbGVhci5qcGcpOyB9XG5cbi53ZWF0aGVyLWljbyB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAtbW96LWJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgLW8tYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGhlaWdodDogMjY0cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzIwcHgpIHtcbiAgICAud2VhdGhlci1pY28ge1xuICAgICAgaGVpZ2h0OiAyNDBweDsgfSB9XG5cbi5zdW4taWNvIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29uL3dlYXRoZXIvY29uZGl0aW9uL3N1bi5zdmcpOyB9XG5cbi5tb29uLWljbyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi93ZWF0aGVyL2NvbmRpdGlvbi9tb29uLnN2Zyk7IH1cblxuLnN1bl9jbG91ZHMtaWNvIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29uL3dlYXRoZXIvY29uZGl0aW9uL3N1bl9jbG91ZHMuc3ZnKTsgfVxuXG4ubW9vbl9jbG91ZHMtaWNvIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29uL3dlYXRoZXIvY29uZGl0aW9uL21vb25fY2xvdWRzLnN2Zyk7IH1cblxuLmNsb3Vkcy1pY28ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb24vd2VhdGhlci9jb25kaXRpb24vY2xvdWRzLnN2Zyk7IH1cblxuLnJhaW4taWNvIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29uL3dlYXRoZXIvY29uZGl0aW9uL3JhaW4uc3ZnKTsgfVxuXG4ubGlnaHRuaW5nLWljbyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi93ZWF0aGVyL2NvbmRpdGlvbi9saWdodG5pZ2h0LnN2Zyk7IH1cblxuLnN1bl9yYWluX3Nub3ctaWNvIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29uL3dlYXRoZXIvY29uZGl0aW9uL3N1bl9yYWluX3Nub3cuc3ZnKTsgfVxuXG4ubW9vbl9yYWluX3Nub3ctaWNvIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29uL3dlYXRoZXIvY29uZGl0aW9uL21vb25fcmFpbl9zbm93LnN2Zyk7IH1cblxuLmZvZy1pY28ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb24vd2VhdGhlci9jb25kaXRpb24vZm9nLnN2Zyk7IH1cblxuLndlYXRoZXItaWNvbiB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgLW1vei1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAtby1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAyMnB4OyB9XG5cbi5tb3JuaW5nLWljbyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi93ZWF0aGVyL21vcm5pbmcuc3ZnKTsgfVxuXG4ubmlnaHQtaWNvIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29uL3dlYXRoZXIvbmlnaHQuc3ZnKTsgfVxuXG4ud2VhdGhlci1kZXRhaWxzIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4ud2VhdGhlci1vdXRsaW5lLWNpdHkge1xuICBmb250LXNpemU6IDMuMTI1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4ud2VhdGhlci1vdXRsaW5lLWNvbmRpdGlvbiB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDRyZW07XG4gIHdpZHRoOiAyMzVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLyogU21hbGxlc3Qgb25seSAqL1xuICAvKiBuZXRib29rIG9ubHkgKi8gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC53ZWF0aGVyLW91dGxpbmUtY29uZGl0aW9uIHtcbiAgICAgIGxlZnQ6IC0ycmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzIwcHgpIHtcbiAgICAud2VhdGhlci1vdXRsaW5lLWNvbmRpdGlvbiB7XG4gICAgICB3aWR0aDogMjA1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAud2VhdGhlci1vdXRsaW5lLWNvbmRpdGlvbiB7XG4gICAgICB3aWR0aDogMjAwcHg7XG4gICAgICBsZWZ0OiAtMXJlbTsgfSB9XG5cbi53ZWF0aGVyLW91dGxpbmUtaW5mbyB7XG4gIG1hcmdpbi10b3A6IGF1dG87IH1cblxuLndlYXRoZXItb3V0bGluZS1zdGF0dXMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IC00cmVtO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4ud2VhdGhlci10b2RheSB7XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC53ZWF0aGVyLXRvZGF5IHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMThweDsgfVxuICAud2VhdGhlci10b2RheSB0aW1lIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgZm9udC1mYW1pbHk6IFwiRWZmcmFcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTsgfVxuXG4ud2VhdGhlci10ZW1wZXJhdHVyZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogM3JlbTtcbiAgZGlyZWN0aW9uOiBsdHI7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICAvKiBTbWFsbCBvbmx5ICovXG4gIC8qIG5ldGJvb2sgb25seSAqLyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgLndlYXRoZXItdGVtcGVyYXR1cmUge1xuICAgICAgZm9udC1zaXplOiA4MHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLndlYXRoZXItdGVtcGVyYXR1cmUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgZm9udC1zaXplOiA4MHB4OyB9IH1cbiAgLndlYXRoZXItdGVtcGVyYXR1cmU6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDNyZW07XG4gICAgcmlnaHQ6IC0ycmVtO1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGhlaWdodDogMjVweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyOiA1cHggc29saWQgI2ZmZmZmZjtcbiAgICAvKiBTbWFsbCBvbmx5ICovXG4gICAgLyogbmV0Ym9vayBvbmx5ICovIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge1xuICAgICAgLndlYXRoZXItdGVtcGVyYXR1cmU6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAycmVtO1xuICAgICAgICByaWdodDogLTEuNXJlbTtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgICAud2VhdGhlci10ZW1wZXJhdHVyZTpiZWZvcmUge1xuICAgICAgICB0b3A6IDJyZW07XG4gICAgICAgIHJpZ2h0OiAtMS41cmVtO1xuICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgaGVpZ2h0OiAxOHB4OyB9IH1cblxuLmRheXBhcnQge1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlZmVmZWY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiAwIDAuMnJlbSAxcmVtO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuZGF5cGFydC5hY3RpdmUsIC5kYXlwYXJ0OmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICNlNGYwZWY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2M2ZTJkZjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5kYXlwYXJ0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4uZGF5cGFydC1kYXkge1xuICBjb2xvcjogIzJDOEE4MjtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtOyB9XG5cbi5kYXlwYXJ0LWRhdGUge1xuICBjb2xvcjogI2JjYmNiYztcbiAgZm9udC1zaXplOiAxMXB4O1xuICBmb250LWZhbWlseTogXCJFZmZyYVwiOyB9XG5cbi53ZWF0aGVyLWluZm8taXRlbSB7XG4gIG1hcmdpbjogMC41cmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC1mYW1pbHk6IFwiRWZmcmFcIjsgfVxuICAud2VhdGhlci1pbmZvLWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEMUQ1RDU7IH1cblxuLndlYXRoZXItaWNvbiB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG5cbi8qIC0tLS0tIFdFQVRIRVIgV0lER0VUIC0tLS0tLSBFTkQgLS0tLS0tICovXG4vKiAtLS0tLSBQT0RDQVNUIEJMT0NLLS0tLS0tIFNUQVJUIC0tLS0tLSAqL1xuLnNpZGViYXItd3JhcCAucG9kY2FzdC1saXN0IHAge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiRWZmcmFcIjsgfVxuXG4ucG9kY2FzdC1saXN0IC5kYXRlLWZpZWxkLFxuLnBvZGNhc3QtbGlzdCAucG9kY2FzdC10aW1lIHtcbiAgZm9udC1mYW1pbHk6IFwiRWZmcmFcIjtcbiAgY29sb3I6ICMyQzhBODI7IH1cbiAgLnBvZGNhc3QtbGlzdCAuZGF0ZS1maWVsZCBpLFxuICAucG9kY2FzdC1saXN0IC5wb2RjYXN0LXRpbWUgaSB7XG4gICAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgLnBvZGNhc3QtbGlzdCAuZGF0ZS1maWVsZCB0aW1lLFxuICAucG9kY2FzdC1saXN0IC5wb2RjYXN0LXRpbWUgdGltZSB7XG4gICAgZm9udC1zaXplOiAwLjY4NzVyZW07IH1cbiAgLnBvZGNhc3QtbGlzdCAuZGF0ZS1maWVsZCBhLFxuICAucG9kY2FzdC1saXN0IC5kYXRlLWZpZWxkIGJ1dHRvbixcbiAgLnBvZGNhc3QtbGlzdCAucG9kY2FzdC10aW1lIGEsXG4gIC5wb2RjYXN0LWxpc3QgLnBvZGNhc3QtdGltZSBidXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAgIC5wb2RjYXN0LWxpc3QgLmRhdGUtZmllbGQgYTpob3ZlcixcbiAgICAucG9kY2FzdC1saXN0IC5kYXRlLWZpZWxkIGJ1dHRvbjpob3ZlcixcbiAgICAucG9kY2FzdC1saXN0IC5wb2RjYXN0LXRpbWUgYTpob3ZlcixcbiAgICAucG9kY2FzdC1saXN0IC5wb2RjYXN0LXRpbWUgYnV0dG9uOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi5wb2RjYXN0LWJsb2NrIHtcbiAgcGFkZGluZzogMTBweCAxcmVtOyB9XG5cbi5wb2RjYXN0LXRpbWUge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZGlzcGxheTogZmxleDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5wb2RjYXN0LXRpbWUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuICAucG9kY2FzdC10aW1lIGkge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nOiAwIDEwcHggMCAwOyB9XG4gICAgLmJsb2NrLWNvbnRlbnQgLnBvZGNhc3QtdGltZSBpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2ZhZmE7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLm5ld3MtdGlja2VyLWFyZWEgLnBvZGNhc3QtdGltZSBhLCAubmV3cy10aWNrZXItYXJlYVxuICAucG9kY2FzdC10aW1lIGJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAxMXB4OyB9XG4gIC5uZXdzLXRpY2tlci1hcmVhIC5wb2RjYXN0LXRpbWUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLm5ld3MtdGlja2VyLWFyZWEgLnBvZGNhc3QtdGltZSBpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICBjb2xvcjogIzJDOEE4MjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIHBhZGRpbmc6IDhweDtcbiAgICAgIHdpZHRoOiAyOXB4O1xuICAgICAgaGVpZ2h0OiAyOXB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4OyB9XG4gICAgICAubmV3cy10aWNrZXItYXJlYSAucG9kY2FzdC10aW1lIGkgLmljb24tcGxheS1ncmVlbjpiZWZvcmUge1xuICAgICAgICBjb2xvcjogIzRkOGE4ODsgfVxuICAgIC5uZXdzLXRpY2tlci1hcmVhIC5wb2RjYXN0LXRpbWUgc3BhbiB7XG4gICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICBmb250LWZhbWlseTogXCJFZmZyYVwiO1xuICAgICAgY29sb3I6ICMyQzhBODI7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5uZXdzLXRpY2tlci1hcmVhIC5wb2RjYXN0LXRpbWUgc3BhbiB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDhweDsgfSB9XG5cbi5wb2RjYXN0LWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDAuODEyNXJlbTsgfVxuICAucG9kY2FzdC1pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDAuODc1cmVtOyB9XG4gIC5wb2RjYXN0LWl0ZW0gLm1lZGlhLW9iamVjdCB7XG4gICAgbWFyZ2luLXRvcDogOHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAucG9kY2FzdC1pdGVtIC5tZWRpYS1vYmplY3QgcCB7XG4gICAgICBjb2xvcjogIzU1NTU1NTtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAgIC5wb2RjYXN0LWl0ZW0gLm1lZGlhLW9iamVjdCBoNiB7XG4gICAgICBjb2xvcjogIzI1M0MzQTsgfVxuICAucG9kY2FzdC1pdGVtOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmN2Y3OyB9XG4gIC5wb2RjYXN0LWl0ZW0gPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgdG9wOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBjb250ZW50OiBcIlwiOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBvZGNhc3QtZ3JpZCAucG9kY2FzdC1pdGVtIHtcbiAgICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbi5wb2RjYXN0LWlmcmFtZS1lcGlzb2RlcyB7XG4gIG1hcmdpbjogMXJlbSBhdXRvOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnBvZGNhc3QtaWZyYW1lLWVwaXNvZGVzIHtcbiAgICAgIHdpZHRoOiA4MCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wb2RjYXN0LWlmcmFtZS1lcGlzb2RlcyB7XG4gICAgICB3aWR0aDogNzAlOyB9IH1cblxuLnBvZGNhc3QtbGFiZWwge1xuICBjb2xvcjogIzI1M0MzQTtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgLnBvZGNhc3QtbGFiZWwgaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTsgfVxuICAucG9kY2FzdC1sYWJlbCBsb3R0aWUtcGxheWVyIHtcbiAgICB3aWR0aDogMjJweDtcbiAgICBoZWlnaHQ6IDE5cHg7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG4gIC5vcGluaW9uLWF1dGhvcnMtbGlzdCAucG9kY2FzdC1sYWJlbCB7XG4gICAgY29sb3I6ICMyQzhBODI7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQgMHM7IH1cbiAgLmF1ZGlvLXBsYXllci10b3AgLnBvZGNhc3QtbGFiZWw6aG92ZXIge1xuICAgIGNvbG9yOiAjMkM4QTgyOyB9XG5cbi5wb2RjYXN0LWdyaWQgLmRhdGUtZmllbGQgYSB7XG4gIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cblxuLnBvZGNhc3QtZ3JpZCAucG9kY2FzdC10aW1lIGkge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBmb250LXNpemU6IDFyZW07IH1cblxuLnBvZGNhc3QtZ3JpZCAucG9kY2FzdC10aW1lIHRpbWUge1xuICBmb250LWZhbWlseTogXCJFZmZyYVwiO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAwOyB9XG5cbi5wb2RjYXN0LXNjcmVlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2Y0ZjM7XG4gIHBhZGRpbmc6IDFyZW0gMDtcbiAgbWFyZ2luLWJvdHRvbTogLTFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucG9kY2FzdC1zY3JlZW4ge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBvZGNhc3Qtc2NyZWVuIHtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0yLjVyZW07IH0gfVxuXG4ucG9kY2FzdC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5wb2RjYXN0LXRpdGxlIHtcbiAgICAgIG1hcmdpbi10b3A6IDJyZW07IH1cbiAgICAgIC5wb2RjYXN0LXRpdGxlIGg0IHtcbiAgICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wb2RjYXN0LXRpdGxlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMXJlbTsgfSB9XG5cbi5wb2RjYXN0LWVwaXNvZGUtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5wb2RjYXN0LWVwaXNvZGUtdGl0bGUgaDIge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wb2RjYXN0LWVwaXNvZGUtdGl0bGUgaDIge1xuICAgICAgICBmb250LXNpemU6IDIuMDYyNXJlbTsgfSB9XG5cbi5wb2RjYXN0LXNwZWFrZXIge1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBjb2xvcjogIzJDOEE4MjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wb2RjYXN0LXNwZWFrZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfSB9XG4gIC5wb2RjYXN0LXNwZWFrZXIgYSB7XG4gICAgY29sb3I6ICMyQzhBODI7IH1cbiAgICAucG9kY2FzdC1zcGVha2VyIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cblxuLnBvZGNhc3QtZXBpc29kZS1tZXRhIHtcbiAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLnBvZGNhc3QtZXBpc29kZS1tZXRhIC5wb2RjYXN0LWxlbmd0aCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjOTI5ODk4OyB9XG5cbi5wb2RjYXN0LWVwaXNvZGUtY29udGVudCB7XG4gIHBhZGRpbmc6IDAgMS41cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnBvZGNhc3QtZXBpc29kZS1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDAgNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBvZGNhc3QtZXBpc29kZS1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDAgMTNyZW07IH0gfVxuICAucG9kY2FzdC1lcGlzb2RlLWNvbnRlbnQgcCB7XG4gICAgY29sb3I6ICM0ZDRkNGQ7IH1cblxuLnBvZGNhc3QtZXBpc29kZS1pdGVtIC5ncmlkLXgge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbi5wb2RjYXN0LWVwaXNvZGUtaXRlbSAucG9kY2FzdC1pbWcge1xuICB3aWR0aDogMTQxcHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucG9kY2FzdC1lcGlzb2RlLWl0ZW0gLnBvZGNhc3QtaW1nIHtcbiAgICAgIHdpZHRoOiAyMzVweDsgfSB9XG5cbi5wb2RjYXN0LWVwaXNvZGUtaXRlbSAucG9kY2FzdC10aXRsZSBoNCB7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLnBvZGNhc3QtYnRuIHtcbiAgbWFyZ2luOiAycmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLnBvZGNhc3QtZXBpc29kZS1pdGVtIC5wb2RjYXN0LWJ0biB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDsgfVxuXG4ucGxheS1wb2RjYXN0LWJ0biB7XG4gIGJhY2tncm91bmQ6ICMwMDAwMDA7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIHBhZGRpbmc6IDAuNXJlbSAycmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgd2lkdGg6IDE4MHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLnBsYXktcG9kY2FzdC1idG4gaSB7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG4gIC5wbGF5LXBvZGNhc3QtYnRuOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cblxuLmF1ZGlvLXBsYXllci10b3AsXG4ucGxheS1wb2RjYXN0LWJ0biB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuYXVkaW8tcGxheWVyLXRvcC5wbGF5aW5nIC5pY29uLXBsYXktZ3JlZW4sXG4gIC5wbGF5LXBvZGNhc3QtYnRuLnBsYXlpbmcgLmljb24tcGxheS1ncmVlbiB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAxNHB4OyB9XG4gICAgLmF1ZGlvLXBsYXllci10b3AucGxheWluZyAuaWNvbi1wbGF5LWdyZWVuOmJlZm9yZSxcbiAgICAucGxheS1wb2RjYXN0LWJ0bi5wbGF5aW5nIC5pY29uLXBsYXktZ3JlZW46YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxlOTIzXCI7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnBvZGNhc3Qtc29jaWFscyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG5cbi5wb2RjYXN0LXNvY2lhbHMgYSB7XG4gIG1hcmdpbjogMXJlbSAxLjVyZW0gMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBvZGNhc3Qtc29jaWFscyBhLmdvb2dsZS1wb2RjYXN0LWJ0biBpbWcge1xuICAgIHdpZHRoOiAxMjBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucG9kY2FzdC1zb2NpYWxzIGEuYXBwbGUtcG9kY2FzdC1idG4gaW1nIHtcbiAgICB3aWR0aDogMTEycHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5wb2RjYXN0LXNvY2lhbHMgYSBpbWcge1xuICAgICAgd2lkdGg6IDI0cHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucG9kY2FzdC1zb2NpYWxzIGEgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnBvZGNhc3Qtc29jaWFscyBhIHtcbiAgICAgIG1hcmdpbjogMXJlbSAxcmVtIDA7IH0gfVxuXG4ucG9kY2FzdC1zb2NpYWxzLXRpdGxlIHtcbiAgZmxleC1ncm93OiAxO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbi5wb2RjYXN0LWJhbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAzNTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzM2YjE4YzsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAucG9kY2FzdC1iYW5uZXIge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucG9kY2FzdC1iYW5uZXIge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIHRleHQtYWxpZ246IGluaXRpYWw7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wb2RjYXN0LWJhbm5lciB7XG4gICAgICBoZWlnaHQ6IDIxMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfSB9XG5cbi5wb2RjYXN0LWJhbm5lciAucG9kY2FzdC1pbWcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogaW5pdGlhbDtcbiAgYm90dG9tOiAtNXJlbTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucG9kY2FzdC1iYW5uZXIgLnBvZGNhc3QtaW1nIHtcbiAgICAgIHRvcDogLTZyZW07XG4gICAgICBsZWZ0OiAwO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDQ1MHB4OyB9IH1cblxuLnBvZGNhc3QtY29udGVudCB7XG4gIHBhZGRpbmc6IDEuNXJlbTtcbiAgei1pbmRleDogMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnBvZGNhc3QtY29udGVudCB7XG4gICAgICB3aWR0aDogNTAlOyB9IH1cbiAgLnBvZGNhc3QtY29udGVudCBoMyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgLnBvZGNhc3QtY29udGVudCBwIHtcbiAgICBmb250LXNpemU6IDAuODEyNXJlbTsgfVxuXG4ucmV0dXJuLWJ0biB7XG4gIG1hcmdpbjogMXJlbSAwO1xuICBmb250LXNpemU6IDE0cHg7IH1cbiAgLnJldHVybi1idG4gYSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5yZXR1cm4tYnRuIGkge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuXG4ubW9yZS1idG4ge1xuICBtYXJnaW46IDJyZW07IH1cbiAgLm1vcmUtYnRuIC5idXR0b24ge1xuICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAycmVtOyB9XG5cbi5wYWdlLWJ0bnMge1xuICB6LWluZGV4OiAxO1xuICBtYXJnaW46IDAgYXV0bzsgfVxuICAucGFnZS1idG5zIC5lbnRyeS1zaGFyZS1yb3cuZW50cnktYm9va21hcmsge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAucGFnZS1idG5zLmZsZXgtY29udGFpbmVyIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAucGFnZS1idG5zLmZsZXgtY29udGFpbmVyIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG5cbi5vcGluaW9uLWF1dGhvcnMtbGlzdC5oYXMtc2VwYXJhdG9yID4gZGl2IC5hcnRpY2xlLWl0ZW0ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0QxRDVENTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm9waW5pb24tYXV0aG9ycy1saXN0IC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuLm9waW5pb24tYXV0aG9ycy1saXN0IH4gLm9waW5pb24tYXV0aG9ycy1saXN0Omxhc3QtY2hpbGQuaGFzLXNlcGFyYXRvciA+IGRpdjpsYXN0LWNoaWxkIC5hcnRpY2xlLWl0ZW0ge1xuICBib3JkZXItYm90dG9tOiB0cmFuc3BhcmVudDsgfVxuXG4ucGxheS1wb2RjYXN0LWJ0biB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnBsYXktcG9kY2FzdC1idG4gLmxibC1wbGF5aW5nIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5wbGF5LXBvZGNhc3QtYnRuLnBsYXlpbmcgLmxibC1wYXVzZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnBsYXktcG9kY2FzdC1idG4ucGxheWluZyAubGJsLXBsYXlpbmcge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4ucG9kY2FzdC1zaW5nbGUtYmxvY2sge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNmIxOGM7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBwYWRkaW5nOiAzcmVtIDJyZW0gMDsgfVxuICAucG9kY2FzdC1zaW5nbGUtYmxvY2sgLnBvZGNhc3QtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS42ODc1cmVtO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgZm9udC1zaXplOiBib2xkOyB9XG4gIC5wb2RjYXN0LXNpbmdsZS1ibG9jayBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5wb2RjYXN0LXNpbmdsZS1ibG9jayAucG9kY2FzdC1pbWcge1xuICAgIHdpZHRoOiAxNjZweDtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuXG4vKiAtLS0tLSBQT0RDQVNUIEJMT0NLLS0tLS0tIEVORCAtLS0tLS0gKi9cbi8qIC0tLS0tIENBUklDQVRVUkUgQkxPQ0sgLS0tLS0tIFNUQVJUIC0tLS0tLSAqL1xuLmNhcmljYXR1cmUtc2xpZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5jYXJpY2F0dXJlLXNsaWRlciB7XG4gICAgICBmbGV4LWZsb3c6IG5vd3JhcDtcbiAgICAgIG92ZXJmbG93LXg6IHNjcm9sbCAhaW1wb3J0YW50O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHNjcm9sbC1zbmFwLXR5cGU6IHggbWFuZGF0b3J5O1xuICAgICAgbWFyZ2luOiAwIC0xcmVtO1xuICAgICAgZ2FwOiAyMHB4O1xuICAgICAgcGFkZGluZzogMCAxcmVtO1xuICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyB9XG4gICAgICAuY2FyaWNhdHVyZS1zbGlkZXI6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLmNhcmljYXR1cmUtc2xpZGVyID4gLmNhcmljYXR1cmUtc2xpZGUge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCkgIWltcG9ydGFudDtcbiAgICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7IH0gfVxuXG4uY2FyaWNhdHVyZS1zbGlkZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLyogLS0tLS0gQ0FSSUNBVFVSRSBCTE9DSyAtLS0tLS0gRU5EIC0tLS0tLSAqL1xuLyogLS0tLS0gTkVXU1RJQ0tFUiBXSURHRVQgLS0tLS0tIFNUQVJUIC0tLS0tLSAqL1xuLnNtYXJ0aWNrZXIuYWxlcnQgLnNtYXJ0aWNrZXItY2F0ZWdvcnkgYSB7XG4gIGNvbG9yOiAjQkQzQzJGOyB9XG5cbi5zbWFydGlja2VyLmFsZXJ0IC5zbWFydGlja2VyLWNhdHM6YmVmb3JlIHtcbiAgY29sb3I6ICNCRDNDMkY7IH1cblxuLnNtYXJ0aWNrZXIgLnNtYXJ0aWNrZXItY2F0ZWdvcnkgaW1nIHtcbiAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cblxuLnNtYXJ0aWNrZXIgLnNtYXJ0aWNrZXItY2F0ZWdvcnkgbGk6bm90KC5hY3RpdmUtYWcpIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubmV3c3RpY2tlci1hcmVhLS12MiAuYWNtZS1uZXdzLXRpY2tlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIGhlaWdodDogMzBweDsgfVxuXG4ubmV3c3RpY2tlci1hcmVhLS12MiAuYWNtZS1uZXdzLXRpY2tlci1ib3gge1xuICBwYWRkaW5nLXRvcDogMDsgfVxuICAubmV3c3RpY2tlci1hcmVhLS12MiAuYWNtZS1uZXdzLXRpY2tlci1ib3ggdWwge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjk7IH1cbiAgICAubmV3c3RpY2tlci1hcmVhLS12MiAuYWNtZS1uZXdzLXRpY2tlci1ib3ggdWwgbGkge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG4ubmV3c3RpY2tlci1hcmVhLS12MiAuYWNtZS1uZXdzLXRpY2tlci1sYWJlbCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogI0JEM0MyRjtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDEwcHg7IH1cbiAgLm5ld3N0aWNrZXItYXJlYS0tdjIgLmFjbWUtbmV3cy10aWNrZXItbGFiZWw6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6IFwifFwiO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBjb2xvcjogI2NlMzIzMjtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4ubmV3cy10aWNrZXItYXJlYSB7XG4gIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0U5RjJFRjsgfVxuXG4vKiAtLS0tLSBORVdTVElDS0VSIFdJREdFVCAtLS0tLS0gRU5EIC0tLS0tLSAqL1xuLyogLS0tLS0tLSBNT1NUIFBBR0VTICAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG4uYm90dG9tRml4ZWQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDk7IH1cblxuLmJvb2ttYXJrLWNoZWNrIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmJvb2ttYXJrLWNoZWNrIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG1hcmdpbjogMDtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnBhZ2UtYnRucyAuYm9va21hcmstY2hlY2sgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuYm9va21hcmstY2hlY2sgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgfiBpIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgICAuYm9va21hcmstY2hlY2sgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgfiBpOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwi7qS9XCI7IH1cbiAgLmJvb2ttYXJrLWNoZWNrIGkge1xuICAgIGNvbG9yOiAjMkM4QTgyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGY3ZjY7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGhlaWdodDogMzhweDtcbiAgICB3aWR0aDogMzhweDtcbiAgICBwYWRkaW5nOiAxMnB4IDEwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgICAudC1oLWNvbnRlbnQgLmJvb2ttYXJrLWNoZWNrIGkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAgIC50LWgtY29udGVudCAuYm9va21hcmstY2hlY2sgaTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLnBvZGNhc3Qtc2NyZWVuIC5ib29rbWFyay1jaGVjayBpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuYm9va21hcmstY2hlY2sgaTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDllZGViOyB9XG5cbi5mb2xsb3ctdGFnIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmZvbGxvdy10YWcgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgICAuZm9sbG93LXRhZyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCB+IC5mb2xsb3ctY2hlY2sge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJDOEE4MjtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgICAuZm9sbG93LXRhZyBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCB+IC5mb2xsb3ctY2hlY2sgaTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIu6kvFwiO1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuZm9sbG93LXRhZyAuZm9sbG93LWNoZWNrIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gICAgY29sb3I6ICMyQzhBODI7XG4gICAgcGFkZGluZzogN3B4IDEzcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmZvbGxvdy10YWcgLmZvbGxvdy1jaGVjayB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9IH1cbiAgICAuZm9sbG93LXRhZyAuZm9sbG93LWNoZWNrIGkge1xuICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDNweDsgfVxuXG4udC1oIHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4udGh1bWIge1xuICB3aWR0aDogNzVweDtcbiAgaGVpZ2h0OiA3NXB4OyB9XG4gIC50aHVtYiBpbWcge1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5vcC1zbGlkZXIgLm9wLXNsaWRlci1pdGVtIC5wb2RjYXN0LWl0ZW0ge1xuICBtYXJnaW4tcmlnaHQ6IDEuMjgxMjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAxLjI4MTI1cmVtOyB9XG5cbi5vcC1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICBtYXJnaW4tcmlnaHQ6IC0xLjI4MTI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTEuMjgxMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtOyB9XG5cbi5vcC1zbGlkZXIgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOWUyZTA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnNwb3RsaWdodC1jYXJvdXNlbCAuYXJ0aWNsZS1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuLnNwb3RsaWdodC1jYXJvdXNlbCxcbi52aWRlby1jYXJvdXNlbCB7XG4gIC8qIE1vYmlsZSBMYW5kc2NhcGUgKi9cbiAgLyogTW9iaWxlIFBvcnRyYXRlICovXG4gIC8qIE1vYmlsZSBQb3J0cmF0ZSAtIExhbmRzY2FwZSAqLyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDMyMHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDg5NnB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMikgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLnNwb3RsaWdodC1jYXJvdXNlbCA+IC5jZWxsLFxuICAgIC52aWRlby1jYXJvdXNlbCA+IC5jZWxsIHtcbiAgICAgIHdpZHRoOiBjYWxjKDcwJSAtIDQwcHgpICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA4OTZweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLnNwb3RsaWdodC1jYXJvdXNlbCA+IC5jZWxsLFxuICAgIC52aWRlby1jYXJvdXNlbCA+IC5jZWxsIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KSAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aDogMzIwcHgpIGFuZCAobWF4LWRldmljZS13aWR0aDogODk2cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSB7XG4gICAgLnNwb3RsaWdodC1jYXJvdXNlbCxcbiAgICAudmlkZW8tY2Fyb3VzZWwge1xuICAgICAgZmxleC1mbG93OiBub3dyYXA7XG4gICAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgICBzY3JvbGwtc25hcC10eXBlOiB4IG1hbmRhdG9yeTtcbiAgICAgIG1hcmdpbi1yaWdodDogLTFyZW0gIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAwLjQ3NXJlbTtcbiAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTsgfVxuICAgICAgLnNwb3RsaWdodC1jYXJvdXNlbDo6LXdlYmtpdC1zY3JvbGxiYXIsXG4gICAgICAudmlkZW8tY2Fyb3VzZWw6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLnNwb3RsaWdodC1jYXJvdXNlbCA+IC5jZWxsLFxuICAgICAgLnZpZGVvLWNhcm91c2VsID4gLmNlbGwge1xuICAgICAgICBzY3JvbGwtc25hcC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07IH1cbiAgICAgIC5zcG90bGlnaHQtY2Fyb3VzZWwuZ3V0dGVycy0xeCA+IC5jZWxsLFxuICAgICAgLnZpZGVvLWNhcm91c2VsLmd1dHRlcnMtMXggPiAuY2VsbCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zcG90bGlnaHQtY2Fyb3VzZWwge1xuICAgIHJvdy1nYXA6IDMwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAub2JqZWN0cy1saXN0LnZpZGVvLWNhcm91c2VsIHtcbiAgICBmbGV4LWZsb3c6IG5vd3JhcDtcbiAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgMC40NzVyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyB9XG4gICAgLm9iamVjdHMtbGlzdC52aWRlby1jYXJvdXNlbDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vYmplY3RzLWxpc3QudmlkZW8tY2Fyb3VzZWwgPiAub2JqZWN0LWl0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpICFpbXBvcnRhbnQ7XG4gICAgICBzY3JvbGwtc25hcC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbiAgICAgIGZsZXg6IDAgMCBhdXRvOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmxpc3Qtc2Nyb2xsIHtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gICAgLyogSW50ZXJuZXQgRXhwbG9yZXIgMTArICovXG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAgIC8qIEZpcmVmb3ggKi9cbiAgICBmbGV4LWZsb3c6IG5vd3JhcDtcbiAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgMC40NzVyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLmxpc3Qtc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgLyogU2FmYXJpIGFuZCBDaHJvbWUgKi8gfVxuICAgIC5saXN0LXNjcm9sbCAuc2VlLW1vcmUtbGluayB7XG4gICAgICBmbGV4LXNocmluazogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5zcG90bGlnaHQtY2Fyb3VzZWwgLnNsaWNrLWxpc3QsXG4gIC5zbS1jYXJvdXNlbCAuc2xpY2stbGlzdCB7XG4gICAgcGFkZGluZy1yaWdodDogMHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnNwb3RsaWdodC1jYXJvdXNlbCAuc2xpY2stc2xpZGUsXG4gIC5zbS1jYXJvdXNlbCAuc2xpY2stc2xpZGUge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG4gIC5zcG90bGlnaHQtY2Fyb3VzZWwgLm93bC1zdGFnZS1vdXRlcixcbiAgLnNtLWNhcm91c2VsIC5vd2wtc3RhZ2Utb3V0ZXIge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmZsZXgtZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDI3JSAzMy4zMyU7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImEgYiBiXCIgXCJjIGIgYlwiIFwiYyBiIGJcIjsgfVxuICAgIC5mbGV4LWdyaWQgLmMxIHtcbiAgICAgIGdyaWQtYXJlYTogYTsgfVxuICAgIC5mbGV4LWdyaWQgLmMyIHtcbiAgICAgIGdyaWQtYXJlYTogYjsgfVxuICAgIC5mbGV4LWdyaWQgLmMzIHtcbiAgICAgIGdyaWQtYXJlYTogYzsgfSB9XG5cbi5hdXRob3ItaXRlbS10aXRsZSB7XG4gIGNvbG9yOiAjMkM4QTgyOyB9XG5cbi5hdXRob3ItaXRlbSAubWVkaWEtb2JqZWN0OmhvdmVyIGltZyB7XG4gIGZpbHRlcjogZ3JheXNjYWxlKDApOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5maXhlZC15IHtcbiAgICBoZWlnaHQ6IDgwdmg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC52ZXJ0aWNhbC1zY3JvbGwge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgaGVpZ2h0OiA4MHZoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgICAvKiBJRSBhbmQgRWRnZSAqL1xuICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTtcbiAgICAvKiBGaXJlZm94ICovIH1cbiAgICAudmVydGljYWwtc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmNhdGVnb3J5LW1lbnUge1xuICBwYWRkaW5nOiAxcmVtIDA7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB3aWR0aDogMTAwJTsgfVxuICAuY2F0ZWdvcnktbWVudS5maXhlZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiA5O1xuICAgIGJhY2tncm91bmQ6ICNFOUYyRUY7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuLmNhdGVnb3J5LW1lbnUtYWRkIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTsgfVxuXG4uY2F0ZWdvcnktbWVudS10YWdzIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLmNhdGVnb3J5LXRhZ3Mge1xuICBwYWRkaW5nOiAxcmVtIDA7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLmNhdGVnb3J5LXRhZ3MgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTsgfVxuICAgIC5jYXRlZ29yeS10YWdzIGxpLmFjdGl2ZSBhLCAuY2F0ZWdvcnktdGFncyBsaS5pcy1hY3RpdmUgYSB7XG4gICAgICBib3JkZXItY29sb3I6ICMwMDAwMDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuY2F0ZWdvcnktdGFncyBsaS5hY3RpdmUgYnV0dG9uLCAuY2F0ZWdvcnktdGFncyBsaS5pcy1hY3RpdmUgYnV0dG9uIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzAwMDAwMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuY2F0ZWdvcnktdGFncyBidXR0b246bm90KC5hdXRob3ItdGFnKSxcbiAgLmNhdGVnb3J5LXRhZ3MgYTpub3QoLmF1dGhvci10YWcpIHtcbiAgICBmb250LWZhbWlseTogXCJFZmZyYVwiO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjN2Q4ZDY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBjb2xvcjogIzY0N2U3YztcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLmNhdGVnb3J5LXRhZ3MgYnV0dG9uOm5vdCguYXV0aG9yLXRhZyk6aG92ZXIsIC5jYXRlZ29yeS10YWdzIGJ1dHRvbjpub3QoLmF1dGhvci10YWcpLmFjdGl2ZSxcbiAgICAuY2F0ZWdvcnktdGFncyBhOm5vdCguYXV0aG9yLXRhZyk6aG92ZXIsXG4gICAgLmNhdGVnb3J5LXRhZ3MgYTpub3QoLmF1dGhvci10YWcpLmFjdGl2ZSB7XG4gICAgICBib3JkZXItY29sb3I6ICMwMDAwMDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmNhdGVnb3J5LW1lbnUgLmNhdGVnb3J5LXRhZ3Mge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uYXV0aG9yLXRhZ3Mge1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLmF1dGhvci10YWdzIC5vd2wtc3RhZ2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuYXV0aG9yLXRhZ3MgYnV0dG9uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLmF1dGhvci10YWdzIGxpOm5vdCguYWxsLXRhZykuaXMtYWN0aXZlIGEsIC5hdXRob3ItdGFncyBsaTpub3QoLmFsbC10YWcpOmhvdmVyIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjMkM4QTgyOyB9XG4gIC5hdXRob3ItdGFncyBsaTpub3QoLmFsbC10YWcpLmlzLWFjdGl2ZSBidXR0b24sIC5hdXRob3ItdGFncyBsaTpub3QoLmFsbC10YWcpOmhvdmVyIGJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICMyQzhBODI7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLmNhdF9qcy5vd2wtY2Fyb3VzZWwgYSB7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5jYXRfanMub3dsLWNhcm91c2VsIC5vd2wtbmF2IGJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBoZWlnaHQ6IDMwcHg7XG4gIHdpZHRoOiAyN3B4O1xuICBmb250LXNpemU6IDI1cHggIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgY29sb3I6ICM2NDdlN2M7IH1cbiAgLmNhdF9qcy5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgYnV0dG9uOmhvdmVyIHtcbiAgICBjb2xvcjogIzJDOEE4MjsgfVxuICAuY2F0X2pzLm93bC1jYXJvdXNlbCAub3dsLW5hdiBidXR0b24uZGlzYWJsZWQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLmNhdF9qcy5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgYnV0dG9uLm93bC1wcmV2IHtcbiAgcmlnaHQ6IDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgYmFja2dyb3VuZDogI2U5ZjJlZjtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDI0MiwgMjQ4LCAyNDYsIDApIDAlLCByZ2JhKDI0MiwgMjQ4LCAyNDYsIDAuODUpIDQ1JSwgI2U5ZjJlZiAxMDAlKTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj1cIiNmMmY4ZjZcIixlbmRDb2xvcnN0cj1cIiNmMmY4ZjZcIixHcmFkaWVudFR5cGU9MSk7IH1cblxuLmNhdF9qcy5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgYnV0dG9uLm93bC1uZXh0IHtcbiAgbGVmdDogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJhY2tncm91bmQ6ICNlOWYyZWY7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyNzBkZWcsIHJnYmEoMjQyLCAyNDgsIDI0NiwgMCkgMCUsIHJnYmEoMjQyLCAyNDgsIDI0NiwgMC44NSkgNDUlLCAjZTlmMmVmIDEwMCUpO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPVwiI2YyZjhmNlwiLGVuZENvbG9yc3RyPVwiI2YyZjhmNlwiLEdyYWRpZW50VHlwZT0xKTsgfVxuXG4uYXV0aG9yLXRhZyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMzVweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5hdXRob3ItdGFnIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMzBweDsgfSB9XG4gIC5hdXRob3ItdGFnIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBmb250LWZhbWlseTogXCJFZmZyYVwiO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgLmF1dGhvci10YWcgaW1nIHtcbiAgICB3aWR0aDogMzNweDtcbiAgICBoZWlnaHQ6IDMzcHg7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7IH1cbiAgICAub3dsLWNhcm91c2VsIC5hdXRob3ItdGFnIGltZyB7XG4gICAgICB3aWR0aDogMzNweDtcbiAgICAgIGhlaWdodDogMzNweDsgfVxuXG4uYy10YWJzIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkNWRjZGM7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0U5RjJFRjtcbiAgei1pbmRleDogMjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jLXRhYnMge1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cbiAgLmMtdGFicyBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogNDBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuYy10YWJzIGxpIHtcbiAgICAgICAgd2lkdGg6IDMzLjMzJTsgfVxuICAgICAgICAuYy10YWJzIGxpOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAgIC5jLXRhYnMgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG4gIC5jLXRhYnMgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDEwcHggMCA2cHg7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiAjOTY5Njk2O1xuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuXG4uYy10YWJzX2pzIGEuaXMtYWN0aXZlIHtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjMkM4QTgyOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5jLXRhYi1jb250ZW50X2pzIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC50YWItYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbmhyIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI0QxRDVENTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGhyIHtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1jb2x1bW4tMiBocixcbiAgICAuYmxvY2std3JhcHBlciBociB7XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfSB9XG5cbi50YWJzLWNvbnRlbnQge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAudGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5udW1iZXJzLWNvdW50IHtcbiAgY29sb3I6ICMyQzhBODI7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4udG9wLWZpdmUgLnRhYnMtY29udGVudCBhOmhvdmVyIHtcbiAgY29sb3I6ICMyQzhBODI7IH1cblxuLnRvcC1maXZlIC5udW1iZXJzLWNvdW50IHtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cblxuLyogLS0tLS0tLSBNT1NUIFBBR0VTICAgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0gVklERU8gQkxPQ0sgLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuLmJsb2NrLWNvbnRlbnQgLnRhYnMtcGFuZWwge1xuICBwYWRkaW5nOiAwOyB9XG5cbi5jYXRlZ29yeS1uYW1lIHtcbiAgY29sb3I6ICMyQzhBODI7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiRWZmcmFcIjsgfVxuICAuYmxvY2std3JhcHBlciAuY2F0ZWdvcnktbmFtZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuY2F0ZWdvcnktbmFtZSBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAgIC5jYXRlZ29yeS1uYW1lIGE6aG92ZXIge1xuICAgICAgY29sb3I6IHJnYmEoNDQsIDEzOCwgMTMwLCAwLjcyKTsgfVxuXG4udmlkZW8tc2VjdGlvbiAudGFicyB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjNTU1NTU1O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLnZpZGVvLXNlY3Rpb24gLnRhYnMge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAgIC52aWRlby1zZWN0aW9uIC50YWJzIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtOyB9XG4gICAgICAudmlkZW8tc2VjdGlvbiAudGFicy5oYXMtc2VwYXJhdG9yIGxpIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAgIC52aWRlby1zZWN0aW9uIC50YWJzIGxpIHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDFyZW0pO1xuICAgICAgYm9yZGVyLWJvdHRvbTogdHJhbnNwYXJlbnQ7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgICBtYXJnaW4tbGVmdDogMXJlbTsgfSB9XG4gIC52aWRlby1zZWN0aW9uIC50YWJzIGxpOmxhc3QtY2hpbGQgLm1lZGlhLW9iamVjdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKG1heC13aWR0aDogMTM2OHB4KSB7XG4gICAgLnZpZGVvLXNlY3Rpb24gLnRhYnMgbGk6Zmlyc3QtY2hpbGQsIC52aWRlby1zZWN0aW9uIC50YWJzIGxpOm50aC1jaGlsZCgzKSB7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNEMUQ1RDU7IH0gfVxuICAudmlkZW8tc2VjdGlvbiAudGFicyBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gICAgICAudmlkZW8tc2VjdGlvbiAudGFicyBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAudmlkZW8tc2VjdGlvbi52ZXJ0aWNhbC1zZXBhcmF0b3IgPiBkaXY6bm90KDpsYXN0LWNoaWxkKTphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH0gfVxuXG4udmlkZW8tc2VjdGlvbiAudGFicy10aXRsZSxcbi52aWRlby1zZWN0aW9uIC50YWJzLXZpZGVvLWl0ZW0ge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBwYWRkaW5nOiAwOyB9XG4gIC52aWRlby1zZWN0aW9uIC50YWJzLXRpdGxlID4gYSxcbiAgLnZpZGVvLXNlY3Rpb24gLnRhYnMtdmlkZW8taXRlbSA+IGEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAudmlkZW8tc2VjdGlvbiAudGFicy10aXRsZSA+IGE6Zm9jdXMsIC52aWRlby1zZWN0aW9uIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSwgLnZpZGVvLXNlY3Rpb24gLnRhYnMtdGl0bGUgPiBhOmhvdmVyLFxuICAgIC52aWRlby1zZWN0aW9uIC50YWJzLXZpZGVvLWl0ZW0gPiBhOmZvY3VzLFxuICAgIC52aWRlby1zZWN0aW9uIC50YWJzLXZpZGVvLWl0ZW0gPiBhW2FyaWEtc2VsZWN0ZWQ9XCJ0cnVlXCJdLFxuICAgIC52aWRlby1zZWN0aW9uIC50YWJzLXZpZGVvLWl0ZW0gPiBhOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgLnZpZGVvLXNlY3Rpb24gLnRhYnMtdGl0bGUuaXMtYWN0aXZlIGEsIC52aWRlby1zZWN0aW9uIC50YWJzLXRpdGxlOmhvdmVyIGEsXG4gIC52aWRlby1zZWN0aW9uIC50YWJzLXZpZGVvLWl0ZW0uaXMtYWN0aXZlIGEsXG4gIC52aWRlby1zZWN0aW9uIC50YWJzLXZpZGVvLWl0ZW06aG92ZXIgYSB7XG4gICAgY29sb3I6ICMyQzhBODI7IH1cbiAgLnZpZGVvLXNlY3Rpb24gLnRhYnMtdGl0bGUgLm1lZGlhLW9iamVjdCxcbiAgLnZpZGVvLXNlY3Rpb24gLnRhYnMtdmlkZW8taXRlbSAubWVkaWEtb2JqZWN0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC52aWRlby1zZWN0aW9uIC50YWJzLXRpdGxlIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCxcbiAgLnZpZGVvLXNlY3Rpb24gLnRhYnMtdmlkZW8taXRlbSAubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLnZpZGVvLXNlY3Rpb24gLnRhYnMtdGl0bGUgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkLFxuICAgICAgLnZpZGVvLXNlY3Rpb24gLnRhYnMtdmlkZW8taXRlbSAubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIGZsZXgtd3JhcDogaW5pdGlhbDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgICAgIC52aWRlby1zZWN0aW9uIC50YWJzLXRpdGxlIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCAudmlkZW8taXRlbS1kYXRhLFxuICAgICAgICAudmlkZW8tc2VjdGlvbiAudGFicy10aXRsZSAubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQgaDMsXG4gICAgICAgIC52aWRlby1zZWN0aW9uIC50YWJzLXZpZGVvLWl0ZW0gLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIC52aWRlby1pdGVtLWRhdGEsXG4gICAgICAgIC52aWRlby1zZWN0aW9uIC50YWJzLXZpZGVvLWl0ZW0gLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIGgzIHtcbiAgICAgICAgICBmbGV4OiAxOyB9XG4gICAgICAgIC52aWRlby1zZWN0aW9uIC50YWJzLXRpdGxlIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCAudmlkZW8taXRlbS1zaGFyZSxcbiAgICAgICAgLnZpZGVvLXNlY3Rpb24gLnRhYnMtdmlkZW8taXRlbSAubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQgLnZpZGVvLWl0ZW0tc2hhcmUge1xuICAgICAgICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC52aWRlby1zZWN0aW9uIC50YWJzLXZpZGVvLWl0ZW0ge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH0gfVxuXG4udmlkZW8tc2VjdGlvbiAudGFicy12aWRlby1pdGVtIC5tZWRpYS1vYmplY3QtaW1nIHtcbiAgd2lkdGg6IDY1LjU0cHg7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnZpZGVvLXNlY3Rpb24gLnRhYnMtdmlkZW8taXRlbSAubWVkaWEtb2JqZWN0LWltZyB7XG4gICAgICB3aWR0aDogMTQ0cHg7IH0gfVxuXG4udmlkZW8tc2VjdGlvbiAudGFicy12aWRlby1pdGVtIC5tZWRpYS1vYmplY3QgaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBhc3BlY3QtcmF0aW86IDMvMjtcbiAgb2JqZWN0LWZpdDogY292ZXI7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pIHtcbiAgLnZpZGVvLXNlY3Rpb24gLnRhYnMtdmlkZW8taXRlbSAubWVkaWEtb2JqZWN0IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfSB9XG5cbi52aWRlby1zZWN0aW9uIC50YWJzLXZpZGVvLWl0ZW0gaDMge1xuICBmb250LXNpemU6IDE2cHg7IH1cblxuLnZpZGVvLXNlY3Rpb24gLnZpZGVvLWl0ZW0tc2hhcmUge1xuICBjb2xvcjogIzJDOEE4MjtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBmb250LWZhbWlseTogXCJFZmZyYVwiOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnZpZGVvLXNlY3Rpb24gLnZpZGVvLWl0ZW0tc2hhcmUge1xuICAgICAgbWFyZ2luLXRvcDogYXV0bzsgfSB9XG4gIC52aWRlby1zZWN0aW9uIC52aWRlby1pdGVtLXNoYXJlIGkge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC52aWRlby1zZWN0aW9uIC52aWRlby1pdGVtLXNoYXJlOmhvdmVyIHtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAudmlkZW8tdGFicy1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9IH1cblxuLnZpZGVvLXRhYnMtY29udGVudCAudGFicy1wYW5lbCB7XG4gIHBhZGRpbmc6IDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnZpZGVvLXRhYnMtY29udGVudCAuYXJ0aWNsZS1pdGVtLXZpZGVvIC5qdy1mbGFnLWZsb2F0aW5nIC5qdy13cmFwcGVyLmp3LXJlc2V0IHtcbiAgICB0b3A6IGluaGVyaXQ7XG4gICAgYm90dG9tOiAzcmVtOyB9IH1cblxuLmFydGljbGUtdmlkZW8ge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC52aWRlby1jYXJvdXNlbCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zLjVyZW07IH1cbiAgICAudmlkZW8tY2Fyb3VzZWwgLmFydGljbGUtaXRlbSB7XG4gICAgICBwYWRkaW5nOiAwIDAuNXJlbTsgfVxuICAgIC52aWRlby1jYXJvdXNlbCAuc2xpY2stbGlzdCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwcHggIWltcG9ydGFudDsgfSB9XG5cbi52aWRlby1jYXJvdXNlbCAudmlkZW8taXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnNob3ctb3ZlcmJveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuc2hvdy1vdmVyYm94IC5vdmVyYm94IHtcbiAgICBvcGFjaXR5OiAxOyB9XG5cbi5vdmVyYm94IHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UgMHM7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kOiAjMDYyNjI2O1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoNiwgMzgsIDM4LCAwKSAwJSwgcmdiYSg2LCAzOCwgMzgsIDAuMzI1MzY4KSA0MiUsIHJnYmEoNiwgMzgsIDM4LCAwLjQ5OTAzNykgNzAlLCBibGFjayAxMDAlKTtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDYsIDM4LCAzOCwgMCkgMCUsIHJnYmEoNiwgMzgsIDM4LCAwLjMyNTM2OCkgNDIlLCByZ2JhKDYsIDM4LCAzOCwgMC40OTkwMzcpIDcwJSwgYmxhY2sgMTAwJSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoNiwgMzgsIDM4LCAwKSAwJSwgcmdiYSg2LCAzOCwgMzgsIDAuMzI1MzY4KSA0MiUsIHJnYmEoNiwgMzgsIDM4LCAwLjQ5OTAzNykgNzAlLCBibGFjayAxMDAlKTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj1cIiMwNjI2MjZcIixlbmRDb2xvcnN0cj1cIiMwMDAwMDBcIixHcmFkaWVudFR5cGU9MSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwOyB9XG4gIC5vdmVyYm94LmxvY2tlZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDYsIDM4LCAzOCwgMC44KTsgfVxuICAub3ZlcmJveCBzcGFuLmJ1dHRvbi5ob2xsb3cge1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItd2lkdGg6IDRweDtcbiAgICBib3JkZXItY29sb3I6ICNmZmZmZmY7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAub3ZlcmJveCBzcGFuLmJ1dHRvbi5ob2xsb3c6aG92ZXIge1xuICAgICAgY29sb3I6ICMyQzhBODI7IH1cbiAgLm92ZXJib3ggLndhdGNoLW5vdyB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5vdmVyYm94IC53YXRjaC1ub3cgaW1nIHtcbiAgICAgICAgd2lkdGg6IDQ2cHg7IH0gfVxuICAub3ZlcmJveCAudmlkZW8tZGV0YWlscyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTtcbiAgICBib3R0b206IDA7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICByaWdodDogMDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcGFkZGluZzogMXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAub3ZlcmJveCAudmlkZW8tZGV0YWlscyB7XG4gICAgICAgIHBhZGRpbmc6IDJyZW07IH0gfVxuICAgIC5vdmVyYm94IC52aWRlby1kZXRhaWxzIC52aWRlby1zdGFtcCB7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgLm92ZXJib3ggLnZpZGVvLWRldGFpbHMgLnZpZGVvLXN0YW1wIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAub3ZlcmJveCAudmlkZW8tZGV0YWlscyBoMiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgLm92ZXJib3ggLnZpZGVvLWRldGFpbHMgaDIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG5cbi5vdmVyYm94LWlubmVyIHtcbiAgcGFkZGluZzogNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHotaW5kZXg6IDE7IH1cbiAgLm92ZXJib3gtaW5uZXIgaS5pY29uLWFycm93LWxlZnQyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZmZmZmZmO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07IH1cblxuI2hhcy12aWRlbyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogLS0tLS0tLSBWSURFTyBCTE9DSyAtLS0tLS0tIEVORCAtLS0tLS0tLSAqL1xuLyogLS0tLS0tLSBWSURFTyBQQUdFUyAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG4udmlkZW8taGVybyB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnZpZGVvLWhlcm8ge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMXJlbTsgfSB9XG4gIC52aWRlby1oZXJvOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kOiAjMTkxOTFjO1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNSwgMjUsIDI4LCAwKSAwJSwgcmdiYSg2LCA2LCA2LCAwLjg3MTU4NikgNTclKTtcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjUsIDI1LCAyOCwgMCkgMCUsIHJnYmEoNiwgNiwgNiwgMC44NzE1ODYpIDU3JSk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNSwgMjUsIDI4LCAwKSAwJSwgcmdiYSg2LCA2LCA2LCAwLjg3MTU4NikgNTclKTtcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPVwiIzE5MTkxY1wiLGVuZENvbG9yc3RyPVwiIzA2MDYwNlwiLEdyYWRpZW50VHlwZT0xKTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7IH1cbiAgLnZpZGVvLWhlcm8gLnZpZGVvLWNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB6LWluZGV4OiAxOyB9XG4gIC52aWRlby1oZXJvIC52aWRlby10aXRsZSB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIGp1c3RpZnktc2VsZjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDEwJTsgfVxuICAgIC52aWRlby1oZXJvIC52aWRlby10aXRsZSBoMSB7XG4gICAgICBjb2xvcjogI2ZjMmMyYztcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC52aWRlby1oZXJvIC52aWRlby10aXRsZSBoMSB7XG4gICAgICAgICAgZm9udC1zaXplOiAzLjQzNzVyZW07IH0gfVxuICAgIC52aWRlby1oZXJvIC52aWRlby10aXRsZSBoNiB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAudmlkZW8taGVybyAudmlkZW8tY29udGVudC1hZnRlciB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gICAgcGFkZGluZzogMXJlbSAycmVtOyB9XG4gICAgLnZpZGVvLWhlcm8gLnZpZGVvLWNvbnRlbnQtYWZ0ZXIgcCB7XG4gICAgICBmb250LXNpemU6IDAuOTM3NXJlbTsgfVxuICAudmlkZW8taGVybyAuYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMnJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLnZpZGVvLWhlcm8gLmJ1dHRvbiBpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07IH1cbiAgLnZpZGVvLWhlcm8gLnZpZGVvLWltZyBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgb2JqZWN0LXBvc2l0aW9uOiB0b3A7IH1cblxuLnZpZGVvLXNjcmVlbiB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC52aWRlby1zY3JlZW4ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTsgfSB9XG4gIC52aWRlby1zY3JlZW4gLnZpZGVvLWRldGFpbHMge1xuICAgIGNvbG9yOiAjOTI5ODk4O1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBtYXJnaW4tdG9wOiAxcmVtOyB9XG4gIC52aWRlby1zY3JlZW4gLmFydGljbGUtaXRlbS1tZXRhIHtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4jaGFzLXZpZGVvIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAudmlkZW8taXRlbS1oZXJvIC52aWRlby1pdGVtIHtcbiAgICBtYXJnaW4tbGVmdDogLTFyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC52aWRlby1pdGVtLWhlcm8gLnZpZGVvLWl0ZW0ge1xuICAgIHBhZGRpbmctdG9wOiAxcmVtOyB9IH1cblxuLnZpZGVvLWl0ZW0taGVybyAudmlkZW8taXRlbSAucmVzcG9uc2l2ZS1lbWJlZCB7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudmlkZW8taXRlbS1oZXJvIC52aWRlby1pdGVtIC5yZXNwb25zaXZlLWVtYmVkIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IH0gfVxuXG4udmlkZW8taXRlbS1oZXJvIC52aWRlby1pdGVtLWNvbnRlbnQge1xuICBtYXJnaW4tdG9wOiAxcmVtOyB9XG4gIC52aWRlby1pdGVtLWhlcm8gLnZpZGVvLWl0ZW0tY29udGVudCBwIHtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICBjb2xvcjogIzlkOWQ5ZDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudmlkZW8taXRlbS10aXRsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfSB9XG5cbi52aWRlby1pdGVtLXRpdGxlIGgyIGE6aG92ZXIge1xuICBjb2xvcjogIzJDOEE4MjsgfVxuXG4udmlkZW8tYXNpZGUtbWV0YSB7XG4gIHdpZHRoOiAzMDBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC52aWRlby1hc2lkZS1tZXRhIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnZpZGVvLW1haW4gLnZpZGVvLXdyYXAgLnZpZGVvLWdyaWQgLnZpZGVvLWxpc3Qge1xuICAgIHJvdy1nYXA6IDQwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDsgfSB9XG5cbi8qIC0tLS0tLS0gVklERU8gUEFHRVMgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0gQU5JTUFURSAgIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cbkAtd2Via2l0LWtleWZyYW1lcyBzb2Qge1xuICBmcm9tIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsgfVxuICB0byB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfSB9XG5cbkBrZXlmcmFtZXMgc29kIHtcbiAgZnJvbSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7IH1cbiAgdG8ge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH0gfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc291IHtcbiAgZnJvbSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuICB0byB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHNvdSB7XG4gIGZyb20ge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cbiAgdG8ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApOyB9IH1cblxuLnNvZCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNvZDtcbiAgYW5pbWF0aW9uLW5hbWU6IHNvZDsgfVxuXG4uc291IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc291O1xuICBhbmltYXRpb24tbmFtZTogc291OyB9XG5cbi5hbmltYXRlZCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoOyB9XG5cbi8qIC0tLS0tLS0gQU5JTUFURSAgIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG4vKiAtLS0tLS0tIFBSSU5ULUVESVRJT04gUEFHRSAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG4ucHJpbnQtZWRpdGlvbi1jb3ZlciBpbWcge1xuICB3aWR0aDogMTAwJTsgfVxuXG4ucHJpbnQtZWRpdGlvbi1jb3Zlcl9fYnRuIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtc2l6ZTogMTZweDsgfVxuICAucHJpbnQtZWRpdGlvbi1jb3Zlcl9fYnRuIGkge1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cblxuLyogLS0tLS0tLSBQUklOVC1FRElUSU9OIFBBR0UgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0gSU4tRk9DVVMgU0VDVElPTiAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG4uaW4tZm9jdXMge1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDMyMHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDg5NnB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMikge1xuICAgIC5pbi1mb2N1czpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZmVjZTc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAtMTBweDtcbiAgICAgIHJpZ2h0OiAtMTBweDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHRvcDogMDsgfSB9XG5cbi5ibG9jay1vdmVybGF5LWJnIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICAvKiBNb2JpbGUgTGFuZHNjYXBlIGFuZCBQb3J0cmF0ZSAqLyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDMyMHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDg5NnB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMikge1xuICAgIC5ibG9jay1vdmVybGF5LWJnIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ibG9jay1vdmVybGF5LWJnIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgMjUlO1xuICAgICAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgLW1vei1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgLW8tYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBwYWRkaW5nOiAxLjVyZW0gMS41cmVtIDAuNXJlbTsgfSB9XG4gIC5ibG9jay1vdmVybGF5LWJnOmJlZm9yZSB7XG4gICAgLyogTW9iaWxlIExhbmRzY2FwZSBhbmQgUG9ydHJhdGUgKi8gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDMyMHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDg5NnB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMikge1xuICAgICAgLmJsb2NrLW92ZXJsYXktYmc6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmJsb2NrLW92ZXJsYXktYmc6YmVmb3JlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC4zMSkgMCwgcmdiYSgwLCAwLCAwLCAwLjk1KSAxMDAlKTsgfSB9XG4gIC5ibG9jay1vdmVybGF5LWJnIC5hcnRpY2xlLWl0ZW0tdGl0bGUgYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgICAuYmxvY2stb3ZlcmxheS1iZyAuYXJ0aWNsZS1pdGVtLXRpdGxlIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICMyQzhBODI7IH1cbiAgLmJsb2NrLW92ZXJsYXktYmcgLnNlY3Rpb24tdGl0bGUge1xuICAgIHotaW5kZXg6IDE7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi10b3A6IDJyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmJsb2NrLW92ZXJsYXktYmcgLnNlY3Rpb24tdGl0bGUge1xuICAgICAgICBtYXJnaW4tdG9wOiA3cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmJsb2NrLW92ZXJsYXktYmcgLnNlY3Rpb24tdGl0bGUgaDMge1xuICAgICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuYmxvY2stb3ZlcmxheS1iZyAuc2VjdGlvbi10aXRsZSBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDsgfSB9XG4gICAgLmJsb2NrLW92ZXJsYXktYmcgLnNlY3Rpb24tdGl0bGUgaDMgaW1nIHtcbiAgICAgIHdpZHRoOiAzNnB4OyB9XG4gIC5ibG9jay1vdmVybGF5LWJnIC5tb3JlIHtcbiAgICBsZWZ0OiAxLjVyZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMXJlbTtcbiAgICB6LWluZGV4OiAxO1xuICAgIC8qIE1vYmlsZSBMYW5kc2NhcGUgYW5kIFBvcnRyYXRlICovIH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA4OTZweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIHtcbiAgICAgIC5ibG9jay1vdmVybGF5LWJnIC5tb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgLmJsb2NrLW92ZXJsYXktYmcgLm1vcmUgYSB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgICAgLmJsb2NrLW92ZXJsYXktYmcgLm1vcmUgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjMkM4QTgyOyB9XG5cbi8qIC0tLS0tLS0gSU4tRk9DVVMgU0VDVElPTiAtLS0tLS0tIEVORCAtLS0tLS0tLSAqL1xuLyogLS0tLS0tLSBFRElUT1JTIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cbi5lZGl0b3ItaW1nIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICB3aWR0aDogMjEycHg7XG4gIGhlaWdodDogMjEycHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLXdlYmtpdC1tYXNrLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudCh3aGl0ZSwgYmxhY2spOyB9XG4gIC5tYWluLWVkaXRvcnMgLmVkaXRvci1pbWcge1xuICAgIHdpZHRoOiAzMDJweDtcbiAgICBoZWlnaHQ6IDMwMnB4OyB9XG4gICAgLm1haW4tZWRpdG9ycyAuZWRpdG9yLWltZyBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuZWRpdG9yLWltZy5hcnRpY2xlLWl0ZW0taW1nIGltZyB7XG4gICAgICBhc3BlY3QtcmF0aW86IGluaXRpYWw7IH0gfVxuXG4uZWRpdG9yaWFsLWxpc3Qge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmVkaXRvci1pdGVtLW5hbWUgaDMge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4uZWRpdG9yLWl0ZW0tbmFtZSBoNSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC4zcmVtOyB9XG5cbi5lZGl0b3ItaXRlbS1jYXQgaDYge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuXG4uZWRpdG9yLWl0ZW0tZGVzYyBwIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS40OyB9XG5cbi8qIC0tLS0tLS0gRURJVE9SUyAtLS0tLS0tIEVORCAtLS0tLS0tLSAqL1xuLyogLS0tLS0tLSBUQUdTIE1FTlUgKGV4LiBwb2RjYXN0LW11bHRpcGxlIHBhZ2UpIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cbi5wYWdlLXRhZ3Mge1xuICBtYXJnaW46IDFyZW0gMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wYWdlLXRhZ3Mge1xuICAgICAgbWFyZ2luOiAycmVtIDAgM3JlbTsgfSB9XG4gIC5wYWdlLXRhZ3MgPiB1bCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjRDFENUQ1OyB9XG4gICAgLnBhZ2UtdGFncyA+IHVsIGxpIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogMi41cmVtO1xuICAgICAgbWFyZ2luLXRvcDogMC44cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTsgfVxuICAgICAgLnBhZ2UtdGFncyA+IHVsIGxpLmFjdGl2ZSwgLnBhZ2UtdGFncyA+IHVsIGxpOmhvdmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgIC5wYWdlLXRhZ3MgPiB1bCBsaS5hY3RpdmU6YWZ0ZXIsIC5wYWdlLXRhZ3MgPiB1bCBsaTpob3ZlcjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYm90dG9tOiAtMXB4O1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJDOEE4MjsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgLnBhZ2UtdGFncyA+IHVsIGxpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICAgICAgICBmb250LXNpemU6IDEzcHg7IH0gfVxuICAgICAgLnBhZ2UtdGFncyA+IHVsIGxpIGEge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgICAgLnBhZ2UtdGFncyA+IHVsIGxpLmFjdGl2ZSBhLCAucGFnZS10YWdzID4gdWwgbGk6aG92ZXIgYSB7XG4gICAgICAgIGNvbG9yOiAjMkM4QTgyOyB9XG4gIC5wYWdlLXRhZ3Muc3R5bGUtMiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmY4ZjY7XG4gICAgei1pbmRleDogOTsgfVxuICAgIC5wYWdlLXRhZ3Muc3R5bGUtMiA+IHVsIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnBhZ2UtdGFncy5zdHlsZS0yID4gdWwge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFweDsgfSB9XG4gICAgICAucGFnZS10YWdzLnN0eWxlLTIgPiB1bCBsaSBhIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuICAgICAgLnBhZ2UtdGFncy5zdHlsZS0yID4gdWwgbGkuYWN0aXZlLCAucGFnZS10YWdzLnN0eWxlLTIgPiB1bCBsaTpob3ZlciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07IH1cbiAgICAgICAgLnBhZ2UtdGFncy5zdHlsZS0yID4gdWwgbGkuYWN0aXZlIGEsIC5wYWdlLXRhZ3Muc3R5bGUtMiA+IHVsIGxpOmhvdmVyIGEge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgICAucGFnZS10YWdzLnN0eWxlLTIgPiB1bCBsaTpvbmx5LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgICAucGFnZS10YWdzLnN0eWxlLTIgPiB1bCBsaTpvbmx5LWNoaWxkIGEge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuXG4ubXktdGFncy1tZW51IHtcbiAgei1pbmRleDogOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjhmNjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5teS10YWdzLW1lbnUjc2Nyb2xsLWNhdCB7XG4gICAgICBtYXJnaW4tbGVmdDogLTFyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMXJlbTsgfSB9XG4gIC5teS10YWdzLW1lbnUgdWwge1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgIC5teS10YWdzLW1lbnUgdWwgbGkge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgLm15LXRhZ3MtbWVudSB1bCBsaSBhIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cblxuLyogLS0tLS0tLSBUQUdTIE1FTlUgKGV4LiBwb2RjYXN0LW11bHRpcGxlIHBhZ2UpIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG4ucmVnaXN0ZXItd2lkZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDYwNTc7XG4gIHBhZGRpbmc6IDIuNXJlbSAxcmVtIDJyZW07XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBtYXJnaW4tdG9wOiAycmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnJlZ2lzdGVyLXdpZGUge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucmVnaXN0ZXItd2lkZSB7XG4gICAgICBwYWRkaW5nOiAycmVtO1xuICAgICAgaGVpZ2h0OiAyNzBweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICAucmVnaXN0ZXItd2lkZSA+IC5ncmlkLWNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAucmVnaXN0ZXItd2lkZSAuZ3JpZC14IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9IH1cbiAgLnJlZ2lzdGVyLXdpZGUgaDIge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAyOHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5yZWdpc3Rlci13aWRlIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAzNnB4OyB9IH1cbiAgLnJlZ2lzdGVyLXdpZGUgaDQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgZm9udC1zaXplOiAxOHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5yZWdpc3Rlci13aWRlIGg0IHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAucmVnaXN0ZXItd2lkZV9faW1nIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDFyZW07IH1cbiAgICAgIC5yZWdpc3Rlci13aWRlX19pbWcgaW1nIHtcbiAgICAgICAgd2lkdGg6IDE3OHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucmVnaXN0ZXItd2lkZV9faW1nIHtcbiAgICAgIG1hcmdpbi1yaWdodDogNXJlbTsgfSB9XG4gIC5yZWdpc3Rlci13aWRlX19idG4ge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBmb250LWZhbWlseTogXCJFZmZyYVwiO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiAjMDQyYjI3O1xuICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBwYWRkaW5nOiA1cHggMzBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAxMHB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlIDBzO1xuICAgIGxpbmUtaGVpZ2h0OiAyO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIC5yZWdpc3Rlci13aWRlX19idG4gaSB7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZSAwcztcbiAgICAgIGZvbnQtc2l6ZTogMTVweDsgfVxuICAgICAgW2Rpcj1cImx0clwiXSAucmVnaXN0ZXItd2lkZV9fYnRuIGkge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5yZWdpc3Rlci13aWRlX19idG4ge1xuICAgICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuICAgIC5yZWdpc3Rlci13aWRlX19idG46aG92ZXIge1xuICAgICAgY29sb3I6IGluaXRpYWw7XG4gICAgICBvcGFjaXR5OiAwLjk7IH1cbiAgICAgIC5yZWdpc3Rlci13aWRlX19idG46aG92ZXIgaSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTsgfVxuICAucmVnaXN0ZXItd2lkZV9fbGVmdCB7XG4gICAgbWFyZ2luOiAxcmVtIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5yZWdpc3Rlci13aWRlX19sZWZ0IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9IH1cbiAgLnJlZ2lzdGVyLXdpZGVfX2Nsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMXJlbTtcbiAgICBsZWZ0OiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4vKiAtLS0tLS0tIE5ld3NsZXR0ZXIgYmxvY2sgb24gaG9tZXBhZ2UgLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuLm5ld3NsZXR0ZXItaG9sZGVyIHtcbiAgcGFkZGluZzogMi41cmVtIDEuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5uZXdzbGV0dGVyLWhvbGRlciB7XG4gICAgICBwYWRkaW5nOiAxLjVyZW07IH0gfVxuICAubmV3c2xldHRlci1ob2xkZXIgaW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5uZXdzbGV0dGVyLWhvbGRlciBpbWcge1xuICAgICAgICB3aWR0aDogMTY4cHg7IH0gfVxuICAubmV3c2xldHRlci1ob2xkZXIgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNjA1NztcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLm5ld3NsZXR0ZXItaG9sZGVyIC5idXR0b24gaSB7XG4gICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgICAgIFtkaXI9XCJsdHJcIl0gLm5ld3NsZXR0ZXItaG9sZGVyIC5idXR0b24gaSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4vKiAtLS0tLS0tIE5ld3NsZXR0ZXIgYmxvY2sgb24gaG9tZXBhZ2UgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cbi5tYXAtaWZyYW1lIHtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247IH1cblxuLmVtcHR5LWNvbnRlbnQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmVtcHR5LWNvbnRlbnQtdGV4dCB7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICAgIGNvbG9yOiAjNzE3MTcxO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZW1wdHktY29udGVudC10ZXh0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgZm9udC1zaXplOiAzOHB4OyB9IH1cbiAgLmVtcHR5LWNvbnRlbnQtYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAwLjg1ZW0gM2VtOyB9XG5cbi5yYXRpby1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLnJhdGlvLWNvbnRhaW5lcjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLyogMTY6OSA9IDU2LjI1JSA9IGNhbGMoOSAvIDE2ICogMTAwJSkgKi9cbiAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlOyB9XG4gICAgLmdyaWQtaXRlbXMgLnJhdGlvLWNvbnRhaW5lcjphZnRlciB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlOyB9XG4gICAgLmxpZmVzdHlsZS1ncmlkIC5yYXRpby1jb250YWluZXI6YWZ0ZXIge1xuICAgICAgcGFkZGluZy1ib3R0b206IDg1JTsgfVxuICAgIC52aWRlby1zY3JlZW4gLnJhdGlvLWNvbnRhaW5lcjphZnRlciB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzglOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAudmlkZW8tc2NyZWVuIC5yYXRpby1jb250YWluZXI6YWZ0ZXIge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDAlOyB9IH1cbiAgLnJhdGlvLWNvbnRhaW5lci5lbnRyeS1tZWRpYS1oZXJvOmFmdGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogOTQuMjUlOyB9XG4gIC5yYXRpby1jb250YWluZXIuYWJvdXQtdmlkZW86YWZ0ZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAzMSU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLnJhdGlvLWNvbnRhaW5lci5hYm91dC12aWRlbzphZnRlciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA5My4zNCU7IH0gfVxuICAucmF0aW8tY29udGFpbmVyID4gYSxcbiAgLnJhdGlvLWNvbnRhaW5lciA+IHZpZGVvIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgdG9wOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBjb250ZW50OiBcIlwiOyB9XG4gIC5yYXRpby1jb250YWluZXIgaW1nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyOyB9XG5cbi5zbGljay1sb2FkZXIge1xuICBtYXgtaGVpZ2h0OiA1MDBweDtcbiAgbWluLWhlaWdodDogMjAwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCguLi9pbWcvbG9hZGVyLnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMzBweDsgfVxuICAuc2xpY2stbG9hZGVyLnNsaWNrLWluaXRpYWxpemVkLCAuc2xpY2stbG9hZGVyLm93bC1sb2FkZWQge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiBpbml0aWFsO1xuICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAuc2xpY2stbG9hZGVyIC5zbGljay1saXN0IHtcbiAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMjUwbXMgZWFzZS1pbi1vdXQ7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnNsaWNrLWxvYWRlci1zbSB7XG4gICAgbWF4LWhlaWdodDogNDAwcHg7XG4gICAgbWluLWhlaWdodDogMjAwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoLi4vaW1nL2xvYWRlci5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDsgfVxuICAgIC5zbGljay1sb2FkZXItc20gPiBkaXYge1xuICAgICAgb3BhY2l0eTogMDsgfVxuICAgIC5zbGljay1sb2FkZXItc20uc2xpY2staW5pdGlhbGl6ZWQsIC5zbGljay1sb2FkZXItc20ub3dsLWxvYWRlZCB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtYXgtaGVpZ2h0OiBpbml0aWFsO1xuICAgICAgbWluLWhlaWdodDogYXV0bztcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAgICAgLnNsaWNrLWxvYWRlci1zbS5zbGljay1pbml0aWFsaXplZCA+IGRpdiwgLnNsaWNrLWxvYWRlci1zbS5vd2wtbG9hZGVkID4gZGl2IHtcbiAgICAgICAgb3BhY2l0eTogMTsgfVxuICAgIC5zbGljay1sb2FkZXItc20gLnNsaWNrLWxpc3Qge1xuICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IDI1MG1zIGVhc2UtaW4tb3V0OyB9IH1cblxuLnNsaWRlci12MS5hdWRpby1wb2RjYXN0LFxuLnNsaWRlci12MS53cml0ZXJzLWxpc3Qge1xuICBoZWlnaHQ6IDQ1MHB4O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5zbGlkZXItdjEuYXVkaW8tcG9kY2FzdC5zbGljay1pbml0aWFsaXplZCxcbiAgLnNsaWRlci12MS53cml0ZXJzLWxpc3Quc2xpY2staW5pdGlhbGl6ZWQge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiBpbml0aWFsO1xuICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAuc2xpZGVyLXYxLmF1ZGlvLXBvZGNhc3QgLnNsaWNrLWxpc3QsXG4gIC5zbGlkZXItdjEud3JpdGVycy1saXN0IC5zbGljay1saXN0IHtcbiAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMjUwbXMgZWFzZS1pbi1vdXQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIC5zbGlkZXItdjEuYXVkaW8tcG9kY2FzdCAuc2xpY2stbGlzdCxcbiAgICAgIC5zbGlkZXItdjEud3JpdGVycy1saXN0IC5zbGljay1saXN0IHtcbiAgICAgICAgbWFyZ2luOiAwIC0xNXB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLnNsaWRlci12MS5hdWRpby1wb2RjYXN0IC5zbGljay1zbGlkZSxcbiAgICAuc2xpZGVyLXYxLndyaXRlcnMtbGlzdCAuc2xpY2stc2xpZGUge1xuICAgICAgbWFyZ2luOiAwIDE1cHg7IH0gfVxuXG4ub3dsLWRvdHMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLm93bC1kb3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMCA1cHg7IH1cbiAgLm93bC1kb3Qgc3BhbiB7XG4gICAgd2lkdGg6IDQ3cHg7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLm93bC1kb3QuYWN0aXZlIHNwYW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7IH1cblxuLnBhZ2luYXRpb24td3JhcCB7XG4gIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgLnBhZ2luYXRpb24td3JhcCAucGFnaW5hdGlvbiBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgLnBhZ2luYXRpb24td3JhcCAucGFnaW5hdGlvbiBsaS5jdXJyZW50LFxuICAgIC5wYWdpbmF0aW9uLXdyYXAgLnBhZ2luYXRpb24gbGk6bm90KC5wYWdlcl9faXRlbS0tZmlyc3QpOm5vdCgucGFnZXJfX2l0ZW0tLXByZXZpb3VzKTpub3QoLnBhZ2VyX19pdGVtLS1uZXh0KTpub3QoLnBhZ2VyX19pdGVtLS1sYXN0KSBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBsaW5lLWhlaWdodDogMS44OyB9XG4gICAgLnBhZ2luYXRpb24td3JhcCAucGFnaW5hdGlvbiBsaS5jdXJyZW50IGEge1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAucGFnaW5hdGlvbi13cmFwIC5wYWdpbmF0aW9uIGxpLnBhZ2VyX19pdGVtLS1maXJzdCBhLCAucGFnaW5hdGlvbi13cmFwIC5wYWdpbmF0aW9uIGxpLnBhZ2VyX19pdGVtLS1wcmV2aW91cyBhLCAucGFnaW5hdGlvbi13cmFwIC5wYWdpbmF0aW9uIGxpLnBhZ2VyX19pdGVtLS1uZXh0IGEsIC5wYWdpbmF0aW9uLXdyYXAgLnBhZ2luYXRpb24gbGkucGFnZXJfX2l0ZW0tLWxhc3QgYSB7XG4gICAgICBwYWRkaW5nOiA1cHggMTBweCAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5wYWdpbmF0aW9uLXdyYXAgLnBhZ2luYXRpb24gbGkucGFnZXJfX2l0ZW0tLWZpcnN0LCAucGFnaW5hdGlvbi13cmFwIC5wYWdpbmF0aW9uIGxpLnBhZ2VyX19pdGVtLS1sYXN0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi8qIC0tLS0tLS0tIEZpbmFsIHNheSAtLS0tLS0tLS0tLS0tLS0tIFN0YXJ0IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uaC1zcGFjZWQgPiBkaXY6bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1ib3R0b206IDIuM3JlbTsgfVxuXG4uY29sb3JlZC1zZXBhcmF0b3IgPiBkaXY6bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRDFENUQ1O1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jb2xvcmVkLXNlcGFyYXRvciA+IGRpdjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMkM4QTgyOyB9IH1cblxuLm1vcmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiAjNzE3MTcxOyB9XG4gIC5tb3JlIGEge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LWZhbWlseTogXCJFZmZyYVwiO1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAubW9yZSBpIHtcbiAgICBmb250LXNpemU6IDhweDtcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGNvbG9yOiBpbmhlcml0OyB9XG5cbi5zZWUtbW9yZS1saW5rIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDVweDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnNlZS1tb3JlLWxpbmsge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgLnNlZS1tb3JlLWxpbmsucHJpbWFyeSB7XG4gICAgY29sb3I6ICMyQzhBODI7IH1cbiAgICAuc2VlLW1vcmUtbGluay5wcmltYXJ5OmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi5zZWN0aW9uLWJnLTEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFmM2YyOyB9XG5cbi5ibG9jay1jdXN0b20tYmcsIC5wb2RjYXN0LWJsb2NrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxuLmJsb2NrLWN1c3RvbS1iZy0yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZjBlZjtcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxuLmJsb2NrLWN1c3RvbS1iZy0zIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZWRlYztcbiAgY29sb3I6ICMwMDAwMDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuYmxvY2stY3VzdG9tLWJnLTMuaGFzLXBhZGRpbmcge1xuICAgICAgcGFkZGluZzogMXJlbSAwOyB9IH1cblxuLmJsb2NrLWN1c3RvbS1iZy00IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RmZTNlMztcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxubGFiZWwgc3Bhbi5yZXF1aXJlZCB7XG4gIGNvbG9yOiByZWQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLWNvbGxhcHNlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zbWFsbC1ncmlkLWNvbGxhcHNlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbi5zbWFsbC1ncmlkLWNvbGxhcHNlIC5wYWRkaW5nLWhvcml6b250YWwtZm9yLXNtYWxsIC5ibG9jay10aXRsZS5zdHlsZS12MyBzcGFuLFxuLnNtYWxsLWdyaWQtY29sbGFwc2UgLnBhZGRpbmctaG9yaXpvbnRhbC1mb3Itc21hbGwgLnNlY3Rpb24tdGl0bGUuc3R5bGUtdjMgc3Bhbixcbi5zbWFsbC1ncmlkLWNvbGxhcHNlIC5wYWRkaW5nLWhvcml6b250YWwtZm9yLXNtYWxsIC5wYWdlLXRpdGxlLnN0eWxlLXYzIHNwYW4ge1xuICBwYWRkaW5nOiAwOyB9XG5cbi5zbWFsbC1ncmlkLWNvbGxhcHNlIC5wYWRkaW5nLWhvcml6b250YWwtZm9yLXNtYWxsIC5hcnRpY2xlLWl0ZW0tb3ZlcmJveC1pbm5lciB7XG4gIHBhZGRpbmc6IDA7IH1cblxuLm5ld3NsZXR0ZXItYXJlYSB7XG4gIGRpcmVjdGlvbjogbHRyOyB9XG4gIGZvb3RlciAubmV3c2xldHRlci1hcmVhIGlucHV0W3R5cGU9XCJlbWFpbFwiXSB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMjBweDtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAyMHB4OyB9XG4gICAgZm9vdGVyIC5uZXdzbGV0dGVyLWFyZWEgaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBib3JkZXItY29sb3I6ICMyQzhBODI7IH1cbiAgZm9vdGVyIC5uZXdzbGV0dGVyLWFyZWEgLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAyMHB4O1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAyMHB4OyB9XG4gICAgZm9vdGVyIC5uZXdzbGV0dGVyLWFyZWEgLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyQzhBODI7IH1cbiAgLm5ld3NsZXR0ZXItYXJlYSBpbnB1dFt0eXBlPVwiZW1haWxcIl0ge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBwYWRkaW5nLXRvcDogMTFweDsgfVxuICAgIC5uZXdzbGV0dGVyLWFyZWEgaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBib3JkZXItY29sb3I6ICMyQzhBODI7IH1cbiAgICAubmV3c2xldHRlci1hcmVhIGlucHV0W3R5cGU9XCJlbWFpbFwiXTpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgLm5ld3NsZXR0ZXItYXJlYSBpbnB1dFt0eXBlPVwiZW1haWxcIl06cGxhY2Vob2xkZXItc2hvd24ge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLm5ld3NsZXR0ZXItYXJlYSBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBib3JkZXI6IDA7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLm5ld3NsZXR0ZXItYXJlYSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyQzhBODI7IH1cbiAgICBbZGlyPVwibHRyXCJdIC5uZXdzbGV0dGVyLWFyZWEgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICBmb250LXNpemU6IDAuOTM3NXJlbTsgfVxuXG4ubmV3c2xldHRlci1pbnRybyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLm5ld3NsZXR0ZXItaW50cm8gaDUge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubmV3c2xldHRlci1pbnRybyBoNSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9IH1cbiAgICBmb290ZXIgLm5ld3NsZXR0ZXItaW50cm8gaDUge1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAgIGZvb3RlciAubmV3c2xldHRlci1pbnRybyBoNSB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiQXdzYXQgRGlnaXRhbFwiO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAubmV3c2xldHRlci1pbnRybyBoNiB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgZm9udC1mYW1pbHk6IFwiRWZmcmFcIjtcbiAgICBmb250LXNpemU6IDAuODc1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgZm9vdGVyIC5uZXdzbGV0dGVyLWludHJvIHtcbiAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTsgfSB9XG5cbi5tY19lbWJlZF9zaWdudXAgZGl2I21jZS1yZXNwb25zZXMge1xuICBmbG9hdDogbGVmdDtcbiAgdG9wOiAtMS40ZW07XG4gIHBhZGRpbmc6IDBlbSAwLjVlbSAwZW0gMC41ZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiA5MCU7XG4gIG1hcmdpbjogMCA1JTtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLm1jX2VtYmVkX3NpZ251cCBkaXYucmVzcG9uc2Uge1xuICBtYXJnaW46IDFlbSAwO1xuICBwYWRkaW5nOiAxZW0gMC41ZW0gMC41ZW0gMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZsb2F0OiBsZWZ0O1xuICB0b3A6IC0xLjVlbTtcbiAgei1pbmRleDogMTtcbiAgd2lkdGg6IDgwJTsgfVxuXG4ubWNfZW1iZWRfc2lnbnVwICNtY2UtZXJyb3ItcmVzcG9uc2Uge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5tY19lbWJlZF9zaWdudXAgI21jZS1zdWNjZXNzLXJlc3BvbnNlIHtcbiAgY29sb3I6ICM1MjkyMTQ7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm1jX2VtYmVkX3NpZ251cCBsYWJlbC5lcnJvciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiAxLjA1ZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmc6IDAuNWVtIDA7IH1cblxuLyogLS0tLS0tLSBTb2NpYWxzIEJ0bnMgU3R5bGVzIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zb2NpYWxzLWJ0bnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIGdhcDogMTZweDsgfSB9XG5cbi5jYW52YXMtcGFuZWwgLnNvY2lhbHMtYnRucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLnNvY2lhbHMtYnRucyBzcGFuIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tYWluLWhlYWRlci1iZWZvcmUgLnNvY2lhbHMtYnRucyBzcGFuIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA2OHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLm1haW4tZm9vdGVyLWJlZm9yZSAuc29jaWFscy1idG5zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG5cbi5zb2NpYWwtYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjMjUzQzNBO1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAwOyB9XG4gIC5zb2NpYWwtYnRuOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi0tbGVmdDogMDsgfVxuICAuc29jaWFsLWJ0biBpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAuc29jaWFsLWJ0bjpob3ZlciB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgbGluZWFyOyB9XG4gIGZvb3RlciAuc29jaWFsLWJ0biB7XG4gICAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgICBjb2xvcjogIzdjOWE5NDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICBmb290ZXIgLnNvY2lhbC1idG4ge1xuICAgICAgICBtYXJnaW46IDFyZW07IH0gfVxuICAubmF2cGFuZWwgLnNvY2lhbC1idG4ge1xuICAgIGNvbG9yOiAjN2M5YTk0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIC5uYXZwYW5lbCAuc29jaWFsLWJ0biB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDsgfSB9XG4gIC5tYWluLWhlYWRlci1iZWZvcmUgLnNvY2lhbC1idG46aG92ZXIsIC5tYWluLWhlYWRlci1iZWZvcmUgLnNvY2lhbC1idG46Zm9jdXMge1xuICAgIGNvbG9yOiAjMkM4QTgyOyB9XG4gIC5ibG9jay13cmFwcGVyIC5zb2NpYWwtYnRuIHtcbiAgICBtYXJnaW46IDAgMC44NXJlbTtcbiAgICBmb250LXNpemU6IDJyZW07IH1cbiAgLmV2ZW50cy1saXN0IC5zb2NpYWwtYnRuIHtcbiAgICBtYXJnaW46IDAgMC44NXJlbSAwIDA7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTsgfVxuXG4uc29jaWFscy1ibG9jayBhIHtcbiAgbWFyZ2luOiAwIDAuMjVyZW07XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgcGFkZGluZzogMC43NXJlbTsgfVxuICAuc29jaWFscy1ibG9jayBhIGkge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuLm9waW5pb24tYXV0aG9yIC5zb2NpYWxzLWJsb2NrID4gZGl2IHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuXG4ub3Bpbmlvbi1hdXRob3IgLnNvY2lhbHMtYmxvY2sgYSB7XG4gIGNvbG9yOiAjOTY5Njk2O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgcGFkZGluZzogN3B4O1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5vcGluaW9uLWF1dGhvciAuc29jaWFscy1ibG9jayBhOmhvdmVyLCAub3Bpbmlvbi1hdXRob3IgLnNvY2lhbHMtYmxvY2sgYTphY3RpdmUsIC5vcGluaW9uLWF1dGhvciAuc29jaWFscy1ibG9jayBhOmZvY3VzIHtcbiAgICBjb2xvcjogIzJDOEE4MjsgfVxuXG4ub3Bpbmlvbi1hdXRob3IgLnNvY2lhbHMtYmxvY2sgc3BhbiB7XG4gIG1hcmdpbi1yaWdodDogNXB4OyB9XG5cbi52aWRlby1wb3B1cC1tb2RhbCB7XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3MDcwNzA7XG4gIHBhZGRpbmc6IDUwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogMDtcbiAgdG9wOiA1MCUgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiA2MDBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC52aWRlby1wb3B1cC1tb2RhbCB7XG4gICAgICBwYWRkaW5nOiA0MHB4IDIwcHg7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gNjBweCkgIWltcG9ydGFudDtcbiAgICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgdG9wOiAyMCUgIWltcG9ydGFudDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSAhaW1wb3J0YW50O1xuICAgICAgcmlnaHQ6IGF1dG87IH0gfVxuICAudmlkZW8tcG9wdXAtbW9kYWwgLmNsb3NlLWJ1dHRvbixcbiAgLnZpZGVvLXBvcHVwLW1vZGFsIC5tb2RhbC1jbG9zZSB7XG4gICAgbGVmdDogNTBweDtcbiAgICB0b3A6IDM1cHg7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLnZpZGVvLXBvcHVwLW1vZGFsIC5jbG9zZS1idXR0b24sXG4gICAgICAudmlkZW8tcG9wdXAtbW9kYWwgLm1vZGFsLWNsb3NlIHtcbiAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgdG9wOiA0MHB4OyB9IH1cbiAgLnZpZGVvLXBvcHVwLW1vZGFsIGgyIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgY29sb3I6ICMyQzhBODI7XG4gICAgbWFyZ2luOiAwIDAgMjdweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RjZTBlMDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAudmlkZW8tcG9wdXAtbW9kYWwgaDIge1xuICAgICAgICBmb250LXNpemU6IDMzcHg7IH0gfVxuICAudmlkZW8tcG9wdXAtbW9kYWwgaDUge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC52aWRlby1wb3B1cC1tb2RhbCBoNSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIC52aWRlby1wb3B1cC1tb2RhbCAuc2hhcmUtaWNvbnMge1xuICAgIG1hcmdpbi1ib3R0b206IDI3cHg7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnZpZGVvLXBvcHVwLW1vZGFsIC5zaGFyZS1pY29ucyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfSB9XG4gICAgLnZpZGVvLXBvcHVwLW1vZGFsIC5zaGFyZS1pY29ucyB1bCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGdhcDogMzNweDsgfVxuICAgICAgLnZpZGVvLXBvcHVwLW1vZGFsIC5zaGFyZS1pY29ucyB1bCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAudmlkZW8tcG9wdXAtbW9kYWwgLnNoYXJlLWljb25zIHVsIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDUwcHggIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiA1MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZTRlZGVjOyB9XG4gICAgICAgIC52aWRlby1wb3B1cC1tb2RhbCAuc2hhcmUtaWNvbnMgdWwgYSBpIHtcbiAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgY29sb3I6ICMyQzhBODI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAudmlkZW8tcG9wdXAtbW9kYWwgLmNvcHktbGluayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG4gIC52aWRlby1wb3B1cC1tb2RhbCAuY29weS1saW5rIC5jb3B5LWxpbmstaW5wdXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAudmlkZW8tcG9wdXAtbW9kYWwgLmNvcHktbGluayAuY29weS1saW5rLWlucHV0IHtcbiAgICAgICAgd2lkdGg6IDMyOHB4OyB9IH1cbiAgICAudmlkZW8tcG9wdXAtbW9kYWwgLmNvcHktbGluayAuY29weS1saW5rLWlucHV0LmNvcGllZDpob3ZlcjpiZWZvcmUsIC52aWRlby1wb3B1cC1tb2RhbCAuY29weS1saW5rIC5jb3B5LWxpbmstaW5wdXQuY29waWVkOmhvdmVyOmFmdGVyLCAudmlkZW8tcG9wdXAtbW9kYWwgLmNvcHktbGluayAuY29weS1saW5rLWlucHV0LmNvcGllZDphY3RpdmU6YmVmb3JlLCAudmlkZW8tcG9wdXAtbW9kYWwgLmNvcHktbGluayAuY29weS1saW5rLWlucHV0LmNvcGllZDphY3RpdmU6YWZ0ZXIsIC52aWRlby1wb3B1cC1tb2RhbCAuY29weS1saW5rIC5jb3B5LWxpbmstaW5wdXQuY29waWVkOmZvY3VzOmJlZm9yZSwgLnZpZGVvLXBvcHVwLW1vZGFsIC5jb3B5LWxpbmsgLmNvcHktbGluay1pbnB1dC5jb3BpZWQ6Zm9jdXM6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgLnZpZGVvLXBvcHVwLW1vZGFsIC5jb3B5LWxpbmsgLmNvcHktbGluay1pbnB1dC5jb3BpZWQ6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IDEwMDAwMDE7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYm9yZGVyOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICByaWdodDogNTAlO1xuICAgICAgYm90dG9tOiAtNXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtNXB4O1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpOyB9XG4gICAgLnZpZGVvLXBvcHVwLW1vZGFsIC5jb3B5LWxpbmsgLmNvcHktbGluay1pbnB1dC5jb3BpZWQ6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogMTAwMDAwMDtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBwYWRkaW5nOiA1cHggOHB4O1xuICAgICAgZm9udDogbm9ybWFsIG5vcm1hbCAxMXB4LzEuNSBIZWx2ZXRpY2EsIGFyaWFsLCBuaW1idXNzYW5zbCwgbGliZXJhdGlvbnNhbnMsIGZyZWVzYW5zLCBjbGVhbiwgc2Fucy1zZXJpZiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiO1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICAgIHdoaXRlLXNwYWNlOiBwcmU7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IHN1YnBpeGVsLWFudGlhbGlhc2VkO1xuICAgICAgY29udGVudDogXCJDb3BpZWQhXCI7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICByaWdodDogNTAlO1xuICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7IH1cbiAgICAudmlkZW8tcG9wdXAtbW9kYWwgLmNvcHktbGluayAuY29weS1saW5rLWlucHV0IGlucHV0IHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDI4cHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGNkZmRmO1xuICAgICAgcGFkZGluZzogNXB4IDE3cHg7XG4gICAgICBoZWlnaHQ6IDQ3cHg7XG4gICAgICBjb2xvcjogIzcxNzE3MTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLnZpZGVvLXBvcHVwLW1vZGFsIC5jb3B5LWxpbmsgLmNvcHktbGluay1pbnB1dCBidXR0b24ge1xuICAgICAgd2lkdGg6IDQ1cHg7XG4gICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMXB4O1xuICAgICAgdG9wOiAxcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjMkM4QTgyO1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi8qIC0tLS0tLS0gU29jaWFscyBCdG5zIFN0eWxlcyAtLS0tLS0tIEVORCAtLS0tLS0tLSAqL1xuLyogLS0tLS0tLSBMZWFkZXJib2FyZCBBZCBTdHlsZXMgLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuLmxlYWRlcmJvYXJkLWJsb2NrIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5zdGlja3kgLmxlYWRlcmJvYXJkLWJsb2NrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLmxlYWRlcmJvYXJkLWJsb2NrIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH0gfVxuXG4vKiAtLS0tLS0tIExlYWRlcmJvYXJkIEFkIFN0eWxlcyAtLS0tLS0tIEVORCAtLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0gRmluYWwgc2F5IC0tLS0tLS0tLS0tLS0tLS0gRW5kIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AbWVkaWEgb25seSBzY3JlZW4ge1xuICAubm8tc3BhY2VyIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuICAubm8tdG9wLXNwYWNlciB7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgLm5vLWJvdHRvbS1zcGFjZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4gIC5uby1sZWZ0LXNwYWNlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAubm8tcmlnaHQtc3BhY2VyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLnRvcC1zcGFjZXItLXhsIHtcbiAgICBtYXJnaW4tdG9wOiAzcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnRvcC1zcGFjZXItLWwge1xuICAgIG1hcmdpbi10b3A6IDIuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC50b3Atc3BhY2VyLS1tIHtcbiAgICBtYXJnaW4tdG9wOiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgLnRvcC1zcGFjZXIge1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50OyB9XG4gIC50b3Atc3BhY2VyLS1zIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgLnRvcC1zcGFjZXItLXhzIHtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDsgfVxuICAuYm90dG9tLXNwYWNlci0teGwge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuICAuYm90dG9tLXNwYWNlci0tbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLmJvdHRvbS1zcGFjZXItLW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW0gIWltcG9ydGFudDsgfVxuICAuYm90dG9tLXNwYWNlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtICFpbXBvcnRhbnQ7IH1cbiAgLmJvdHRvbS1zcGFjZXItLXMge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuICAuYm90dG9tLXNwYWNlci0teHMge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuLnRleHQtdHJhbnNmb3JtLXVwcGVyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLnRleHQtdHJhbnNmb3JtLWNhcGl0YWxpemUge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuXG4uc21hbGwtdXAtMSAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLFxuLnNtYWxsLXVwLTEgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLnNtYWxsLXVwLTIgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbi5zbWFsbC11cC0yIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5zbWFsbC11cC0zIC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsXG4uc21hbGwtdXAtMyAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiByaWdodDsgfVxuXG4uc21hbGwtdXAtNCAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLFxuLnNtYWxsLXVwLTQgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLnNtYWxsLXVwLTUgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbi5zbWFsbC11cC01IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5zbWFsbC11cC02IC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsXG4uc21hbGwtdXAtNiAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiByaWdodDsgfVxuXG4uc21hbGwtdXAtNyAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLFxuLnNtYWxsLXVwLTcgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLnNtYWxsLXVwLTggLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbi5zbWFsbC11cC04IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tdXAtMSAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLFxuICAubWVkaXVtLXVwLTEgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAubWVkaXVtLXVwLTIgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLm1lZGl1bS11cC0yIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLm1lZGl1bS11cC0zIC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsXG4gIC5tZWRpdW0tdXAtMyAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5tZWRpdW0tdXAtNCAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLFxuICAubWVkaXVtLXVwLTQgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAubWVkaXVtLXVwLTUgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLm1lZGl1bS11cC01IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLm1lZGl1bS11cC02IC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsXG4gIC5tZWRpdW0tdXAtNiAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5tZWRpdW0tdXAtNyAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLFxuICAubWVkaXVtLXVwLTcgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAubWVkaXVtLXVwLTggLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLm1lZGl1bS11cC04IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtdXAtMSAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLFxuICAubGFyZ2UtdXAtMSAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5sYXJnZS11cC0yIC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsXG4gIC5sYXJnZS11cC0yIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmxhcmdlLXVwLTMgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLmxhcmdlLXVwLTMgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAubGFyZ2UtdXAtNCAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLFxuICAubGFyZ2UtdXAtNCAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5sYXJnZS11cC01IC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsXG4gIC5sYXJnZS11cC01IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmxhcmdlLXVwLTYgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLmxhcmdlLXVwLTYgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAubGFyZ2UtdXAtNyAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLFxuICAubGFyZ2UtdXAtNyAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5sYXJnZS11cC04IC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsXG4gIC5sYXJnZS11cC04IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtdXAtMSAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLFxuICAueGxhcmdlLXVwLTEgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAueGxhcmdlLXVwLTIgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLnhsYXJnZS11cC0yIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLnhsYXJnZS11cC0zIC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsXG4gIC54bGFyZ2UtdXAtMyAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC54bGFyZ2UtdXAtNCAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLFxuICAueGxhcmdlLXVwLTQgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAueGxhcmdlLXVwLTUgLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLnhsYXJnZS11cC01IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLnhsYXJnZS11cC02IC5jb2x1bW46bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsXG4gIC54bGFyZ2UtdXAtNiAuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC54bGFyZ2UtdXAtNyAuY29sdW1uOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLFxuICAueGxhcmdlLXVwLTcgLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAueGxhcmdlLXVwLTggLmNvbHVtbjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCxcbiAgLnhsYXJnZS11cC04IC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBbZGlyPVwicnRsXCJdIC5sYXJnZS11bmNlbnRlcmVkLFxuICBbZGlyPVwicnRsXCJdIC5sYXJnZS1wdXNoLTAsXG4gIFtkaXI9XCJydGxcIl0gLmxhcmdlLXB1bGwtMCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBwb3NpdGlvbjogc3RhdGljOyB9IH1cblxuLnZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuXG4uY2VudGVyLWVsZW1lbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG5cbi51c2UtbG9hZGVyIHtcbiAgaGVpZ2h0OiAzNjBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9sb2FkZXIuZ2lmKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlciB0cmFuc3BhcmVudDsgfVxuXG4ucm91bmQge1xuICBib3JkZXItcmFkaXVzOiAxMDAwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC13ZWJraXQtbWFzay1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQod2hpdGUsIGJsYWNrKTsgfVxuXG4uYnV0dG9uLXJhZGl1cyB7XG4gIGJvcmRlci1yYWRpdXM6IDQwcHg7IH1cblxuLmd1dHRlcnMtMXgge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTsgfVxuICAuZ3V0dGVycy0xeCA+IC5jZWxsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG5cbi5ndXR0ZXJzLS0xeCB7XG4gIG1hcmdpbi1yaWdodDogLTAuMTU2MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC4xNTYyNXJlbTsgfVxuICAuZ3V0dGVycy0tMXggPiAuY2VsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMC4xNTYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMTU2MjVyZW07IH1cblxuLmd1dHRlcnMtbWFyZ2luLTF4IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgLmd1dHRlcnMtbWFyZ2luLTF4IC5jZWxsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3V0dGVyLTIwLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTsgfVxuICAuZ3V0dGVyLTIwIC5jb2x1bW4ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3V0dGVyLTEwLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjMxMjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC4zMTI1cmVtOyB9XG4gIC5ndXR0ZXItMTAgLmNvbHVtbiB7XG4gICAgcGFkZGluZy1yaWdodDogMC4zMTI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC4zMTI1cmVtOyB9IH1cblxuLm1hcmdpbi10b3AtYXV0byB7XG4gIG1hcmdpbi10b3A6IGF1dG8gIWltcG9ydGFudDsgfVxuXG4uZmxleC1jb2wtZnVsbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGhlaWdodDogMTAwJTsgfVxuXG4ubm8tYm9yZGVyIHtcbiAgYm9yZGVyOiAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5wYWRkaW5nLWhvcml6b250YWwtZm9yLXNtYWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTsgfSB9XG5cbi53aXRoLXBhZGRpbmcge1xuICBwYWRkaW5nOiAxcmVtOyB9XG5cbi5oYXMtcGFkZGluZyB7XG4gIHBhZGRpbmc6IDJyZW0gMS41cmVtOyB9XG5cbi52ZXJ0aWNhbC1wYWRkIHtcbiAgcGFkZGluZzogMXJlbSAwOyB9XG5cbi5ibGFjay1iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7IH1cblxuLndoaXRlLWJnLCAubmV3c2xldHRlci1ob2xkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG5cbi5tYXhXaWR0aC1tZWRpdW0sXG4ubWF4V2lkdGgtc21hbGwsXG4ubWF4V2lkdGgteHNtYWxsIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLm1heFdpZHRoLW1lZGl1bSB7XG4gIG1heC13aWR0aDogODAwcHg7IH1cblxuLm1heFdpZHRoLXNtYWxsIHtcbiAgbWF4LXdpZHRoOiA2NzBweDsgfVxuXG4ubWF4V2lkdGgteHNtYWxsIHtcbiAgbWF4LXdpZHRoOiAzNjBweDsgfVxuXG4uZnVsbC1iZywgLnBvZGNhc3Qtc2luZ2xlLWJsb2NrLCAucmVnaXN0ZXItd2lkZSB7XG4gIHdpZHRoOiAxMDB2dztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA1MCU7XG4gIHJpZ2h0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtNTB2dztcbiAgbWFyZ2luLXJpZ2h0OiAtNTB2dzsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuZnVsbC1iZy1zbSwgLm5ld3NsZXR0ZXItaG9sZGVyIHtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICByaWdodDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtNTB2dztcbiAgICBtYXJnaW4tcmlnaHQ6IC01MHZ3OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmJvcmRlci1ib3R0b20tbWQtc20ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRDFENUQ1OyB9XG4gICAgLmJvcmRlci1ib3R0b20tbWQtc20uYXJ0aWNsZS1pdGVtIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5ib3JkZXItYm90dG9tLXNtYWxsIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0QxRDVENTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfSB9XG5cbi5oaWRlLWxhYmVsIC5sYWJlbCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmhpZGUtbGFiZWwtaDMgaDMgLmxhYmVsLWxpdmUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5oaWRlLWZpcnN0LXRpdGxlIC5maXJzdC10aXRsZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmhpZGUtc2Vjb25kLXRpdGxlIC5zZWNvbmQtdGl0bGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5oaWRlLWxvbmctZGVzY3JpcHRpb24gLmxvbmctZGVzY3JpcHRpb24ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5oaWRlLXNob3J0LWRlc2NyaXB0aW9uIC5zaG9ydC1kZXNjcmlwdGlvbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmhpZGUtaGlnaGxpZ2h0IC5lbnRyeS1oaWdobGlnaHQge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5oaWRlLW1ldGEgLmFydGljbGUtaXRlbS1tZXRhIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uaGlkZS1kYXRlIC5hcnRpY2xlLWl0ZW0tbWV0YSAuaWNvbi10aW1lLFxuLmhpZGUtZGF0ZSAuYXJ0aWNsZS1pdGVtLW1ldGEgdGltZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmhpZGUtaW1nIC5hcnRpY2xlLWl0ZW0taW1nLFxuLmhpZGUtaW1nIC5tZWRpYS1vYmplY3QtaW1nIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGlkZS1pbWctbGcgLmFydGljbGUtaXRlbS1pbWcsXG4gIC5oaWRlLWltZy1sZyAubWVkaWEtb2JqZWN0LWltZyB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5oaWRlLWNhdGVnb3J5IC5hcnRpY2xlLWl0ZW0tY2F0ZWdvcnkge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmhpZGUtY2F0ZWdvcnktbmFtZSAuY2F0ZWdvcnktbmFtZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmhpZGUtY2F0ZWdvcnktc20gLmNhdGVnb3J5LW5hbWUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uaGlkZS1jb250ZW50IC5hcnRpY2xlLWl0ZW0tY29udGVudCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmhpZGUtYXV0aG9yIC5tZXRhLWF1dGhvciB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uaGlkZS1oaWdobGlnaHQgLmVudHJ5LWhpZ2hsaWdodCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmhvdmVyLXpvb20ge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5ob3Zlci16b29tIGltZyB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjVzO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC41cztcbiAgICB0cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjVzO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzLCAtd2Via2l0LXRyYW5zZm9ybSAwLjVzOyB9XG4gIC5ob3Zlci16b29tOmhvdmVyIGltZyB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7IH1cblxuLmlucHV0LWNoZWNrYm94LCAud3JpdGVyLWNoZWNrIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSwgLmxvdHRpZS13cmFwIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSwgLm11bHRpLWNoZWNrIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSwgLmJvb2ttYXJrLWNoZWNrIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSwgLmZvbGxvdy10YWcgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgLyogQWRkIGlmIG5vdCB1c2luZyBhdXRvcHJlZml4ZXIgKi9cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAvKiBSZW1vdmUgbW9zdCBhbGwgbmF0aXZlIGlucHV0IHN0eWxlcyAqL1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMDsgfVxuIiwiJGZvbnQtcGF0aDogXCIuLi9mb250c1wiO1xuXG5AaW1wb3J0ICdpY29tb29uJztcbkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PVJvYm90bytTZXJpZjpvcHN6LHdnaHRAOC4uMTQ0LDQwMDs4Li4xNDQsNzAwOzguLjE0NCw4MDAmZGlzcGxheT1zd2FwJyk7XG4gXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdBd3NhdCBEaWdpdGFsJztcbiAgc3JjOiB1cmwoJyN7JGZvbnQtcGF0aH0vQXdzYXREaWdpdGFsLUJvbGQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vQXdzYXREaWdpdGFsLUJvbGQud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgdXJsKCcjeyRmb250LXBhdGh9L0F3c2F0RGlnaXRhbC1Cb2xkLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdBd3NhdCBEaWdpdGFsJztcbiAgc3JjOiB1cmwoJyN7JGZvbnQtcGF0aH0vQXdzYXREaWdpdGFsLVJlZ3VsYXIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vQXdzYXREaWdpdGFsLVJlZ3VsYXIud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgICAgdXJsKCcjeyRmb250LXBhdGh9L0F3c2F0RGlnaXRhbC1SZWd1bGFyLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0F3c2F0IERpZ2l0YWwnO1xuICBzcmM6IHVybCgnI3skZm9udC1wYXRofS9Bd3NhdERpZ2l0YWwtQmxhY2sud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICB1cmwoJyN7JGZvbnQtcGF0aH0vQXdzYXREaWdpdGFsLUJsYWNrLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgIHVybCgnI3skZm9udC1wYXRofS9Bd3NhdERpZ2l0YWwtQmxhY2sudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuXG5cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkVmZnJhXCI7XG4gIHNyYzogdXJsKCcjeyRmb250LXBhdGh9L0VmZnJhLVJlZ3VsYXIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gIHVybCgnI3skZm9udC1wYXRofS9FZmZyYS1SZWd1bGFyLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJCZWlydXRcIjtcbiAgc3JjOiB1cmwoJyN7JGZvbnQtcGF0aH0vQmVpcnV0LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICB1cmwoJyN7JGZvbnQtcGF0aH0vQmVpcnV0LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG4gIiwiQGltcG9ydCBcInZhcmlhYmxlc1wiO1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICcjeyRpY29tb29uLWZvbnQtZmFtaWx5fSc7XG4gIHNyYzpcbiAgICB1cmwoJyN7JGljb21vb24tZm9udC1wYXRofS8jeyRpY29tb29uLWZvbnQtZmFtaWx5fS53b2ZmMj92czUnKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgdXJsKCcjeyRpY29tb29uLWZvbnQtcGF0aH0vI3skaWNvbW9vbi1mb250LWZhbWlseX0udHRmP3ZzNScpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICB1cmwoJyN7JGljb21vb24tZm9udC1wYXRofS8jeyRpY29tb29uLWZvbnQtZmFtaWx5fS53b2ZmP3ZzNScpIGZvcm1hdCgnd29mZicpLFxuICAgIHVybCgnI3skaWNvbW9vbi1mb250LXBhdGh9LyN7JGljb21vb24tZm9udC1mYW1pbHl9LnN2Zz92NSMjeyRpY29tb29uLWZvbnQtZmFtaWx5fScpIGZvcm1hdCgnc3ZnJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBibG9jaztcbn1cblxuLmljb21vb24taWNvbiB7XG4gIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXG4gIGZvbnQtZmFtaWx5OiAnI3skaWNvbW9vbi1mb250LWZhbWlseX0nICFpbXBvcnRhbnQ7XG4gIHNwZWFrOiBuZXZlcjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuXG4gIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuLmljb24tbGl2ZSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1saXZlOyAgICAgXG4gICAgY29sb3I6ICNmMDA7XG4gIH1cbn1cbi5pY29uLWNoZWNrLWdyZWVuIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWNoZWNrLWdyZWVuOyAgICAgXG4gICAgY29sb3I6ICMyYzhhODI7XG4gIH1cbn1cbi5pY29uLXBsdXMtZ3JlZW4ge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tcGx1cy1ncmVlbjsgICAgIFxuICAgIGNvbG9yOiAjMmM4YTgyO1xuICB9XG59XG4uaWNvbi1wbGF5LWNpcmNsZSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1wbGF5LWNpcmNsZTsgICAgIFxuICAgIGNvbG9yOiAjZjJmMmYyO1xuICB9XG59XG4uaWNvbi1ob2xsb3ctY2hlY2sge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24taG9sbG93LWNoZWNrOyAgICAgXG4gICAgY29sb3I6ICM5Mjk4OTg7XG4gIH1cbn1cbi5pY29uLWVhcnRoIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWVhcnRoOyBcbiAgfVxufVxuLmljb24tY29weSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1jb3B5OyAgICAgXG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbn1cbi5pY29uLWdyZWVuLWNoZWNrIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWdyZWVuLWNoZWNrOyAgICAgXG4gICAgY29sb3I6ICMyYzhhODI7XG4gIH1cbn1cbi5pY29uLWZhY2Vib29rLWNvbG9yZWQge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tZmFjZWJvb2stY29sb3JlZDsgICAgIFxuICAgIGNvbG9yOiAjMTg3N2YyO1xuICB9XG59XG4uaWNvbi1ib29rbWFyay1ncmVlbiB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1ib29rbWFyay1ncmVlbjsgICAgIFxuICAgIGNvbG9yOiAjMmM4YTgyO1xuICB9XG59XG4uaWNvbi11c2VyLWNpcmNsZS1vLWJsYWNrIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXVzZXItY2lyY2xlLW8tYmxhY2s7IFxuICB9XG59XG4uaWNvbi1zaWduLW91dCB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1zaWduLW91dDsgXG4gIH1cbn1cbi5pY29uLWJvb2ttYXJrLW91dGxpbmUge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tYm9va21hcmstb3V0bGluZTsgICAgIFxuICAgIGNvbG9yOiAjZmZmO1xuICB9XG59XG4uaWNvbi1hcnJvdy1sZWZ0MyB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1hcnJvdy1sZWZ0MzsgXG4gIH1cbn1cbi5pY29uLWFycm93LWxlZnQ0IHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWFycm93LWxlZnQ0OyAgICAgXG4gICAgY29sb3I6ICNlZmVjZTI7XG4gIH1cbn1cbi5pY29uLWFwcGxlLWNvbG9yZWQge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tYXBwbGUtY29sb3JlZDsgXG4gIH1cbn1cbi5pY29uLW5ld3Mge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tbmV3czsgICAgIFxuICAgIGNvbG9yOiAjZmZmO1xuICB9XG59XG4uaWNvbi1leWUxIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWV5ZTE7ICAgICBcbiAgICBjb2xvcjogIzlhOWE5YTtcbiAgfVxufVxuLmljb24tbG9jayB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1sb2NrOyAgICAgXG4gICAgY29sb3I6ICM5YTlhOWE7XG4gIH1cbn1cbi5pY29uLWVudmVsb3AxIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWVudmVsb3AxOyAgICAgXG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbn1cbi5pY29uLWVudmVsb3AyIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWVudmVsb3AyOyAgICAgXG4gICAgY29sb3I6ICM5YTlhOWE7XG4gIH1cbn1cbi5pY29uLWVudmVsb3AtZ3JlZW4ge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tZW52ZWxvcC1ncmVlbjsgICAgIFxuICAgIGNvbG9yOiAjMmM4YTgyO1xuICB9XG59XG4uaWNvbi1kcmFnLXZlcnRpY2FsIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWRyYWctdmVydGljYWw7IFxuICB9XG59XG4uaWNvbi1zaGFyZTIge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tc2hhcmUyOyAgICAgXG4gICAgY29sb3I6ICMyYzhhODI7XG4gIH1cbn1cbi5pY29uLXNoYXJlIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXNoYXJlOyAgICAgXG4gICAgY29sb3I6ICM0ZDRkNGQ7XG4gIH1cbn1cbi5pY29uLXVwbG9hZCB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi11cGxvYWQ7ICAgICBcbiAgICBjb2xvcjogIzRkNGQ0ZDtcbiAgfVxufVxuLmljb24tdXNlci1jaXJjbGUtbyB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi11c2VyLWNpcmNsZS1vOyAgICAgXG4gICAgY29sb3I6ICNmN2ZhZmE7XG4gIH1cbn1cbi5pY29uLWZpbGUtcGRmIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWZpbGUtcGRmOyAgICAgXG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbn1cbi5pY29uLWRhdGUge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tZGF0ZTsgICAgIFxuICAgIGNvbG9yOiAjYWZhZmFmO1xuICB9XG59XG4uaWNvbi1leWUge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tZXllOyAgICAgXG4gICAgY29sb3I6ICNhZmFmYWY7XG4gIH1cbn1cbi5pY29uLXBsYXkge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tcGxheTsgXG4gIH1cbn1cbi5pY29uLXBsYXktZ3JlZW4ge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tcGxheS1ncmVlbjsgICAgIFxuICAgIGNvbG9yOiAjMmM4YTgyO1xuICB9XG59XG4uaWNvbi1hcmNoaXZlIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWFyY2hpdmU7IFxuICB9XG59XG4uaWNvbi1hbGJ1bSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1hbGJ1bTsgICAgIFxuICAgIGNvbG9yOiAjZmZmO1xuICB9XG59XG4uaWNvbi1hcnJvdy1yaWdodC1ibGFjayB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1hcnJvdy1yaWdodC1ibGFjazsgXG4gIH1cbn1cbi5pY29uLWVkaXQge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tZWRpdDsgICAgIFxuICAgIGNvbG9yOiAjMmM4YTgyO1xuICB9XG59XG4uaWNvbi1jYWxlbmRhciB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1jYWxlbmRhcjsgICAgIFxuICAgIGNvbG9yOiAjYWZhZmFmO1xuICB9XG59XG4uaWNvbi1tZW51IHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLW1lbnU7ICAgICBcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxufVxuLmljb24tdGlrdG9rIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXRpa3RvazsgXG4gIH1cbn1cbi5pY29uLXRlbGVncmFtIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXRlbGVncmFtOyAgICAgXG4gICAgY29sb3I6ICMyY2E1ZTA7XG4gIH1cbn1cbi5pY29uLXBhdXNlIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXBhdXNlOyBcbiAgfVxufVxuLmljb24taW5zdGFncmFtIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWluc3RhZ3JhbTsgXG4gIH1cbn1cbi5pY29uLXNlYXJjaCB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1zZWFyY2g7IFxuICB9XG59XG4uaWNvbi1wcmludCB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1wcmludDsgXG4gIH1cbn1cbi5pY29uLXByaW50MSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1wcmludDE7IFxuICB9XG59XG4uaWNvbi1wcmludDIge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tcHJpbnQyOyBcbiAgfVxufVxuLmljb24td2luZCB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi13aW5kOyBcbiAgfVxufVxuLmljb24tY2xvdWR5IHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWNsb3VkeTsgXG4gIH1cbn1cbi5pY29uLXJhaW4ge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tcmFpbjsgXG4gIH1cbn1cbi5pY29uLWxpZ2h0bmlnaHQge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tbGlnaHRuaWdodDsgXG4gIH1cbn1cbi5pY29uLXNub3cge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tc25vdzsgXG4gIH1cbn1cbi5pY29uLXdlYXRoZXIge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24td2VhdGhlcjsgXG4gIH1cbn1cbi5pY29uLWZpbGUtcGRmMSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1maWxlLXBkZjE7IFxuICB9XG59XG4uaWNvbi1taWMge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tbWljOyBcbiAgfVxufVxuLmljb24tZmlyZSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1maXJlOyBcbiAgfVxufVxuLmljb24tYm9va21hcmsge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tYm9va21hcms7IFxuICB9XG59XG4uaWNvbi1ib29rbWFyazEge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tYm9va21hcmsxOyBcbiAgfVxufVxuLmljb24taGVhZHBob25lIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWhlYWRwaG9uZTsgXG4gIH1cbn1cbi5pY29uLWNhbGVuZGFyMSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1jYWxlbmRhcjE7IFxuICB9XG59XG4uaWNvbi10aW1lMSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi10aW1lMTsgXG4gIH1cbn1cbi5pY29uLXRpbWUge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tdGltZTsgXG4gIH1cbn1cbi5pY29uLWNpcmNsZSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1jaXJjbGU7IFxuICB9XG59XG4uaWNvbi1jbG9zZSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1jbG9zZTsgXG4gIH1cbn1cbi5pY29uLW1lbnUxIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLW1lbnUxOyBcbiAgfVxufVxuLmljb24tcXVvdGVzLWxlZnQge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tcXVvdGVzLWxlZnQ7IFxuICB9XG59XG4uaWNvbi1xdW90ZXMtcmlnaHQge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tcXVvdGVzLXJpZ2h0OyBcbiAgfVxufVxuLmljb24tYXJyb3ctcmlnaHQxIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWFycm93LXJpZ2h0MTsgXG4gIH1cbn1cbi5pY29uLWFycm93LWRvd24xIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWFycm93LWRvd24xOyBcbiAgfVxufVxuLmljb24tYXJyb3ctbGVmdDEge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tYXJyb3ctbGVmdDE7IFxuICB9XG59XG4uaWNvbi1hcnJvdy11cDEge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tYXJyb3ctdXAxOyBcbiAgfVxufVxuLmljb24tYXJyb3ctbGVmdCB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1hcnJvdy1sZWZ0OyBcbiAgfVxufVxuLmljb24tYXJyb3ctcmlnaHQge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tYXJyb3ctcmlnaHQ7IFxuICB9XG59XG4uaWNvbi1hcnJvdy11cCB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1hcnJvdy11cDsgXG4gIH1cbn1cbi5pY29uLWFycm93LWRvd24ge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tYXJyb3ctZG93bjsgXG4gIH1cbn1cbi5pY29uLXZvbHVtZSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi12b2x1bWU7IFxuICB9XG59XG4uaWNvbi1waG90b3Mge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tcGhvdG9zOyBcbiAgfVxufVxuLmljb24tcGxheTEge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tcGxheTE7IFxuICB9XG59XG4uaWNvbi1zZWFyY2gxIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXNlYXJjaDE7IFxuICB9XG59XG4uaWNvbi10ZWxlZ3JhbTEge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tdGVsZWdyYW0xOyBcbiAgfVxufVxuLmljb24td2hhdHNhcHAge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24td2hhdHNhcHA7IFxuICB9XG59XG4uaWNvbi15b3V0dWJlIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXlvdXR1YmU7IFxuICB9XG59XG4uaWNvbi1saW5rZWRpbiB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1saW5rZWRpbjsgXG4gIH1cbn1cbi5pY29uLWZhY2Vib29rIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWZhY2Vib29rOyBcbiAgfVxufVxuLmljb24tZmFjZWJvb2sxIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWZhY2Vib29rMTsgXG4gIH1cbn1cbi5pY29uLXR3aXR0ZXIge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tdHdpdHRlcjsgXG4gIH1cbn1cblxuIiwiJGljb21vb24tZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiICFkZWZhdWx0O1xuJGljb21vb24tZm9udC1wYXRoOiBcIi4uL2ZvbnRzXCIgIWRlZmF1bHQ7XG5cbiRpY29uLWxpdmU6IFwiXFxlOTQwXCI7XG4kaWNvbi1jaGVjay1ncmVlbjogXCJcXGU5M2NcIjtcbiRpY29uLXBsdXMtZ3JlZW46IFwiXFxlOTNiXCI7XG4kaWNvbi1wbGF5LWNpcmNsZTogXCJcXGU5MzlcIjtcbiRpY29uLWhvbGxvdy1jaGVjazogXCJcXGU5MzFcIjtcbiRpY29uLWVhcnRoOiBcIlxcZTk1M1wiO1xuJGljb24tY29weTogXCJcXGU5NTFcIjtcbiRpY29uLWdyZWVuLWNoZWNrOiBcIlxcZTkzMlwiO1xuJGljb24tZmFjZWJvb2stY29sb3JlZDogXCJcXGU5MzhcIjtcbiRpY29uLWJvb2ttYXJrLWdyZWVuOiBcIlxcZTkzZFwiO1xuJGljb24tdXNlci1jaXJjbGUtby1ibGFjazogXCJcXGU5M2ZcIjtcbiRpY29uLXNpZ24tb3V0OiBcIlxcZTk0OFwiO1xuJGljb24tYm9va21hcmstb3V0bGluZTogXCJcXGU5NGFcIjtcbiRpY29uLWFycm93LWxlZnQzOiBcIlxcZTk0ZlwiO1xuJGljb24tYXJyb3ctbGVmdDQ6IFwiXFxlOTUwXCI7XG4kaWNvbi1hcHBsZS1jb2xvcmVkOiBcIlxcZTkzZVwiO1xuJGljb24tbmV3czogXCJcXGU5NDJcIjtcbiRpY29uLWV5ZTE6IFwiXFxlOTQzXCI7XG4kaWNvbi1sb2NrOiBcIlxcZTk0NFwiO1xuJGljb24tZW52ZWxvcDE6IFwiXFxlOTQ2XCI7XG4kaWNvbi1lbnZlbG9wMjogXCJcXGU5NDdcIjtcbiRpY29uLWVudmVsb3AtZ3JlZW46IFwiXFxlOTQ5XCI7XG4kaWNvbi1kcmFnLXZlcnRpY2FsOiBcIlxcZTkzN1wiO1xuJGljb24tc2hhcmUyOiBcIlxcZTkzNlwiO1xuJGljb24tc2hhcmU6IFwiXFxlOTI3XCI7XG4kaWNvbi11cGxvYWQ6IFwiXFxlOTQxXCI7XG4kaWNvbi11c2VyLWNpcmNsZS1vOiBcIlxcZTkzYVwiO1xuJGljb24tZmlsZS1wZGY6IFwiXFxlOTM1XCI7XG4kaWNvbi1kYXRlOiBcIlxcZTkyNlwiO1xuJGljb24tZXllOiBcIlxcZTkyOFwiO1xuJGljb24tcGxheTogXCJcXGU5MjlcIjtcbiRpY29uLXBsYXktZ3JlZW46IFwiXFxlOTI1XCI7XG4kaWNvbi1hcmNoaXZlOiBcIlxcZTk0ZVwiO1xuJGljb24tYWxidW06IFwiXFxlOTQ1XCI7XG4kaWNvbi1hcnJvdy1yaWdodC1ibGFjazogXCJcXGU5MjRcIjtcbiRpY29uLWVkaXQ6IFwiXFxlOTUyXCI7XG4kaWNvbi1jYWxlbmRhcjogXCJcXGU5MjFcIjtcbiRpY29uLW1lbnU6IFwiXFxlOTIyXCI7XG4kaWNvbi10aWt0b2s6IFwiXFxlOTU0XCI7XG4kaWNvbi10ZWxlZ3JhbTogXCJcXGU5MDFcIjtcbiRpY29uLXBhdXNlOiBcIlxcZTkyM1wiO1xuJGljb24taW5zdGFncmFtOiBcIlxcZTkxZlwiO1xuJGljb24tc2VhcmNoOiBcIlxcZTkwMFwiO1xuJGljb24tcHJpbnQ6IFwiXFxlOTRiXCI7XG4kaWNvbi1wcmludDE6IFwiXFxlOTRjXCI7XG4kaWNvbi1wcmludDI6IFwiXFxlOTRkXCI7XG4kaWNvbi13aW5kOiBcIlxcZTkyYVwiO1xuJGljb24tY2xvdWR5OiBcIlxcZTkyYlwiO1xuJGljb24tcmFpbjogXCJcXGU5MmNcIjtcbiRpY29uLWxpZ2h0bmlnaHQ6IFwiXFxlOTJkXCI7XG4kaWNvbi1zbm93OiBcIlxcZTkyZlwiO1xuJGljb24td2VhdGhlcjogXCJcXGU5MGZcIjtcbiRpY29uLWZpbGUtcGRmMTogXCJcXGU5MzRcIjtcbiRpY29uLW1pYzogXCJcXGU5MzNcIjtcbiRpY29uLWZpcmU6IFwiXFxlOTIwXCI7XG4kaWNvbi1ib29rbWFyazogXCJcXGU5MmVcIjtcbiRpY29uLWJvb2ttYXJrMTogXCJcXGU5MzBcIjtcbiRpY29uLWhlYWRwaG9uZTogXCJcXGU5MWVcIjtcbiRpY29uLWNhbGVuZGFyMTogXCJcXGU5MTVcIjtcbiRpY29uLXRpbWUxOiBcIlxcZTkxOFwiO1xuJGljb24tdGltZTogXCJcXGU5MTlcIjtcbiRpY29uLWNpcmNsZTogXCJcXGU5MTRcIjtcbiRpY29uLWNsb3NlOiBcIlxcZTkxM1wiO1xuJGljb24tbWVudTE6IFwiXFxlOTEwXCI7XG4kaWNvbi1xdW90ZXMtbGVmdDogXCJcXGU5MTFcIjtcbiRpY29uLXF1b3Rlcy1yaWdodDogXCJcXGU5MTJcIjtcbiRpY29uLWFycm93LXJpZ2h0MTogXCJcXGU5MWFcIjtcbiRpY29uLWFycm93LWRvd24xOiBcIlxcZTkxYlwiO1xuJGljb24tYXJyb3ctbGVmdDE6IFwiXFxlOTFjXCI7XG4kaWNvbi1hcnJvdy11cDE6IFwiXFxlOTFkXCI7XG4kaWNvbi1hcnJvdy1sZWZ0OiBcIlxcZTkwMlwiO1xuJGljb24tYXJyb3ctcmlnaHQ6IFwiXFxlOTAzXCI7XG4kaWNvbi1hcnJvdy11cDogXCJcXGU5MTdcIjtcbiRpY29uLWFycm93LWRvd246IFwiXFxlOTE2XCI7XG4kaWNvbi12b2x1bWU6IFwiXFxlOTA0XCI7XG4kaWNvbi1waG90b3M6IFwiXFxlOTA1XCI7XG4kaWNvbi1wbGF5MTogXCJcXGU5MDZcIjtcbiRpY29uLXNlYXJjaDE6IFwiXFxlOTA3XCI7XG4kaWNvbi10ZWxlZ3JhbTE6IFwiXFxlOTA4XCI7XG4kaWNvbi13aGF0c2FwcDogXCJcXGU5MDlcIjtcbiRpY29uLXlvdXR1YmU6IFwiXFxlOTBiXCI7XG4kaWNvbi1saW5rZWRpbjogXCJcXGU5MGFcIjtcbiRpY29uLWZhY2Vib29rOiBcIlxcZTkwY1wiO1xuJGljb24tZmFjZWJvb2sxOiBcIlxcZTkwZFwiO1xuJGljb24tdHdpdHRlcjogXCJcXGU5MGVcIjtcblxuIiwiLy8gIEZvdW5kYXRpb24gZm9yIFNpdGVzIFNldHRpbmdzXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXG4vLyAgVGFibGUgb2YgQ29udGVudHM6XG4vL1xuLy8gICAxLiBHbG9iYWxcbi8vICAgMi4gQnJlYWtwb2ludHNcbi8vICAgMy4gVGhlIEdyaWRcbi8vICAgNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAgIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gICA2LiBBYmlkZVxuLy8gICA3LiBBY2NvcmRpb25cbi8vICAgOC4gQWNjb3JkaW9uIE1lbnVcbi8vICAgOS4gQmFkZ2Vcbi8vICAxMC4gQnJlYWRjcnVtYnNcbi8vICAxMS4gQnV0dG9uXG4vLyAgMTIuIEJ1dHRvbiBHcm91cFxuLy8gIDEzLiBDYWxsb3V0XG4vLyAgMTQuIENhcmRcbi8vICAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAgMTYuIERyaWxsZG93blxuLy8gIDE3LiBEcm9wZG93blxuLy8gIDE4LiBEcm9wZG93biBNZW51XG4vLyAgMTkuIEZsZXhib3ggVXRpbGl0aWVzXG4vLyAgMjAuIEZvcm1zXG4vLyAgMjEuIExhYmVsXG4vLyAgMjIuIE1lZGlhIE9iamVjdFxuLy8gIDIzLiBNZW51XG4vLyAgMjQuIE1ldGVyXG4vLyAgMjUuIE9mZi1jYW52YXNcbi8vICAyNi4gT3JiaXRcbi8vICAyNy4gUGFnaW5hdGlvblxuLy8gIDI4LiBQcm9ncmVzcyBCYXJcbi8vICAyOS4gUHJvdG90eXBlIEFycm93XG4vLyAgMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XG4vLyAgMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxuLy8gIDMyLiBQcm90b3R5cGUgQm9yZGVyZWRcbi8vICAzMy4gUHJvdG90eXBlIERpc3BsYXlcbi8vICAzNC4gUHJvdG90eXBlIEZvbnQtU3R5bGluZ1xuLy8gIDM1LiBQcm90b3R5cGUgTGlzdC1TdHlsZS1UeXBlXG4vLyAgMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xuLy8gIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cbi8vICAzOC4gUHJvdG90eXBlIFJvdW5kZWRcbi8vICAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxuLy8gIDQwLiBQcm90b3R5cGUgU2hhZG93XG4vLyAgNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vICA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcbi8vICA0My4gUHJvdG90eXBlIFRleHQtRGVjb3JhdGlvblxuLy8gIDQ0LiBQcm90b3R5cGUgVGV4dC1UcmFuc2Zvcm1hdGlvblxuLy8gIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcbi8vICA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gIDQ3LiBSZXZlYWxcbi8vICA0OC4gU2xpZGVyXG4vLyAgNDkuIFN3aXRjaFxuLy8gIDUwLiBUYWJsZVxuLy8gIDUxLiBUYWJzXG4vLyAgNTIuIFRodW1ibmFpbFxuLy8gIDUzLiBUaXRsZSBCYXJcbi8vICA1NC4gVG9vbHRpcFxuLy8gIDU1LiBUb3AgQmFyXG4vLyAgNTYuIFh5IEdyaWRcblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8gRm9udCBWYXJpYWJsZXNcbi8vICRmb250LXByaW1hcnk6IFwiQWxtYXJhaVwiICFkZWZhdWx0OyBcbi8vICRmb250LXNlY29uZGFyeTogXCJJQk1QbGV4U2Fuc0FyYWJpY1wiICFkZWZhdWx0O1xuJGZvbnQtcHJpbWFyeTogXCJBd3NhdCBEaWdpdGFsXCIgIWRlZmF1bHQ7IFxuJGZvbnQtc2Vjb25kYXJ5OiBcIkVmZnJhXCIgIWRlZmF1bHQ7XG4kZm9udC1hbHQ6IFwiQmVpcnV0XCIgIWRlZmF1bHQ7IFxuXG4vLyBmb250c2l6ZSBvZiBlbGVtZW50c1xuJGhpZ2hsaWdodHMtdGl0bGUtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJG1haW4taGVhZGVyLWJlZm9yZS1zaXplOiByZW0tY2FsYygxMyk7XG4kdGFncy1zcGFuLXNpemU6IHJlbS1jYWxjKDIyKSFkZWZhdWx0O1xuJHRhZ3MtYnV0dG9uLXNpemU6IHJlbS1jYWxjKDE4KSFkZWZhdWx0O1xuXG5cbi8vIC0tLS0tLS0tLVxuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJTtcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDE0MDApOyAvLzEzNjMvLyAxNDAwIC8vIDEzNTggKyA0MVxuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjggIWRlZmF1bHQ7XG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIHByaW1hcnk6ICMyQzhBODIgLCBcbiAgc2Vjb25kYXJ5OiAjNGQ5OThhLFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI0JEM0MyRixcbik7XG5cbiRkYXJrLWdyZWVuOiAjMDA2MDU3O1xuJHByaW1hcnktZ3JlZW46ICMyQzhBODI7XG4kbGlnaHQtZ3JlZW46ICNEMURFREQ7XG5cbiR3aGl0ZTogI2ZmZmZmZjtcbiRBNTA6ICNGOUZCRkI7XG4kQTEwMDogI0U5RjJFRjtcbiRBMjAwOiAjRUFFQ0YwOyAgXG4kQTMwMDogI0QyRTRFMztcbiRBODAwOiAjMTcyRjJGO1xuXG4vKm9rKi9cbiRwcmltYXJ5LWRhcms6ICMyNTNDM0E7XG4kcHJpbWFyeS1saWdodDogI2Y3ZmFmYTtcbiRib2R5LWJhY2tncm91bmQtY29sb3I6ICNFOUYyRUY7XG5cbiRibGFjazogIzAwMDAwMDtcblxuJHdoaXRlLXNtb2tlOiAjZjdmYWZhOyBcbiRncmF5OiAjNzE3MTcxO1xuJGxpZ2h0LWdyYXk6ICNEQ0RGREY7XG4kbWVkaXVtLWdyYXk6ICM5NTkyOTI7XG4kZGFyay1ncmF5OiAjNTU1NTU1O1xuJGF0aGVucy1jb2xvcjogI0RDRTBFMDtcbiRzZXBhcmF0b3ItY29sb3I6ICNEMUQ1RDU7XG4kcmVkOiAjQkQzQzJGO1xuJGVycm9yOiAjREY2RDNGO1xuJGxpZ2h0LWdyZWVuMTogI2Q5ZWRlYjtcblxuJGlucHV0LWJvcmRlci1jb2xvcjogJGxpZ2h0LWdyYXk7XG4kaGVhZGVyLWJvcmRlci1jb2xvcjogJGxpZ2h0LWdyYXk7XG4kbmF2cGFuZWwtY29sb3I6ICRwcmltYXJ5LWRhcms7XG4kZm9vdGVyLWJvcmRlci1jb2xvcjogJHByaW1hcnktZGFyaztcblxuJGFib3V0MTogI0YwRURFMztcbiRhYm91dDI6ICNFRkVDRTI7IFxuXG4vKmVuZCBvayovXG4kc3ByaW5nLXdvb2Q6ICNGNkY1RUU7ICBcbiAgXG4kZHVzdHktZ3JheTogIzhhMzgzODtcbiRlbXBlcm9yOiAjNTU1NTU1O1xuICBcbiRqZWxseS1iZWFuOiAjMjQ5NTk4O1xuJGxpbWVkLXNwcnVjZTogIzM5NDk0YztcbiRuZXZhZGE6ICM1ZjcxNzY7XG4kc3VzaGk6ICM3ZGFjM2M7XG4kbWFpemU6ICNmNGQ0OWU7XG4kbGlnaHQtYmx1ZTogI2UzZWVmNTtcbiBcbiR5ZWxsb3c6ICNlZWJmMDQ7XG4kd2hpdGUyOiAjZjJmMmYyO1xuJGJsYWNrMjogIzRkNGQ0ZDtcbiBcbiRzZWNvbmRhcnktZGFyazogIzFhMzMzMztcbiBcblxuJHByaW1hcnktZm9udC1saWdodDogI2IxYzBjMDtcbiRwcmltYXJ5LWZvbnQtbWVkaXVtOiAkbWVkaXVtLWdyYXk7XG4kcHJpbWFyeS1hbmNob3ItbGlnaHQ6ICNjMGQ3ZDI7XG4gIFxuJGJvZHktYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZC1jb2xvcjtcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjaztcbiRib2R5LWZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5LCBIZWx2ZXRpY2EgTmV1ZSwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuJGJvZHktYW50aWFsaWFzZWQ6IHRydWU7XG4kZ2xvYmFsLW1hcmdpbjogMXJlbTtcbiRnbG9iYWwtcGFkZGluZzogMXJlbTtcbiRnbG9iYWwtcG9zaXRpb246IDFyZW07XG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbDtcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQ7XG4kZ2xvYmFsLXJhZGl1czogMDtcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtO1xuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogcnRsICFkZWZhdWx0O1xuJGRlZmF1bHQtZGlyZWN0aW9uOiAgaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PXJ0bCwgcmlnaHQsIGxlZnQpO1xuJG9wcG9zaXRlLWRpcmVjdGlvbjogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PXJ0bCwgbGVmdCwgcmlnaHQpO1xuJGdsb2JhbC1mbGV4Ym94OiB0cnVlO1xuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlO1xuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvO1xuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMDtcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZTtcbiRwcmludC1ocmVmczogdHJ1ZTtcblxuJGZhY2Vib29rOiAjNTE2OGE0O1xuJHR3aXR0ZXI6ICMwMGE2ZDQ7XG4kbGlua2VkaW46ICMwMDdiYjU7XG4kZ3BsdXM6ICNkZDRiMzk7XG4kcGludGVyZXN0OiAjY2IyMDI3O1xuJHJzczogI2ZhOWIzOTtcbiR5b3V0dWJlOiAjYmIwMDAwO1xuJGluc3RhZ3JhbTogI2E2M2YxZjtcbiRsaW5rZWRpbjogIzAwN2JiNjtcbiRlbnZlbG9wZTogI2FhYWFhYTtcbiR3aGF0c2FwcDogIzJiYjM3YztcbiRzbmFwY2hhdDogI2ZmZmMwMDtcbiR0ZWxlZ3JhbTogIzJDQTVFMDtcblxuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG4vLyAyLiBCcmVha3BvaW50c1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LCAgXG4gIGxhcmdlOiAxMDI0cHgsICBcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbik7XG4kYnJlYWtwb2ludHMtaGlkcGk6IChcbiAgaGlkcGktMTogMSxcbiAgaGlkcGktMS01OiAxLjUsXG4gIGhpZHBpLTI6IDIsXG4gIHJldGluYTogMixcbiAgaGlkcGktMzogM1xuKTtcbiRwcmludC1icmVha3BvaW50OiBsYXJnZTtcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UgeGxhcmdlKTtcblxuJG5ldGJvb2std2lkdGg6IDEwMjRweDtcbiRub3RlYm9vay13aWR0aDogMTM2OXB4O1xuXG5AbWl4aW4gbmJvb2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogI3skbmV0Ym9vay13aWR0aH0pIGFuZCAobWF4LXdpZHRoOiAjeyRub3RlYm9vay13aWR0aCAtIDFweH0pIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5cbi8vIDMuIFRoZSBHcmlkXG4vLyAtLS0tLS0tLS0tLVxuXG4kZ3JpZC1yb3ctd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW4tY291bnQ6IDEyO1xuJGdyaWQtY29sdW1uLWd1dHRlcjogKFxuICBzbWFsbDogMjBweCxcbiAgbWVkaXVtOiA0MXB4LFxuKTtcbiRncmlkLWNvbHVtbi1hbGlnbi1lZGdlOiB0cnVlO1xuJGdyaWQtY29sdW1uLWFsaWFzOiAnY29sdW1ucyc7XG4kYmxvY2stZ3JpZC1tYXg6IDg7XG5cbi8vIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG4kcGFyYWdyYXBoLWZvbnQtc2l6ZTogMTVweCAhZGVmYXVsdDtcblxuJGhlYWRlci1mb250LWZhbWlseTogJGZvbnQtcHJpbWFyeSwgSGVsdmV0aWNhIE5ldWUsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0O1xuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAzMiksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMiksIFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTgpLCAvLzIwXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxNiksICAvLzI4XG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNSksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNCksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNTApLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjIpLCAvLzI0XG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOCwpLCAvLzIyXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxNiksIC8vIDIwXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNSksIC8vIDE4XG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNCksICAvLzE1XG5cbiAgICAvL2g0IHRvIGg1XG4gICAgLy9oNSB0byBoNFxuICApLFxuKSFkZWZhdWx0O1xuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuJHNtYWxsLWZvbnQtc2l6ZTogODAlO1xuJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNjtcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbTtcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRlbmFibGUtY29kZS1pbmxpbmU6IHRydWU7XG4kYW5jaG9yLWNvbG9yOiAkYmxhY2s7XG4kYW5jaG9yLWNvbG9yLWhvdmVyOiAkcHJpbWFyeS1jb2xvcjsgXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lO1xuJGhyLXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvO1xuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuJGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMjVyZW07XG4kbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW46IDEuMjVyZW07XG4kZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTogMXJlbTtcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiRibG9ja3F1b3RlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KTtcbiRibG9ja3F1b3RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRlbmFibGUtY2l0ZS1ibG9jazogdHJ1ZTtcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjaztcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKTtcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2s7XG5cbi8vIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1O1xuJGxlYWQtbGluZWhlaWdodDogMS42O1xuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW07XG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtO1xuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRjaXRlLXBzZXVkby1jb250ZW50OiAnXFwyMDE0IFxcMDAyMCc7XG4kY29kZS1jb2xvcjogJGJsYWNrO1xuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSk7XG4kY29kZS1ibG9jay1wYWRkaW5nOiAxcmVtO1xuJGNvZGUtYmxvY2stbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuXG4vLyA2LiBBYmlkZVxuLy8gLS0tLS0tLS1cblxuJGFiaWRlLWlucHV0czogdHJ1ZTtcbiRhYmlkZS1sYWJlbHM6IHRydWU7XG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuLy8gNy4gQWNjb3JkaW9uXG4vLyAtLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZTtcbiRhY2NvcmRpb24tcGx1cy1jb250ZW50OiAnXFwwMDJCJztcbiRhY2NvcmRpb24tbWludXMtY29udGVudDogJ1xcMjAxMyc7XG4kYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRhY2NvcmRpb24taXRlbS1wYWRkaW5nOiAxLjI1cmVtIDFyZW07XG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuJGFjY29yZGlvbi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc6IDFyZW07XG5cbi8vIDguIEFjY29yZGlvbiBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4kYWNjb3JkaW9ubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRhY2NvcmRpb25tZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luO1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS1wYWRkaW5nOiAkYWNjb3JkaW9ubWVudS1wYWRkaW5nO1xuJGFjY29yZGlvbm1lbnUtYXJyb3dzOiB0cnVlO1xuJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kOiBudWxsO1xuJGFjY29yZGlvbm1lbnUtYm9yZGVyOiBudWxsO1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZDogbnVsbDtcbiRhY2NvcmRpb24tc3VibWVudS10b2dnbGUtYm9yZGVyOiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDogNDBweDtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWhlaWdodDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg7XG4kYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplOiA2cHg7XG5cbi8vIDkuIEJhZGdlXG4vLyAtLS0tLS0tLVxuXG4kYmFkZ2UtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kYmFkZ2UtY29sb3I6ICR3aGl0ZTtcbiRiYWRnZS1jb2xvci1hbHQ6ICRibGFjaztcbiRiYWRnZS1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGJhZGdlLXBhZGRpbmc6IDAuM2VtO1xuJGJhZGdlLW1pbndpZHRoOiAyLjFlbTtcbiRiYWRnZS1mb250LXNpemU6IDAuNnJlbTtcblxuLy8gMTAuIEJyZWFkY3J1bWJzXG4vLyAtLS0tLS0tLS0tLS0tLS1cblxuJGJyZWFkY3J1bWJzLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKTtcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ6ICRibGFjaztcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XG4kYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW46IDAuNzVyZW07XG4kYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2U6IHRydWU7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6IHRydWU7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbTogJy8nO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW0tcnRsOiAnXFxcXCc7XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I6ICRtZWRpdW0tZ3JheTtcblxuLy8gMTEuIEJ1dHRvblxuLy8gLS0tLS0tLS0tLVxuXG4kYnV0dG9uLWZvbnQtZmFtaWx5OiBpbmhlcml0O1xuJGJ1dHRvbi1mb250LXdlaWdodDogbnVsbDtcbiRidXR0b24tcGFkZGluZzogMC44NWVtIDJlbTtcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRidXR0b24tZmlsbDogc29saWQ7XG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xuJGJ1dHRvbi1jb2xvcjogJHdoaXRlO1xuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjaztcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRidXR0b24tYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4kYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGg6IDFweDtcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbik7XG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlO1xuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlO1xuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiRidXR0b24tcmVzcG9uc2l2ZS1leHBhbmRlZDogZmFsc2U7XG5cbi8vIDEyLiBCdXR0b24gR3JvdXBcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbTtcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHg7XG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6ICcuYnV0dG9uJztcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2O1xuJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoOiB0cnVlO1xuXG4vLyAxMy4gQ2FsbG91dFxuLy8gLS0tLS0tLS0tLS1cblxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiAwJTtcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KTtcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMDtcbiRjYWxsb3V0LXNpemVzOiAoXG4gIHNtYWxsOiAwLjVyZW0sXG4gIGRlZmF1bHQ6IDFyZW0sXG4gIGxhcmdlOiAzcmVtLFxuKTtcbiRjYWxsb3V0LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kY2FsbG91dC1mb250LWNvbG9yLWFsdDogJGJvZHktYmFja2dyb3VuZDtcbiRjYWxsb3V0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kY2FsbG91dC1saW5rLXRpbnQ6IDMwJTsgXG4vLyAxNC4gQ2FyZFxuLy8gLS0tLS0tLS1cblxuJGNhcmQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhcmQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYXJkLWRpdmlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRjYXJkLXNoYWRvdzogbm9uZTtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJGNhcmQtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG5cbi8vIDE1LiBDbG9zZSBCdXR0b25cbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3A7XG4kY2xvc2VidXR0b24tei1pbmRleDogMTA7XG4kY2xvc2VidXR0b24tZGVmYXVsdC1zaXplOiBtZWRpdW07XG4kY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw6IChcbiAgc21hbGw6IDAuNjZyZW0sXG4gIG1lZGl1bTogMXJlbSxcbik7XG4kY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsOiAoXG4gIHNtYWxsOiAwLjMzZW0sXG4gIG1lZGl1bTogMC41cmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXG4gIHNtYWxsOiAxLjVlbSxcbiAgbWVkaXVtOiAyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDE7XG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXk7XG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjaztcblxuLy8gMTYuIERyaWxsZG93blxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kZHJpbGxkb3duLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7XG4kZHJpbGxkb3duLWFycm93czogdHJ1ZTtcbiRkcmlsbGRvd24tcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kZHJpbGxkb3duLW5lc3RlZC1tYXJnaW46IDA7XG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcmlsbGRvd24tc3VibWVudS1wYWRkaW5nOiAkZHJpbGxkb3duLXBhZGRpbmc7XG4kZHJpbGxkb3duLXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kZHJpbGxkb3duLWFycm93LXNpemU6IDZweDtcblxuLy8gMTcuIERyb3Bkb3duXG4vLyAtLS0tLS0tLS0tLS1cblxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW07XG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtO1xuJGRyb3Bkb3duLXdpZHRoOiAzMDBweDtcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGRyb3Bkb3duLXNpemVzOiAoXG4gIHRpbnk6IDEwMHB4LFxuICBzbWFsbDogMjAwcHgsXG4gIGxhcmdlOiA0MDBweCxcbik7XG5cbi8vIDE4LiBEcm9wZG93biBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZTtcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3I7XG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweDtcbiRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZzogMS41cmVtO1xuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4O1xuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiBudWxsO1xuJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcm9wZG93bm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW46IDA7XG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nO1xuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpO1xuJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQ7XG5cbi8vIDE5LiBGbGV4Ym94IFV0aWxpdGllc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNjtcbiRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHM6IHRydWU7XG5cbi8vIDIwLiBGb3Jtc1xuLy8gLS0tLS0tLS0tXG5cbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApO1xuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCk7XG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XG4kZm9ybS1zcGFjaW5nOiByZW0tY2FsYygxNik7XG4kaGVscHRleHQtY29sb3I6ICRibGFjaztcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWM7XG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2s7XG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW07XG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrO1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuODtcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlO1xuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheTtcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRpbnB1dC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRpbnB1dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuJGlucHV0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGU7XG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXk7XG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4kaW5wdXQtcGFkZGluZzogJGZvcm0tc3BhY2luZyAvIDI7XG4kaW5wdXQtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMSk7XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZTtcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDIxLiBMYWJlbFxuLy8gLS0tLS0tLS0tXG5cbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRsYWJlbC1jb2xvcjogJHdoaXRlO1xuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrO1xuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW07XG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjIuIE1lZGlhIE9iamVjdFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJTtcblxuLy8gMjMuIE1lbnVcbi8vIC0tLS0tLS0tXG5cbiRtZW51LW1hcmdpbjogMDtcbiRtZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luO1xuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtO1xuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZTtcbiRtZW51LWl0ZW0tY29sb3ItYWx0LWFjdGl2ZTogJGJsYWNrO1xuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpO1xuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xuJG1lbnUtc3RhdGUtYmFjay1jb21wYXQ6IHRydWU7XG4kbWVudS1jZW50ZXJlZC1iYWNrLWNvbXBhdDogdHJ1ZTtcbiRtZW51LWljb25zLWJhY2stY29tcGF0OiB0cnVlO1xuXG4vLyAyNC4gTWV0ZXJcbi8vIC0tLS0tLS0tLVxuXG4kbWV0ZXItaGVpZ2h0OiAxcmVtO1xuJG1ldGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kbWV0ZXItYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJG1ldGVyLWZpbGwtZ29vZDogJHN1Y2Nlc3MtY29sb3I7XG4kbWV0ZXItZmlsbC1tZWRpdW06ICR3YXJuaW5nLWNvbG9yO1xuJG1ldGVyLWZpbGwtYmFkOiAkYWxlcnQtY29sb3I7XG5cbi8vIDI1LiBPZmYtY2FudmFzXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kb2ZmY2FudmFzLXNpemVzOiAoXG4gIHNtYWxsOiAyNTBweCxcbik7XG4kb2ZmY2FudmFzLXZlcnRpY2FsLXNpemVzOiAoXG4gIHNtYWxsOiAyNTBweCxcbik7XG4kb2ZmY2FudmFzLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJG9mZmNhbnZhcy1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGJsYWNrLCAwLjcpO1xuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZTogMjBweDtcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSk7XG4kb2ZmY2FudmFzLW92ZXJsYXktemluZGV4OiAxMTtcbiRvZmZjYW52YXMtcHVzaC16aW5kZXg6IDEyO1xuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTM7XG4kb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6IDEyO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aDogMC41cztcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc6IGVhc2U7XG4kb2ZmY2FudmFzLWZpeGVkLXJldmVhbDogdHJ1ZTtcbiRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4yNSk7XG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnO1xuXG4vLyAyNi4gT3JiaXRcbi8vIC0tLS0tLS0tLVxuXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU6ICRkYXJrLWdyYXk7XG4kb3JiaXQtYnVsbGV0LWRpYW1ldGVyOiAxLjJyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b206IDAuOHJlbTtcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpO1xuJG9yYml0LWNhcHRpb24tcGFkZGluZzogMXJlbTtcbiRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI6IHJnYmEoJGJsYWNrLCAwLjUpO1xuJG9yYml0LWNvbnRyb2wtcGFkZGluZzogMXJlbTtcbiRvcmJpdC1jb250cm9sLXppbmRleDogMTA7XG5cbi8vIDI3LiBQYWdpbmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrO1xuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKTtcbiRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZzogcmVtLWNhbGMoMSk7XG4kcGFnaW5hdGlvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50OiAkcHJpbWFyeS1jb2xvcjtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJHdoaXRlO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjaztcbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2U7XG4kcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtOiBmYWxzZTtcbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZTtcbiRwYWdpbmF0aW9uLWFycm93LXByZXZpb3VzOiAnXFwwMEFCJztcbiRwYWdpbmF0aW9uLWFycm93LW5leHQ6ICdcXDAwQkInO1xuXG4vLyAyOC4gUHJvZ3Jlc3MgQmFyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm9ncmVzcy1oZWlnaHQ6IDFyZW07XG4kcHJvZ3Jlc3MtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHByb2dyZXNzLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHByb2dyZXNzLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDI5LiBQcm90b3R5cGUgQXJyb3dcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1hcnJvdy1kaXJlY3Rpb25zOiAoXG4gIGRvd24sXG4gIHVwLFxuICByaWdodCxcbiAgbGVmdFxuKTtcbiRwcm90b3R5cGUtYXJyb3ctc2l6ZTogMC40Mzc1cmVtO1xuJHByb3RvdHlwZS1hcnJvdy1jb2xvcjogJGJsYWNrO1xuXG4vLyAzMC4gUHJvdG90eXBlIEJvcmRlci1Cb3hcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlci1ib3gtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuXG4vLyAzMS4gUHJvdG90eXBlIEJvcmRlci1Ob25lXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYm9yZGVyLW5vbmUtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuXG4vLyAzMi4gUHJvdG90eXBlIEJvcmRlcmVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYm9yZGVyZWQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3JkZXItd2lkdGg6IHJlbS1jYWxjKDEpO1xuJHByb3RvdHlwZS1ib3JkZXItdHlwZTogc29saWQ7XG4kcHJvdG90eXBlLWJvcmRlci1jb2xvcjogJG1lZGl1bS1ncmF5O1xuXG4vLyAzMy4gUHJvdG90eXBlIERpc3BsYXlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWRpc3BsYXktYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1kaXNwbGF5OiAoXG4gIGlubGluZSxcbiAgaW5saW5lLWJsb2NrLFxuICBibG9jayxcbiAgdGFibGUsXG4gIHRhYmxlLWNlbGxcbik7XG5cbi8vIDM0LiBQcm90b3R5cGUgRm9udC1TdHlsaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWZvbnQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS13aWRlLWxldHRlci1zcGFjaW5nOiByZW0tY2FsYyg0KTtcbiRwcm90b3R5cGUtZm9udC1ub3JtYWw6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRwcm90b3R5cGUtZm9udC1ib2xkOiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXG4vLyAzNS4gUHJvdG90eXBlIExpc3QtU3R5bGUtVHlwZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1saXN0LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc3R5bGUtdHlwZS11bm9yZGVyZWQ6IChcbiAgZGlzYyxcbiAgY2lyY2xlLFxuICBzcXVhcmVcbik7XG4kcHJvdG90eXBlLXN0eWxlLXR5cGUtb3JkZXJlZDogKFxuICBkZWNpbWFsLFxuICBsb3dlci1hbHBoYSxcbiAgbG93ZXItbGF0aW4sXG4gIGxvd2VyLXJvbWFuLFxuICB1cHBlci1hbHBoYSxcbiAgdXBwZXItbGF0aW4sXG4gIHVwcGVyLXJvbWFuXG4pO1xuXG4vLyAzNi4gUHJvdG90eXBlIE92ZXJmbG93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtb3ZlcmZsb3ctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1vdmVyZmxvdzogKFxuICB2aXNpYmxlLFxuICBoaWRkZW4sXG4gIHNjcm9sbFxuKTtcblxuLy8gMzcuIFByb3RvdHlwZSBQb3NpdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXBvc2l0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtcG9zaXRpb246IChcbiAgc3RhdGljLFxuICByZWxhdGl2ZSxcbiAgYWJzb2x1dGUsXG4gIGZpeGVkXG4pO1xuJHByb3RvdHlwZS1wb3NpdGlvbi16LWluZGV4OiA5NzU7XG5cbi8vIDM4LiBQcm90b3R5cGUgUm91bmRlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtcm91bmRlZC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDMpO1xuXG4vLyAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zZXBhcmF0b3ItYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItYWxpZ246IGNlbnRlcjtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWhlaWdodDogcmVtLWNhbGMoMik7XG4kcHJvdG90eXBlLXNlcGFyYXRvci13aWR0aDogM3JlbTtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItbWFyZ2luLXRvcDogJGdsb2JhbC1tYXJnaW47XG5cbi8vIDQwLiBQcm90b3R5cGUgU2hhZG93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXNoYWRvdy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWJveC1zaGFkb3c6IDAgMnB4IDVweCAwIHJnYmEoMCwwLDAsLjE2KSxcbiAgICAgICAgICAgICAgICAgICAgICAgMCAycHggMTBweCAwIHJnYmEoMCwwLDAsLjEyKTtcblxuLy8gNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2l6aW5nLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc2l6aW5nOiAoXG4gIHdpZHRoLFxuICBoZWlnaHRcbik7XG4kcHJvdG90eXBlLXNpemVzOiAoXG4gIDI1OiAyNSUsXG4gIDUwOiA1MCUsXG4gIDc1OiA3NSUsXG4gIDEwMDogMTAwJVxuKTtcblxuLy8gNDIuIFByb3RvdHlwZSBTcGFjaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zcGFjaW5nLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc3BhY2Vycy1jb3VudDogMztcblxuLy8gNDMuIFByb3RvdHlwZSBUZXh0LURlY29yYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtZGVjb3JhdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtZGVjb3JhdGlvbjogKFxuICBvdmVybGluZSxcbiAgdW5kZXJsaW5lLFxuICBsaW5lLXRocm91Z2gsXG4pO1xuXG4vLyA0NC4gUHJvdG90eXBlIFRleHQtVHJhbnNmb3JtYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXRyYW5zZm9ybWF0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtdGV4dC10cmFuc2Zvcm1hdGlvbjogKFxuICBsb3dlcmNhc2UsXG4gIHVwcGVyY2FzZSxcbiAgY2FwaXRhbGl6ZVxuKTtcblxuLy8gNDUuIFByb3RvdHlwZSBUZXh0LVV0aWxpdGllc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXV0aWxpdGllcy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXG4vLyA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zOiAoXG4gIGRlZmF1bHQ6IDQgYnkgMyxcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcbik7XG5cbi8vIDQ3LiBSZXZlYWxcbi8vIC0tLS0tLS0tLS1cblxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kcmV2ZWFsLXdpZHRoOiA2MDBweDtcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRyZXZlYWwtemluZGV4OiAxMDA1O1xuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KTtcblxuLy8gNDguIFNsaWRlclxuLy8gLS0tLS0tLS0tLVxuXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW07XG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuJHNsaWRlci1oZWlnaHQ6IDAuNXJlbTtcbiRzbGlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kc2xpZGVyLWZpbGwtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHNsaWRlci1oYW5kbGUtaGVpZ2h0OiAxLjRyZW07XG4kc2xpZGVyLWhhbmRsZS13aWR0aDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kc2xpZGVyLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kc2xpZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDQ5LiBTd2l0Y2hcbi8vIC0tLS0tLS0tLS1cblxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvcjtcbiRzd2l0Y2gtaGVpZ2h0OiAycmVtO1xuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtO1xuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW07XG4kc3dpdGNoLWhlaWdodC1sYXJnZTogMi41cmVtO1xuJHN3aXRjaC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHN3aXRjaC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xuJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtO1xuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcbiRzd2l0Y2gtb3BhY2l0eS1kaXNhYmxlZDogLjU7XG4kc3dpdGNoLWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQ7XG5cbi8vIDUwLiBUYWJsZVxuLy8gLS0tLS0tLS0tXG5cbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFibGUtY29sb3Itc2NhbGU6IDUlO1xuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApO1xuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJTtcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtaXMtc3RyaXBlZDogdHJ1ZTtcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLXN0cmlwZTogZXZlbjtcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKTtcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2U7XG4kdGFibGUtc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xuXG4vLyA1MS4gVGFic1xuLy8gLS0tLS0tLS1cblxuJHRhYi1tYXJnaW46IDA7XG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXk7XG4kdGFiLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFiLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlO1xuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5O1xuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHRhYi1jb250ZW50LXBhZGRpbmc6IDFyZW07XG5cbi8vIDUyLiBUaHVtYm5haWxcbi8vIC0tLS0tLS0tLS0tLS1cblxuJHRodW1ibmFpbC1ib3JkZXI6IDRweCBzb2xpZCAkd2hpdGU7XG4kdGh1bWJuYWlsLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHRodW1ibmFpbC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yKTtcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpO1xuJHRodW1ibmFpbC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0O1xuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyA1My4gVGl0bGUgQmFyXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiR0aXRsZWJhci1iYWNrZ3JvdW5kOiAkYmxhY2s7XG4kdGl0bGViYXItY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1wYWRkaW5nOiAwLjVyZW07XG4kdGl0bGViYXItdGV4dC1mb250LXdlaWdodDogYm9sZDtcbiR0aXRsZWJhci1pY29uLWNvbG9yOiAkd2hpdGU7XG4kdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlcjogJG1lZGl1bS1ncmF5O1xuJHRpdGxlYmFyLWljb24tc3BhY2luZzogMC4yNXJlbTtcblxuLy8gNTQuIFRvb2x0aXBcbi8vIC0tLS0tLS0tLS0tXG5cbiRoYXMtdGlwLWN1cnNvcjogaGVscDtcbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAkZGFyay1ncmF5O1xuJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuJHRvb2x0aXAtY29sb3I6ICR3aGl0ZTtcbiR0b29sdGlwLXBhZGRpbmc6IDAuNzVyZW07XG4kdG9vbHRpcC1tYXgtd2lkdGg6IDEwcmVtO1xuJHRvb2x0aXAtZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuJHRvb2x0aXAtcGlwLXdpZHRoOiAwLjc1cmVtO1xuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjY7XG4kdG9vbHRpcC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyA1NS4gVG9wIEJhclxuLy8gLS0tLS0tLS0tLS1cblxuJHRvcGJhci1wYWRkaW5nOiAwLjVyZW07XG4kdG9wYmFyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQ6ICR0b3BiYXItYmFja2dyb3VuZDtcbiR0b3BiYXItdGl0bGUtc3BhY2luZzogMC41cmVtIDFyZW0gMC41cmVtIDA7XG4kdG9wYmFyLWlucHV0LXdpZHRoOiAyMDBweDtcbiR0b3BiYXItdW5zdGFjay1icmVha3BvaW50OiBtZWRpdW07XG5cbi8vIDU2LiBYeSBHcmlkXG4vLyAtLS0tLS0tLS0tLVxuXG4keHktZ3JpZDogdHJ1ZTtcbiRncmlkLWNvbnRhaW5lcjogJGdsb2JhbC13aWR0aDtcbiRncmlkLWNvbHVtbnM6IDEyO1xuJGdyaWQtbWFyZ2luLWd1dHRlcnM6IChcbiAgc21hbGw6IDIwcHgsXG4gIG1lZGl1bTogNDFweFxuKTtcbiRncmlkLXBhZGRpbmctZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnM7XG4kZ3JpZC1jb250YWluZXItcGFkZGluZzogJGdyaWQtcGFkZGluZy1ndXR0ZXJzO1xuJGdyaWQtY29udGFpbmVyLW1heDogJGdsb2JhbC13aWR0aDtcbiR4eS1ibG9jay1ncmlkLW1heDogODtcblxuIiwiLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlc1xuICogVmVyc2lvbiA2LjcuNFxuICogaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cblxuLy8gLS0tIERlcGVuZGVuY2llcyAtLS1cbkBpbXBvcnQgJ3ZlbmRvci9ub3JtYWxpemUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL21pc3NpbmctZGVwZW5kZW5jaWVzJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy90cnVlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL2NvbnRhaW4nO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcHVyZ2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcmVtb3ZlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlcGxhY2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvdG8tbGlzdCc7XG5cbi8vIC0tLSBTZXR0aW5ncyAtLS1cbi8vIGltcG9ydCB5b3VyIG93biBgc2V0dGluZ3NgIGhlcmUgb3Jcbi8vIGltcG9ydCBhbmQgbW9kaWZ5IHRoZSBkZWZhdWx0IHNldHRpbmdzIHRocm91Z2hcbi8vIEBpbXBvcnQgJ3NldHRpbmdzL3NldHRpbmdzJztcblxuLy8gLS0tIENvbXBvbmVudHMgLS0tXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG4vLyBHbG9iYWwgc3R5bGVzXG5AaW1wb3J0ICdnbG9iYWwnO1xuQGltcG9ydCAnZm9ybXMvZm9ybXMnO1xuQGltcG9ydCAndHlwb2dyYXBoeS90eXBvZ3JhcGh5JztcblxuLy8gR3JpZHNcbkBpbXBvcnQgJ2dyaWQvZ3JpZCc7XG5AaW1wb3J0ICd4eS1ncmlkL3h5LWdyaWQnO1xuLy8gR2VuZXJpYyBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbi1ncm91cCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Nsb3NlLWJ1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2xhYmVsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcHJvZ3Jlc3MtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2xpZGVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3dpdGNoJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFibGUnO1xuLy8gQmFzaWMgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9iYWRnZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2JyZWFkY3J1bWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FsbG91dCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhcmQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3BhZ2luYXRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy90b29sdGlwJztcblxuLy8gQ29udGFpbmVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS1vYmplY3QnO1xuQGltcG9ydCAnY29tcG9uZW50cy9vcmJpdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Jlc3BvbnNpdmUtZW1iZWQnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGh1bWJuYWlsJztcbi8vIE1lbnUtYmFzZWQgY29udGFpbmVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudS1pY29uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uLW1lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcmlsbGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bi1tZW51JztcblxuLy8gTGF5b3V0IGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb2ZmLWNhbnZhcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3JldmVhbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N0aWNreSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RpdGxlLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RvcC1iYXInO1xuXG4vLyBIZWxwZXJzXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zsb2F0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxleCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Zpc2liaWxpdHknO1xuQGltcG9ydCAncHJvdG90eXBlL3Byb3RvdHlwZSc7XG5cblxuQG1peGluIGZvdW5kYXRpb24tZXZlcnl0aGluZyhcbiAgJGZsZXg6IHRydWUsXG4gICRwcm90b3R5cGU6IGZhbHNlLFxuICAkeHktZ3JpZDogJHh5LWdyaWRcbikge1xuICBAaWYgJGZsZXgge1xuICAgICRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgQGlmICR4eS1ncmlkIHtcbiAgICAkeHktZ3JpZDogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgLy8gR2xvYmFsIHN0eWxlc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdHlwb2dyYXBoeTtcblxuICAvLyBHcmlkc1xuICBAaWYgbm90ICRmbGV4IHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdyaWQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkeHktZ3JpZCB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWdyaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gR2VuZXJpYyBjb21wb25lbnRzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbGFiZWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zd2l0Y2g7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFibGU7XG4gIC8vIEJhc2ljIGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1iYWRnZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1icmVhZGNydW1icztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYWxsb3V0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhcmQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcGFnaW5hdGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b29sdGlwO1xuXG4gIC8vIENvbnRhaW5lcnNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9yYml0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFicztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aHVtYm5haWw7XG4gIC8vIE1lbnUtYmFzZWQgY29udGFpbmVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudS1pY29uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnU7XG5cbiAgLy8gTGF5b3V0IGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vZmYtY2FudmFzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJldmVhbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGl0bGUtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvcC1iYXI7XG5cbiAgLy8gSGVscGVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXM7XG4gIEBpZiAkZmxleCB7IEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzOyB9XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzO1xuICBAaWYgJHByb3RvdHlwZSB7IEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvdG90eXBlLWNsYXNzZXM7IH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVha3BvaW50c1xuLy8vL1xuXG4vLy8gUGF0Y2ggdG8gZml4IGlzc3VlICMxMjA4MFxuJC16Zi1zaXplOiBudWxsO1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBIaURQSSBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcyBmb3IgcmVzb2x1dGlvbnMuXG4vLy8gVmFsdWVzIG11c3QgcmVwcmVzZW50IHRoZSBkZXZpY2UgcGl4ZWxzIC8gd2ViIHBpeGVscyByYXRpb24gYW5kIGJlIHVuaXRsZXNzIG9yIGluIERQUFguXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHMtaGlkcGk6IChcbiAgaGlkcGktMTogMSxcbiAgaGlkcGktMS01OiAxLjUsXG4gIGhpZHBpLTI6IDIsXG4gIHJldGluYTogMixcbiAgaGlkcGktMzogM1xuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsYXJnZXN0IG5hbWVkIGJyZWFrcG9pbnQgaW4gd2hpY2ggdG8gaW5jbHVkZSBwcmludCBhcyBhIG1lZGlhIHR5cGVcbi8vLyBAdHlwZSBLZXl3b3JkXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2UgIWRlZmF1bHQ7XG5cbiQtemYtemVyby1icmVha3BvaW50OiBzbWFsbCAhZGVmYXVsdDtcblxuJC16Zi1icmVha3BvaW50cy1rZXlzOiBtYXAtdG8tbGlzdCgkYnJlYWtwb2ludHMsICdrZXlzJyk7XG5cbkBpZiBudGgobWFwLXZhbHVlcygkYnJlYWtwb2ludHMpLCAxKSAhPSAwIHtcbiAgQGVycm9yICdUaGUgZmlyc3Qga2V5IGluIHRoZSAkYnJlYWtwb2ludHMgbWFwIG11c3QgaGF2ZSBhIHZhbHVlIG9mIFwiMFwiLic7XG59XG5AZWxzZSB7XG4gICQtemYtemVyby1icmVha3BvaW50OiBudGgobWFwLWtleXMoJGJyZWFrcG9pbnRzKSwgMSk7XG59XG5cbi8vLyBBbGwgb2YgdGhlIG5hbWVzIGluIHRoaXMgbGlzdCB3aWxsIGJlIG91dHB1dCBhcyBjbGFzc2VzIGluIHlvdXIgQ1NTLCBsaWtlIGAuc21hbGwtMTJgLCBgLm1lZGl1bS02YCwgYW5kIHNvIG9uLiBFYWNoIHZhbHVlIGluIHRoaXMgbGlzdCBtdXN0IGFsc28gYmUgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcC5cbi8vLyBAdHlwZSBMaXN0XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKSAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IHN0cmluZyBtYXRjaGluZyB0aGUgaW5wdXQgdmFsdWUuIFJlZmVyIHRvIHRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gc2VlIHdoYXQgdGhlIHBvc3NpYmxlIGlucHV0cyBhcmUuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsIFtzbWFsbF0gLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG5AZnVuY3Rpb24gYnJlYWtwb2ludCgkdmFsOiAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAvLyBXZWIgc3RhbmRhcmQgUGl4ZWxzIHBlciBpbmNoLiAoMWRkcHggLyAkc3RkLXdlYi1kcGkpID0gMWRwaVxuICAvLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL2Nzcy12YWx1ZXMtMy8jYWJzb2x1dGUtbGVuZ3Roc1xuICAkc3RkLXdlYi1kcGk6IDk2O1xuXG4gIC8vIFNpemUgb3Iga2V5d29yZFxuICAkYnA6IG50aCgkdmFsLCAxKTtcbiAgLy8gVmFsdWUgb2YgdGhlIGZvbGxvd2luZyBicmVha3BvaW50XG4gICRicC1uZXh0OiBudWxsO1xuICAvLyBWYWx1ZSBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1pbjogbnVsbDtcbiAgLy8gVmFsdWUgZm9yIG1pbi13aWR0aCBtZWRpYSBxdWVyaWVzXG4gICRicC1tYXg6IG51bGw7XG4gIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICRkaXI6IGlmKGxlbmd0aCgkdmFsKSA+IDEsIG50aCgkdmFsLCAyKSwgdXApO1xuICAvLyBJZiBuYW1lZCwgbmFtZSBvZiB0aGUgYnJlYWtwb2ludFxuICAkbmFtZTogbnVsbDtcbiAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgYSBIaURQSSBicmVha3BvaW50XG4gICRoaWRwaTogZmFsc2U7XG5cbiAgLy8gT3JpZW50YXRpb24gbWVkaWEgcXVlcmllcyBoYXZlIGEgdW5pcXVlIHN5bnRheFxuICBAaWYgJGJwID09ICdsYW5kc2NhcGUnIG9yICRicCA9PSAncG9ydHJhaXQnIHtcbiAgICBAcmV0dXJuICcob3JpZW50YXRpb246ICN7JGJwfSknO1xuICB9XG5cbiAgLy8gSWYgYSBicmVha3BvaW50IG5hbWUgaXMgZ2l2ZW4sIGdldCBpdHMgdmFsdWUgZnJvbSB0aGUgJGJyZWFrcG9pbnRzLyRicmVha3BvaW50cy1oaWRwaSBtYXAuXG4gIEBpZiB0eXBlLW9mKCRicCkgPT0gJ3N0cmluZycge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRicCkge1xuICAgICAgJG5hbWU6ICRicDtcbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgICAgICRicC1uZXh0OiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gICAgfVxuICAgIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cy1oaWRwaSwgJGJwKSB7XG4gICAgICAkbmFtZTogJGJwO1xuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cy1oaWRwaSwgJG5hbWUpO1xuICAgICAgJGJwLW5leHQ6IC16Zi1tYXAtbmV4dC1udW1iZXIoJGJyZWFrcG9pbnRzLWhpZHBpLCAkYnApO1xuICAgICAgJGhpZHBpOiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnA6IDA7XG4gICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBcIiN7JHZhbH1cIiBpcyBub3QgZGVmaW5lZCBpbiB5b3VyIGAkYnJlYWtwb2ludHNgIG9yIGAkYnJlYWtwb2ludHMtaGlkcGlgIHNldHRpbmcuJztcbiAgICB9XG4gIH1cblxuICBAaWYgbm90ICRuYW1lIGFuZCAkZGlyID09ICdvbmx5JyB7XG4gICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIGBvbmx5YCByYW5nZS4nO1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8vIE9ubHkgJ29ubHknIGFuZCAndXAnIGhhdmUgYSBtaW4gbGltaXQuXG4gIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICd1cCcge1xuICAgICRicC1taW46IGlmKCRoaWRwaSwgc3RyaXAtdW5pdCgkYnApLCAtemYtYnAtdG8tZW0oJGJwKSk7XG4gIH1cbiAgLy8gT25seSAnb25seScgYW5kICdkb3duJyBoYXZlIGEgbWF4IGxpbWl0LlxuICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgIC8vIElmIHRoZSBicmVha3BvaW50IGlzIGEgdmFsdWUsIHVzZSBpdCBhcyBtYXggbGltaXQuXG4gICAgQGlmIG5vdCAkbmFtZSB7XG4gICAgICAkYnAtbWF4OiBpZigkaGlkcGksIHN0cmlwLXVuaXQoJGJwKSwgLXpmLWJwLXRvLWVtKCRicCkpO1xuICAgIH1cbiAgICAvLyBJZiB0aGUgYnJlYWtwb2ludCBpcyBuYW1lZCwgdGhlIG1heCBsaW1pdCBpcyB0aGUgZm9sbG93aW5nIGJyZWFrcG9pbnQgLSAxcHguXG4gICAgQGVsc2UgaWYgJGJwLW5leHQge1xuICAgICAgLy8gTWF4IHZhbHVlIGlzIDAuMnB4IHVuZGVyIHRoZSBuZXh0IGJyZWFrcG9pbnQgKDAuMDIgLyAxNiA9IDAuMDAxMjUpLlxuICAgICAgLy8gVXNlIGEgcHJlY2lzaW9uIHVuZGVyIDFweCB0byBzdXBwb3J0IGJyb3dzZXIgem9vbSwgYnV0IG5vdCB0byBsb3cgdG8gYXZvaWQgcm91bmRpbmcuXG4gICAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTEzMTNcbiAgICAgICRicC1tYXg6IGlmKCRoaWRwaSwgJGJwLW5leHQgLSBkaXZpZGUoMSwgJHN0ZC13ZWItZHBpKSwgLXpmLWJwLXRvLWVtKCRicC1uZXh0KSAtIDAuMDAxMjUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEdlbmVyYXRlIHRoZSBtZWRpYSBxdWVyeSBzdHJpbmcgZnJvbSBtaW4gYW5kIG1heCBsaW1pdHMuXG4gIEBpZiAkaGlkcGkge1xuICAgIC8vIEdlbmVyYXRlIHZhbHVlcyBpbiBEUEkgaW5zdGVhZCBvZiBEUFBYIGZvciBhbiBJRTktMTEvT3BlcmEgbWluaSBjb21wYXRpYmlsaXR5LlxuICAgIC8vIFNlZSBodHRwczovL2Nhbml1c2UuY29tLyNmZWF0PWNzcy1tZWRpYS1yZXNvbHV0aW9uXG4gICAgJGJwLW1pbi1kcGk6IGlmKCRicC1taW4sICRicC1taW4gKiAkc3RkLXdlYi1kcGkgKiAxZHBpLCAkYnAtbWluKTtcbiAgICAkYnAtbWF4LWRwaTogaWYoJGJwLW1heCwgJGJwLW1heCAqICRzdGQtd2ViLWRwaSAqIDFkcGksICRicC1tYXgpO1xuICAgIEByZXR1cm4gemYtc3RyLWpvaW4oXG4gICAgICAtemYtYnAtam9pbigkYnAtbWluLCAkYnAtbWF4LCAnLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvJywgJy13ZWJraXQtbWF4LWRldmljZS1waXhlbC1yYXRpbycpLFxuICAgICAgLXpmLWJwLWpvaW4oJGJwLW1pbi1kcGksICRicC1tYXgtZHBpLCAnbWluLXJlc29sdXRpb24nLCAnbWF4LXJlc29sdXRpb24nKSxcbiAgICAgICcsICcpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIC16Zi1icC1qb2luKCRicC1taW4sICRicC1tYXgpO1xuICB9XG59XG5cbi8vLyBXcmFwcyBhIG1lZGlhIHF1ZXJ5IGFyb3VuZCB0aGUgY29udGVudCB5b3UgcHV0IGluc2lkZSB0aGUgbWl4aW4uIFRoaXMgbWl4aW4gYWNjZXB0cyBhIG51bWJlciBvZiB2YWx1ZXM6XG4vLy8gIC0gSWYgYSBzdHJpbmcgaXMgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBsb29rIGZvciBpdCBpbiB0aGUgYCRicmVha3BvaW50c2AgYW5kIGAkYnJlYWtwb2ludHMtaGlkcGlgIG1hcHMsIGFuZCB1c2UgYSBtZWRpYSBxdWVyeSB0aGVyZS5cbi8vLyAgLSBJZiBhIHBpeGVsIHZhbHVlIGlzIHBhc3NlZCwgaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYW4gZW0gdmFsdWUgdXNpbmcgYCRnbG9iYWwtZm9udC1zaXplYCBhcyB0aGUgYmFzZS5cbi8vLyAgLSBJZiBhIHJlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB1bml0IHdpbGwgYmUgY2hhbmdlZCB0byBlbS5cbi8vLyAgLSBJZiBhbiBlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB2YWx1ZSB3aWxsIGJlIHVzZWQgYXMtaXMuXG4vLy9cbi8vLyBJZiBtdWx0aXBsZSB2YWx1ZXMgYXJlIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgZ2VuZXJhdGUgYSBtZWRpYSBxdWVyeSBmb3IgZWFjaCBvZiB0aGVtIGFzIGRlc2NyaWJlZCBhYm92ZS5cbi8vLyBTaW5jZSB0aGUgY29udGVudCBpcyBkdXBsaWNhdGVkIGZvciBlYWNoIGJyZWFrcG9pbnQsIHRoaXMgbWl4aW4gc2hvdWxkIG9ubHkgYmUgdXNlZCB3aXRoIHByb3BlcnRpZXMgdGhhdFxuLy8vIGNoYW5nZSBhY3Jvc3MgYnJlYWtwb2ludHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsdWVzLi4uIC0gQnJlYWtwb2ludCBuYW1lIG9yIHB4L3JlbS9lbSB2YWx1ZSB0byBwcm9jZXNzLlxuLy8vXG4vLy8gQG91dHB1dCBJZiB0aGUgYnJlYWtwb2ludCBpcyBcIjBweCBhbmQgbGFyZ2VyXCIsIG91dHB1dHMgdGhlIGNvbnRlbnQgYXMtaXMuIE90aGVyd2lzZSwgb3V0cHV0cyB0aGUgY29udGVudCB3cmFwcGVkIGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gYnJlYWtwb2ludCgkdmFsdWVzLi4uKSB7XG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCR2YWx1ZXMpIHtcbiAgICAkdmFsdWU6IG50aCgkdmFsdWVzLCAkaSk7XG4gICAgJHN0cjogYnJlYWtwb2ludCgkdmFsdWUpO1xuICAgICRicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCBudGgoJHZhbHVlLCAxKSk7XG4gICAgJHBicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkcHJpbnQtYnJlYWtwb2ludCk7XG4gICAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgICAkZGlyOiBpZihsZW5ndGgoJHZhbHVlKSA+IDEsIG50aCgkdmFsdWUsIDIpLCB1cCk7XG5cbiAgICAkb2xkLXpmLXNpemU6IG51bGw7XG5cbiAgICAvLyBNYWtlIGJyZWFrcG9pbnQgc2l6ZSBhdmFpbGFibGUgYXMgYSB2YXJpYWJsZVxuICAgIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSB7XG4gICAgICAkb2xkLXpmLXNpemU6ICQtemYtc2l6ZTtcbiAgICB9XG4gICAgJC16Zi1zaXplOiBudGgoJHZhbHVlLCAxKSAhZ2xvYmFsOyAvLyBnZXQgdGhlIGZpcnN0IHZhbHVlIHRvIGFjY291bnQgZm9yIGBvbmx5YCBhbmQgYGRvd25gIGtleXdvcmRzXG5cbiAgICAvLyBJZiAkc3RyIGlzIHN0aWxsIGFuIGVtcHR5IHN0cmluZywgbm8gbWVkaWEgcXVlcnkgaXMgbmVlZGVkXG4gICAgQGlmICRzdHIgPT0gJycge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgLy8gT3RoZXJ3aXNlLCB3cmFwIHRoZSBjb250ZW50IGluIGEgbWVkaWEgcXVlcnlcbiAgICBAZWxzZSB7XG4gICAgICAvLyBGb3IgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICRwcmludC1icmVha3BvaW50LCBhZGQgcHJpbnQgdG8gdGhlIG1lZGlhIHR5cGVzXG4gICAgICAvLyBnZW5lcmF0ZSBwcmludCBpZiB0aGUgYnJlYWtwb2ludCBhZmZlY3RzIHRoZSBwcmludC1icmVha3BvaW50IChvciBzbWFsbGVyKS5cbiAgICAgIC8vIFRoaXMgbWVhbnMgdGhlIGN1cnJlbnQgY29uZGl0aW9uIG9ubHkgbmVlZHMgdG8gYmUgZXh0ZW5kZWQgc28gJ2Rvd24nIGFsd2F5cyBnZW5lcmF0ZXMgcHJpbnQuXG4gICAgICBAaWYgJGJwICE9IG51bGwgYW5kICgkYnAgPD0gJHBicCBvciAkZGlyID09IGRvd24pIHtcbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbiAgfVxufVxuXG4vLy8gQ29udmVydHMgdGhlIGJyZWFrcG9pbnRzIG1hcCB0byBhIFVSTC1lbmNvZGVkIHN0cmluZywgbGlrZSB0aGlzOiBga2V5MT12YWx1ZTEma2V5Mj12YWx1ZTJgLiBUaGUgdmFsdWUgaXMgdGhlbiBkcm9wcGVkIGludG8gdGhlIENTUyBmb3IgYSBzcGVjaWFsIGA8bWV0YT5gIHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0LiBUaGlzIGlzIGhvdyB3ZSB0cmFuc2ZlciB2YWx1ZXMgZnJvbSBTYXNzIHRvIEphdmFTY3JpcHQsIHNvIHRoZXkgY2FuIGJlIGRlZmluZWQgaW4gb25lIHBsYWNlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gY29udmVydC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IEEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1hcCdzIGNvbnRlbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC1zZXJpYWxpemUoJG1hcCkge1xuICAkc3RyOiAnJztcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICRzdHI6ICRzdHIgKyAka2V5ICsgJz0nICsgLXpmLWJwLXRvLWVtKCR2YWx1ZSkgKyAnJic7XG4gIH1cbiAgJHN0cjogc3RyLXNsaWNlKCRzdHIsIDEsIC0yKTtcblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IGtleSBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSB2YWx1ZSBmb3IgdGhlIGtleSBhZnRlciBgJGtleWAsIGlmIGAka2V5YCB3YXMgZm91bmQuIElmIGAka2V5YCB3YXMgbm90IGZvdW5kLCBvciBgJGtleWAgd2FzIHRoZSBsYXN0IHZhbHVlIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dCgkbWFwLCAka2V5KSB7XG5cbiAgLy8gU3RvcmUgdGhlIGtleXMgb2YgdGhlIG1hcCBhcyBhIGxpc3RcbiAgJHZhbHVlczogbWFwLWtleXMoJG1hcCk7XG5cbiAgJGk6IDA7XG5cbiAgLy8gSWYgdGhlIEtleSBFeGlzdHMsIEdldCB0aGUgaW5kZXggb2YgdGhlIGtleSB3aXRoaW4gdGhlIG1hcCBhbmQgYWRkIDEgdG8gaXQgZm9yIHRoZSBuZXh0IGJyZWFrcG9pbnQgaW4gdGhlIG1hcFxuICBAaWYgKG1hcC1oYXMta2V5KCRtYXAsICRrZXkpKSB7XG4gICAgJGk6IGluZGV4KCR2YWx1ZXMsICRrZXkpICsgMTtcbiAgfVxuXG4gIC8vIElmIHRoZSBrZXkgZG9lc24ndCBleGlzdCwgb3IgaXQncyB0aGUgbGFzdCBrZXkgaW4gdGhlIG1hcCwgcmV0dXJuIG51bGxcbiAgQGlmICgkaSA+IGxlbmd0aCgkbWFwKSBvciAkaSA9PSAwKSB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgcmV0dXJuIHRoZSB2YWx1ZVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsIG50aCgkdmFsdWVzLCAkaSkpO1xuICB9XG5cbn1cblxuLy8vIEZpbmQgdGhlIG5leHQgbnVtYmVyIGluIGEgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gdHJhdmVyc2UuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJG51bWJlciAtIE51bWJlciB0byB1c2UgYXMgYSBzdGFydGluZyBwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtNaXhlZH0gVGhlIG51bWJlciBmb2xsb3dpbmcgYCRudW1iZXJgLCBpZiBgJG51bWJlcmAgd2FzIGZvdW5kLiBJZiBgJG51bWJlcmAgd2FzIG5vdCBmb3VuZCwgb3IgYCRudW1iZXJgIHdhcyB0aGUgYmlnZ2VzdCBudW1iZXIgaW4gdGhlIG1hcCwgcmV0dXJucyBgbnVsbGAuXG5AZnVuY3Rpb24gLXpmLW1hcC1uZXh0LW51bWJlcigkbWFwLCAkbnVtYmVyKSB7XG5cbiAgJG5leHQtbnVtYmVyOiBudWxsO1xuXG4gIEBlYWNoICRrLCAkdiBpbiAkbWFwIHtcbiAgICBAaWYgdHlwZS1vZigkdikgPT0gJ251bWJlcicgYW5kICR2ID4gJG51bWJlciBhbmQgKCRuZXh0LW51bWJlciA9PSBudWxsIG9yICR2IDwgJG5leHQtbnVtYmVyKSB7XG4gICAgICAkbmV4dC1udW1iZXI6ICR2O1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJG5leHQtbnVtYmVyO1xufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBsYXN0IGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigka2V5KSB7XG4gICRsaXN0OiAoKTtcbiAgJGZvdW5kLWtleTogZmFsc2U7XG5cbiAgQGVhY2ggJG5hbWUgaW4gJC16Zi1icmVha3BvaW50cy1rZXlzIHtcbiAgICBAaWYgKCRuYW1lID09ICRrZXkpIHtcbiAgICAgICRmb3VuZC1rZXk6IHRydWU7XG4gICAgfVxuICAgIEBpZiBub3QgJGZvdW5kLWtleSB7XG4gICAgICAkbGlzdDogYXBwZW5kKCRsaXN0LCAkbmFtZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJGxpc3Q7XG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IC0gYSBuYW1lZCBvciBub24tbmFtZWQgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCRicmVha3BvaW50KSB7XG4gICRsYXN0OiAkLXpmLXplcm8tYnJlYWtwb2ludDtcbiAgJGZvdW5kOiBmYWxzZTtcblxuICAkdmFsdWU6IHVuaXRsZXNzLWNhbGMoJGJyZWFrcG9pbnQsIDFweCk7XG4gIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICBAaWYgdW5pdGxlc3MtY2FsYygkdmFsKSA+ICR2YWx1ZSB7XG4gICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkbGFzdDogJGtleTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRsYXN0O1xufVxuXG4vLy8gR2V0IGEgdmFsdWUgZm9yIGEgYnJlYWtwb2ludCBmcm9tIGEgcmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdCByZWdhcmRsZXNzIG9mIGAkdmFsdWVgLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgaGFzIHRoZSBrZXkgYCR2YWx1ZWAsIHRoZSBleGFjdCBicmVha3BvaW50IHZhbHVlIGlzIHJldHVybmVkLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgZG9lcyAqbm90KiBoYXZlIHRoZSBicmVha3BvaW50LCB0aGUgdmFsdWUgbWF0Y2hpbmcgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgaW4gdGhlIGNvbmZpZyBtYXAgaXMgcmV0dXJuZWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBSZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge01peGVkfSBUaGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlLlxuQGZ1bmN0aW9uIC16Zi1nZXQtYnAtdmFsKCRtYXAsICR2YWx1ZSkge1xuICAvLyBJZiB0aGUgZ2l2ZW4gbWFwIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXRcbiAgQGlmIHR5cGUtb2YoJG1hcCkgPT0gJ251bWJlcicge1xuICAgIEByZXR1cm4gJG1hcDtcbiAgfVxuXG5cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgZ2xvYmFsbHlcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgICAgJHZhbHVlOiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCR2YWx1ZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGluIHRoZSBsb2NhbCBjb25maWcgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRtYXAsICR2YWx1ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkdmFsdWUpO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgZmluZCB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBhbmQgcmV0dXJuIHRoYXQgdmFsdWVcbiAgQGVsc2Uge1xuICAgICRhbmNob3I6IG51bGw7XG4gICAgJGZvdW5kOiBmYWxzZTtcblxuICAgIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRtYXAsICRrZXkpIHtcbiAgICAgICAgICAkYW5jaG9yOiAka2V5O1xuICAgICAgICB9XG4gICAgICAgIEBpZiAka2V5ID09ICR2YWx1ZSB7XG4gICAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICRhbmNob3IpO1xuICB9XG59XG5cbi8vLyBSZXR1cm4gdGhlIGJlc3QgYnJlYWtwb2ludCB0byB1c2UgYWNjb3JkaW5nIHRvIHRoZSBjYWxsaW5nIGNvbnRleHQuIEl0IHJldHVybnMgaW4gb3JkZXI6XG4vLy8gMS4gdGhlIGdpdmVuIGAkdmFsdWVgIGFyZ3VtZW50IGlmIGl0IGlzIG5vdCBudWxsLlxuLy8vIDIuIHRoZSBnbG9iYWwgYnJlYWtwb2ludCBjb250ZXh0IGAkLXpmLXNpemVgIGlmIGl0IGlzIG5vdCBudWxsIChsaWtlIGlmIGNhbGxlZCBpbnNpZGUgdGhlbiBgYnJlYWtwb2ludCgpYCBtaXhpbilcbi8vLyAzLiB0aGUgZ2l2ZW4gYCRkZWZhdWx0YCBhcmd1bWVudC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHZhbHVlIFtudWxsXSAtIEJyZWFrcG9pbnQgdG8gdXNlIGluIHByaW9yaXR5IGlmIG5vbi1udWxsLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRlZmF1bHQgW251bGxdIC0gQnJlYWtwb2ludCB0byB1c2UgYnkgZGVmYXVsdCBpZiBubyBvdGhlciB2YWx1ZSBjYW4gYmUgdXNlZC5cbi8vL1xuLy8vIEByZXR1cm4ge0tleXdvcmR9IFRoZSByZXNvbHZlZCBicmVha3BvaW50LlxuQGZ1bmN0aW9uIC16Zi1jdXJyZW50LWJyZWFrcG9pbnQoJHZhbHVlOiBudWxsLCAkZGVmYXVsdDogbnVsbCkge1xuICBAaWYgKCR2YWx1ZSAhPSBudWxsKSB7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cbiAgQGVsc2UgaWYgKHZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkgYW5kIHR5cGUtb2YoJC16Zi1zaXplKSAhPSAnbnVtYmVyJykgYW5kICQtemYtc2l6ZSAhPSBudWxsIHtcbiAgICBAcmV0dXJuICQtemYtc2l6ZTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiAkZGVmYXVsdDtcbiAgfVxufVxuXG4vLy8gUmV0dXJuIG1lZGlhIHF1ZXJ5IHN0cmluZyBmcm9tIHRoZSBnaXZlbiBtaW4gYW5kL29yIG1heCBsaW1pdHMuXG4vLy8gSWYgYSBsaW1pdCBpcyBlcXVhbCB0byBgbnVsbGAgb3IgYDBgLCBpdCBpcyBpZ25vcmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtaW4gWzBdIC0gTWluIG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4IFswXSAtIE1heCBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1pbi1uYW1lIFsnbWluLXdpZHRoJ10gLSBOYW1lIG9mIHRoZSBtaW4gbWVkaWEgcXVlcnkgbGltaXQuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRkZWxpbWl0ZXIgWydtYXgtd2lkdGgnXSAtIE5hbWUgb2YgdGhlIG1heCBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IE1lZGlhIFF1ZXJ5IHN0cmluZy5cbkBmdW5jdGlvbiAtemYtYnAtam9pbihcbiAgJG1pbjogMCxcbiAgJG1heDogMCxcbiAgJG1pbi1uYW1lOiAnbWluLXdpZHRoJyxcbiAgJG1heC1uYW1lOiAnbWF4LXdpZHRoJ1xuKSB7XG4gIEByZXR1cm4gemYtc3RyLWpvaW4oXG4gICAgaWYoJG1pbiBhbmQgJG1pbiA+IDAsICcoI3skbWluLW5hbWV9OiAjeyRtaW59KScsIG51bGwpLFxuICAgIGlmKCRtYXggYW5kICRtYXggPiAwLCAnKCN7JG1heC1uYW1lfTogI3skbWF4fSknLCBudWxsKSxcbiAgICAnIGFuZCAnKTtcbn1cblxuJHNtYWxsLXVwOiAnJztcbiRzbWFsbC1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgc21hbGwpIHtcbiAgJHNtYWxsLXVwOiBzY3JlZW47XG4gICRzbWFsbC1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChzbWFsbCBvbmx5KX0nKTtcbn1cblxuJG1lZGl1bS11cDogJyc7XG4kbWVkaXVtLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBtZWRpdW0pIHtcbiAgJG1lZGl1bS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0nKTtcbiAgJG1lZGl1bS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gb25seSl9Jyk7XG59XG5cbiRsYXJnZS11cDogJyc7XG4kbGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIGxhcmdlKSB7XG4gICRsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfScpO1xuICAkbGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2Ugb25seSl9Jyk7XG59XG5cbiR4bGFyZ2UtdXA6ICcnO1xuJHhsYXJnZS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeGxhcmdlKSB7XG4gICR4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9Jyk7XG4gICR4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlIG9ubHkpfScpO1xufVxuXG4keHhsYXJnZS11cDogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHh4bGFyZ2UpIHtcbiAgJHh4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHh4bGFyZ2UpfScpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHJldmVhbFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgbW9kYWwuXG4vLy8gQHR5cGUgQ29sb3JcbiRyZXZlYWwtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB3aWR0aCBvZiBhIG1vZGFsLCB3aXRoIG5vIGNsYXNzIGFwcGxpZWQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXdpZHRoOiA2MDBweCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWF4aW11bSB3aWR0aCBvZiBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1tYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGFyb3VuZCBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyB6LWluZGV4IGZvciBtb2RhbHMuIFRoZSBvdmVybGF5IHVzZXMgdGhpcyB2YWx1ZSwgd2hpbGUgdGhlIG1vZGFsIGl0c2VsZiB1c2VzIHRoaXMgdmFsdWUgcGx1cyBvbmUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXppbmRleDogMTAwNSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgbW9kYWwgb3ZlcmxheXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC40NSkgIWRlZmF1bHQ7XG5cblxuLy8gUGxhY2Vob2xkZXIgc2VsZWN0b3IgZm9yIG1lZGl1bS1hbmQtdXAgbW9kYWxzXG4vLyBQcmV2ZW50cyBkdXBsaWNhdGUgQ1NTIHdoZW4gZGVmaW5pbmcgbXVsdGlwbGUgUmV2ZWFsIHNpemVzXG4vLyBUaGlzIHNob3VsZCBiZSBpbiB0aGUgc2FtZSBicmVha3BvaW50IHRoZW4gYEBtaXhpbiByZXZlYWwtbW9kYWwtd2lkdGhgXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAlcmV2ZWFsLWNlbnRlcmVkIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG5cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG1vZGFsIG92ZXJsYXkuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIG92ZXJsYXkuXG5AbWl4aW4gcmV2ZWFsLW92ZXJsYXkoJGJhY2tncm91bmQ6ICRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kKSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkcmV2ZWFsLXppbmRleDtcblxuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuXG4vLy8gQWRkcyBiYXNlIHN0eWxlcyBmb3IgYSBtb2RhbC5cbkBtaXhpbiByZXZlYWwtbW9kYWwtYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgei1pbmRleDogJHJldmVhbC16aW5kZXggKyAxO1xuICAvLyBXb3JrYXJvdW5kIGFuZHJvaWQgYnJvd3NlciB6LWluZGV4IGJ1Z1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHJldmVhbC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJHJldmVhbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRyZXZlYWwtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmV2ZWFsLWJhY2tncm91bmQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHJvd3MgZG9uJ3QgaGF2ZSBhIG1pbi13aWR0aCBvbiB0aGVtXG4gIC5jb2x1bW4ge1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxuXG4gIC8vIFN0cmlwIG1hcmdpbnMgZnJvbSB0aGUgbGFzdCBpdGVtIGluIHRoZSBtb2RhbFxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGp1c3RzIHRoZSB3aWR0aCBvZiBhIG1vZGFsLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggLSBXaWR0aCBvZiB0aGUgbW9kYWwuIEdlbmVyYWxseSBhIHBlcmNlbnRhZ2UuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXgtd2lkdGggWyRyZXZlYWwtbWF4LXdpZHRoXSAtIE1heGltdW0gd2lkdGggb2YgdGhlIG1vZGFsLlxuQG1peGluIHJldmVhbC1tb2RhbC13aWR0aChcbiAgJHdpZHRoOiAkcmV2ZWFsLXdpZHRoLFxuICAkbWF4LXdpZHRoOiAkcmV2ZWFsLW1heC13aWR0aFxuKSB7XG4gIC8vIEV4dGVuZHMgbXVzdCBiZSBtYWRlIG91dHNpZGUgb2YgYnJlYWtwb2ludHMgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBuZXdlciBTYXNzIHZlcnNpb25zIChsaWJzYXNzIHYzLjUpXG4gIEBleHRlbmQgJXJldmVhbC1jZW50ZXJlZDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtc2NyZWVuIG1vZGFsLCB3aGljaCBzdHJldGNoZXMgdGhlIGZ1bGwgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgd2luZG93LlxuQG1peGluIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuIHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXZlYWwge1xuXG4gIC8vLyBEaXNhYmxlcyB0aGUgc2Nyb2xsIHdoZW4gUmV2ZWFsIGlzIHNob3duIHRvIHByZXZlbnQgdGhlIGJhY2tncm91bmQgZnJvbSBzaGlmdGluZ1xuICBodG1sLmlzLXJldmVhbC1vcGVuIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuXG4gICAgJi56Zi1oYXMtc2Nyb2xsIHtcbiAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICB9XG5cbiAgICBib2R5IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgLy8gT3ZlcmxheVxuICAucmV2ZWFsLW92ZXJsYXkge1xuICAgIEBpbmNsdWRlIHJldmVhbC1vdmVybGF5O1xuICB9XG5cbiAgLy8gTW9kYWwgY29udGFpbmVyXG4gIC5yZXZlYWwge1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlO1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgkcmV2ZWFsLXdpZHRoKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAxMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICAvLyBSZW1vdmUgcGFkZGluZ1xuICAgICYuY29sbGFwc2Uge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAvLyBTaXppbmcgY2xhc3Nlc1xuICAgICYudGlueSAgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoMzAlKTsgfVxuICAgICYuc21hbGwgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoNTAlKTsgfVxuICAgICYubGFyZ2UgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoOTAlKTsgfVxuXG4gICAgLy8gRnVsbC1zY3JlZW4gbW9kZVxuICAgICYuZnVsbCB7XG4gICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtZnVsbHNjcmVlbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgICYud2l0aG91dC1vdmVybGF5IHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB9XG4gIH1cbn1cbiIsIi51cHBlcmNhc2Uge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbn1cblxuLmNhcGl0YWxpemUge1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xufVxuXG4uZ3JheS1mb250LWNvbG9yIHtcbiAgICBjb2xvcjogJGdyYXk7XG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnByaW1hcnktZm9udC1jb2xvciB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xufVxuXG4vLyAuZm9udC1wcmltYXJ5IHtcbi8vICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4vLyB9XG5cbi8vIC5mb250LXNlY29uZGFyeSB7XG4vLyAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4vLyB9XG5cbi5mb250LXNlY29uZGFyeS1ib2xkIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uZm9udC1zZW1pYm9sZCB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxucCB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbn1cblxuLy8gaDEge1xuLy8gICBsaW5lLWhlaWdodDogMTtcbi8vIH1cblxuLy8gaDIge1xuLy8gICBsaW5lLWhlaWdodDogMS4xO1xuLy8gfVxuXG4vLyBoM3tcbi8vICAgbGluZS1oZWlnaHQ6IDEuMjtcbi8vIH1cblxuLy8gaDZ7XG4vLyAgIGxpbmUtaGVpZ2h0OiAxLjc7XG4vLyB9XG5cbmgzIHtcbiAgICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4uZnQtc3otMTQge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgIC5hcnRpY2xlLWl0ZW0tY29udGVudCAmIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuOTtcbiAgICB9XG59XG4uZnQtc3otMTUge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdtYXRoJztcblxuJHVuaXQtd2FybmluZ3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gUmVtb3ZlcyB0aGUgdW5pdCAoZS5nLiBweCwgZW0sIHJlbSkgZnJvbSBhIHZhbHVlLCByZXR1cm5pbmcgdGhlIG51bWJlciBvbmx5LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRudW0gLSBOdW1iZXIgdG8gc3RyaXAgdW5pdCBmcm9tLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIHNhbWUgbnVtYmVyLCBzYW5zIHVuaXQuXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtKSB7XG4gIEByZXR1cm4gZGl2aWRlKCRudW0sICRudW0gKiAwICsgMSk7XG59XG5cbi8vLyBDb252ZXJ0cyBvbmUgb3IgbW9yZSBwaXhlbCB2YWx1ZXMgaW50byBtYXRjaGluZyByZW0gdmFsdWVzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHZhbHVlcyAtIE9uZSBvciBtb3JlIHZhbHVlcyB0byBjb252ZXJ0LiBCZSBzdXJlIHRvIHNlcGFyYXRlIHRoZW0gd2l0aCBzcGFjZXMgYW5kIG5vdCBjb21tYXMuIElmIHlvdSBuZWVkIHRvIGNvbnZlcnQgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCwgd3JhcCB0aGUgbGlzdCBpbiBwYXJlbnRoZXNlcy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gVGhlIGJhc2UgdmFsdWUgdG8gdXNlIHdoZW4gY2FsY3VsYXRpbmcgdGhlIGByZW1gLiBJZiB5b3UncmUgdXNpbmcgRm91bmRhdGlvbiBvdXQgb2YgdGhlIGJveCwgdGhpcyBpcyAxNnB4LiBJZiB0aGlzIHBhcmFtZXRlciBpcyBgbnVsbGAsIHRoZSBmdW5jdGlvbiB3aWxsIHJlZmVyZW5jZSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZSBhcyB0aGUgYmFzZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBBIGxpc3Qgb2YgY29udmVydGVkIHZhbHVlcy5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZTogbnVsbCkge1xuICAkcmVtLXZhbHVlczogKCk7XG4gICRjb3VudDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICAvLyBUaGlzIGlzIGJlY2F1c2UgMTAwJSBmb250IHNpemUgPSAxNnB4IGluIG1vc3QgYWxsIGJyb3dzZXJzXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiBkaXZpZGUoJGJhc2UsIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIC8vIFVzaW5nIHJlbSBhcyBiYXNlIGFsbG93cyBjb3JyZWN0IHNjYWxpbmdcbiAgQGlmIHVuaXQoJGJhc2UpID09ICdyZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmICRjb3VudCA9PSAxIHtcbiAgICBAcmV0dXJuIC16Zi10by1yZW0oJHZhbHVlcywgJGJhc2UpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY291bnQge1xuICAgICRyZW0tdmFsdWVzOiBhcHBlbmQoJHJlbS12YWx1ZXMsIC16Zi10by1yZW0obnRoKCR2YWx1ZXMsICRpKSwgJGJhc2UpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHJlbS12YWx1ZXM7XG59XG5cbi8vIENvbnZlcnRzIGEgdW5pdGxlc3MsIHBpeGVsLCBvciByZW0gdmFsdWUgdG8gZW0sIGZvciB1c2UgaW4gYnJlYWtwb2ludHMuXG5AZnVuY3Rpb24gLXpmLWJwLXRvLWVtKCR2YWx1ZSkge1xuICAvLyBQaXhlbCBhbmQgdW5pdGxlc3MgdmFsdWVzIGFyZSBjb252ZXJ0ZWQgdG8gcmVtc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcgb3IgdW5pdGxlc3MoJHZhbHVlKSB7XG4gICAgJHZhbHVlOiByZW0tY2FsYygkdmFsdWUsICRiYXNlOiAxNnB4KTtcbiAgfVxuXG4gIC8vIFRoZW4gdGhlIHZhbHVlIGlzIGNvbnZlcnRlZCB0byBlbXNcbiAgQHJldHVybiBzdHJpcC11bml0KCR2YWx1ZSkgKiAxZW07XG59XG5cbi8vLyBDb252ZXJ0cyBhIHBpeGVsIHZhbHVlIHRvIG1hdGNoaW5nIHJlbSB2YWx1ZS4gKkFueSogdmFsdWUgcGFzc2VkLCByZWdhcmRsZXNzIG9mIHVuaXQsIGlzIGFzc3VtZWQgdG8gYmUgYSBwaXhlbCB2YWx1ZS4gQnkgZGVmYXVsdCwgdGhlIGJhc2UgcGl4ZWwgdmFsdWUgdXNlZCB0byBjYWxjdWxhdGUgdGhlIHJlbSB2YWx1ZSBpcyB0YWtlbiBmcm9tIHRoZSBgJGdsb2JhbC1mb250LXNpemVgIHZhcmlhYmxlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFBpeGVsIHZhbHVlIHRvIGNvbnZlcnQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIEJhc2UgZm9yIHBpeGVsIGNvbnZlcnNpb24uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBBIG51bWJlciBpbiByZW1zLCBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSBnaXZlbiB2YWx1ZSBhbmQgdGhlIGJhc2UgcGl4ZWwgdmFsdWUuIHJlbSB2YWx1ZXMgYXJlIHBhc3NlZCB0aHJvdWdoIGFzIGlzLlxuQGZ1bmN0aW9uIC16Zi10by1yZW0oJHZhbHVlLCAkYmFzZTogbnVsbCkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSAhPSAnbnVtYmVyJyB7XG4gICAgQGlmICR1bml0LXdhcm5pbmdzIHtcbiAgICAgIEB3YXJuIGluc3BlY3QoJHZhbHVlKSArICcgd2FzIHBhc3NlZCB0byByZW0tY2FsYygpLCB3aGljaCBpcyBub3QgYSBudW1iZXIuJztcbiAgICB9XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cblxuICAvLyBUcmFuc2Zvcm0gZW0gaW50byByZW0gaWYgc29tZW9uZSBoYW5kcyBvdmVyICdlbSdzXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ2VtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAxcmVtO1xuICB9XG5cbiAgLy8gQ2FsY3VsYXRlIHJlbSBpZiB1bml0cyBmb3IgJHZhbHVlIGlzIG5vdCByZW0gb3IgZW1cbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSAncmVtJyB7XG4gICAgJHZhbHVlOiBkaXZpZGUoc3RyaXAtdW5pdCgkdmFsdWUpLCBzdHJpcC11bml0KCRiYXNlKSkgKiAxcmVtO1xuICB9XG5cbiAgLy8gVHVybiAwcmVtIGludG8gMFxuICBAaWYgJHZhbHVlID09IDByZW0ge1xuICAgICR2YWx1ZTogMDtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCwgcGVyY2VudGFnZSwgcmVtIG9yIGVtIHZhbHVlIHRvIGEgdW5pdGxlc3MgdmFsdWUgYmFzZWQgb24gYSBnaXZlbiBmb250IHNpemUuIElkZWFsIGZvciB3b3JraW5nIG91dCB1bml0bGVzcyBsaW5lIGhlaWdodHMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gY29udmVydCB0byBhIHVuaXRsZXNzIGxpbmUgaGVpZ2h0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIC0gVGhlIGZvbnQgc2l6ZSB0byB1c2UgdG8gd29yayBvdXQgdGhlIGxpbmUgaGVpZ2h0IC0gZGVmYXVsdHMgdG8gJGdsb2JhbC1mb250LXNpemVcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBVbml0bGVzcyBudW1iZXJcbkBmdW5jdGlvbiB1bml0bGVzcy1jYWxjKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBGaXJzdCwgbGV0cyBjb252ZXJ0IG91ciAkYmFzZSB0byBwaXhlbHNcblxuICAvLyBJZiB0aGUgYmFzZSBmb250IHNpemUgaXMgYSAlLCB0aGVuIG11bHRpcGx5IGl0IGJ5IDE2cHhcbiAgQGlmIHVuaXQoJGJhc2UpID09ICclJyB7XG4gICAgJGJhc2U6IGRpdmlkZSgkYmFzZSwgMTAwJSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmIHVuaXQoJGJhc2UpID09ICdyZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmIHVuaXQoJGJhc2UpID09ICdlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBOb3cgbGV0J3MgY29udmVydCBvdXIgdmFsdWUgdG8gcGl4ZWxzIHRvb1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICclJyB7XG4gICAgJHZhbHVlOiBkaXZpZGUoJHZhbHVlLCAxMDAlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncmVtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ2VtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIC8vICdweCdcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIHtcbiAgICBAcmV0dXJuIGRpdmlkZShzdHJpcC11bml0KCR2YWx1ZSksIHN0cmlwLXVuaXQoJGJhc2UpKTtcbiAgfVxuXG4gIC8vIGFzc3VtZSB0aGF0IGxpbmUtaGVpZ2h0cyBncmVhdGVyIHRoYW4gMTAgYXJlIG1lYW50IHRvIGJlIGFic29sdXRlIGluICdweCdcbiAgQGlmIHVuaXRsZXNzKCR2YWx1ZSkgYW5kICgkdmFsdWUgPiAxMCkge1xuICAgIEByZXR1cm4gZGl2aWRlKCR2YWx1ZSwgc3RyaXAtdW5pdCgkYmFzZSkpO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG4iLCIvLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby12ZW5kb3ItcHJlZml4ZXNcblxuQG1peGluIGZvdW5kYXRpb24tbm9ybWFsaXplKCkge1xuICAvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbiAgLy8gRG9jdW1lbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuXG4gIGh0bWwge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIH1cblxuICAvLyBTZWN0aW9uc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cblxuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gIC8vIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIG1hcmdpbjogMC42N2VtIDA7XG4gIH1cblxuICAvLyBHcm91cGluZyBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbiAgaHIge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gICAgaGVpZ2h0OiAwOyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBwcmUge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBUZXh0LWxldmVsIHNlbWFudGljc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC8vIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gIC8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG5cbiAgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IDA7IC8vIDFcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG5cbiAgYixcbiAgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGNvZGUsXG4gIGtiZCxcbiAgc2FtcCB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gICAgZm9udC1zaXplOiAxZW07IC8vIDJcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgfVxuXG4gIC8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAvLyBhbGwgYnJvd3NlcnMuXG5cbiAgc3ViLFxuICBzdXAge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICBzdWIge1xuICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgfVxuXG4gIHN1cCB7XG4gICAgdG9wOiAtMC41ZW07XG4gIH1cblxuICAvLyBFbWJlZGRlZCBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cblxuICBpbWcge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIC8vIEZvcm1zXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cblxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8vIDFcbiAgICBmb250LXNpemU6IDEwMCU7IC8vIDFcbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLy8gMVxuICAgIG1hcmdpbjogMDsgLy8gMlxuICB9XG5cbiAgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gIC8vIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG5cbiAgYnV0dG9uLFxuICBpbnB1dCB7IC8vIDFcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAvLyAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG5cbiAgYnV0dG9uLFxuICBzZWxlY3QgeyAvLyAxXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuXG4gIGJ1dHRvbixcbiAgW3R5cGU9XCJidXR0b25cIl0sXG4gIFt0eXBlPVwicmVzZXRcIl0sXG4gIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG5cbiAgYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuXG4gIGJ1dHRvbjotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG5cbiAgZmllbGRzZXQge1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gIC8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgLy8gMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAvLyAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cblxuICBsZWdlbmQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBjb2xvcjogaW5oZXJpdDsgLy8gMlxuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAxXG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gM1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG5cbiAgcHJvZ3Jlc3Mge1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuXG4gIHRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICAvLyAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG5cbiAgW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDJcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblxuICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cblxuICBbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDFcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMlxuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuXG4gIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAvLyAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG5cbiAgOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbiAgICBmb250OiBpbmhlcml0OyAvLyAyXG4gIH1cblxuICAvLyBJbnRlcmFjdGl2ZVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG5cbiAgZGV0YWlscyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgc3VtbWFyeSB7XG4gICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICB9XG5cbiAgLy8gTWlzY1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cblxuICB0ZW1wbGF0ZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuXG4gIFtoaWRkZW5dIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gRGlzYWJsZSBvdXRsaW5lIHdoZW4gaW50ZW50IGlzIGNsZWFybHkgbW91c2UgYW5kIHRvdWNoXG4gIFtkYXRhLXdoYXRpbnRlbnQ9XCJtb3VzZVwiXSxcbiAgW2RhdGEtd2hhdGludGVudD1cInRvdWNoXCJdLFxuICBbZGF0YS13aGF0aW5wdXQ9XCJtb3VzZVwiXSxcbiAgW2RhdGEtd2hhdGlucHV0PVwidG91Y2hcIl0ge1xuICAgICosICo6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlIGlPUyBjYWxsb3V0cyB3aGVuIGRyYWdnYWJsZSBpcyBmYWxzZVxuICBbZHJhZ2dhYmxlPWZhbHNlXSB7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tY29sb3ItbGl0ZXJhbHMsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCBnbG9iYWxcbi8vLy9cblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8vIEZvbnQgc2l6ZSBhdHRyaWJ1dGUgYXBwbGllZCB0byBgPGh0bWw+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+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJGV4Y2x1ZGVkLWJwczogLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkbWluLWJyZWFrcG9pbnQpO1xuXG4gICAgLy8gT3V0cHV0IG5ldyB3aWR0aHMgdG8gbm90IGluY2x1ZGUgZ3V0dGVyc1xuICAgIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZihzbC1jb250YWluKCRleGNsdWRlZC1icHMsICRicCkpIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICAgICAgPiAuI3skYnB9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwKSB7XG4gICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgICAgID4gLiN7JGJwfS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZSgkaSwgJGd1dHRlci10eXBlOiBub25lKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgbWFyZ2luLSN7JHZhbHVlfTogMDtcbiAgICAgIH1cblxuICAgICAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgICAgcGFkZGluZy0jeyR2YWx1ZX06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBSZXR1cm5zIHRoZSBhcHByb3ByaWF0ZSBDU1MgdmFsdWUgdG8gb2Zmc2V0IGEgY2VsbC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gU2l6ZSB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGB4eS1jZWxsKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSBNYXAgb2YgZ3V0dGVycyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIGZvciByZXNwb25zaXZlIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHVzZS4gQ2FuIGJlIGBtYXJnaW5gIG9yIGBwYWRkaW5nYFxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ8U3RyaW5nfSBUaGUgY2VsbCBvZmZzZXQgcHJvcGVydHkgdmFsdWUuXG5AZnVuY3Rpb24geHktY2VsbC1vZmZzZXQoXG4gICRuLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogbnVsbFxuKSB7XG4gICRicmVha3BvaW50OiAtemYtY3VycmVudC1icmVha3BvaW50KCRicmVha3BvaW50LCAkZGVmYXVsdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICAkc2l6ZTogeHktY2VsbC1zaXplKCRuKTtcblxuICAkb2Zmc2V0OiAkc2l6ZTtcbiAgQGlmICgkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcbiAgICAkZ3V0dGVyOiByZW0tY2FsYyh4eS1jZWxsLWd1dHRlcnMoJGd1dHRlcnMsICRicmVha3BvaW50KSk7XG4gICAgJG9mZnNldDogaWYoJGd1dHRlciA9PSAwLCAkc2l6ZSwgY2FsYygjeyRzaXplfSArICN7JGd1dHRlcn0gLyAyKSk7XG4gIH1cbiAgQHJldHVybiAkb2Zmc2V0O1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQvYm90dG9tIGJ5IGAkbmAgY29sdW1ucy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gU2l6ZSB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGB4eS1jZWxsKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSBNYXAgb2YgZ3V0dGVycyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIGZvciByZXNwb25zaXZlIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHVzZS4gQ2FuIGJlIGBtYXJnaW5gIG9yIGBwYWRkaW5nYFxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRicmVha3BvaW50IFtudWxsXSAtIEJyZWFrcG9pbnQgdG8gdXNlIGZvciBgJGd1dHRlcnNgLiBJdCBjYW4gYmUgYSBicmVha3BvaW50IG5hbWUsIGxpc3Qgb2YgYnJlYWtwb2ludHMgb3IgYGF1dG9gIGZvciBhbGwgYnJlYWtwb2ludHMuIElmIGEgbGlzdCBpcyBnaXZlbiwgbWVkaWEtcXVlcmllcyB3aWxsIGJlIGdlbmVyYXRlZC4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gU2V0cyB0aGUgZGlyZWN0aW9uIG9mIHRoZSBvZmZzZXQuIElmIHNldCB0byB0cnVlIHdpbGwgYXBwbHkgbWFyZ2luLXRvcCBpbnN0ZWFkLlxuQG1peGluIHh5LWNlbGwtb2Zmc2V0KFxuICAkbixcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICR2ZXJ0aWNhbDogZmFsc2Vcbikge1xuICAkYnJlYWtwb2ludDogLXpmLWN1cnJlbnQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCwgJGRlZmF1bHQ6ICQtemYtemVyby1icmVha3BvaW50KTtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsLCAndG9wJywgJGdsb2JhbC1sZWZ0KTtcblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50LWluKCRicmVha3BvaW50LCAkbWVkaWEtcXVlcmllczogJ2Zvci1saXN0cycpIHtcbiAgICAkb2Zmc2V0OiB4eS1jZWxsLW9mZnNldCgkbiwgJGd1dHRlcnMsICRndXR0ZXItdHlwZSk7XG4gICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06ICN7JG9mZnNldH07XG4gIH1cbn1cbiIsIi8vIHNhc3MtbGludDpkaXNhYmxlIG5vLXZlbmRvci1wcmVmaXhlc1xuXG4vLy8gTW9kaWZpZXMgYSBncmlkIHRvIGdpdmUgaXQgXCJmcmFtZVwiIGJlaGF2aW9yIChubyBvdmVyZmxvdywgbm8gd3JhcCwgc3RyZXRjaCBiZWhhdmlvcilcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBJcyBncmlkIHZlcnRpY2FsIG9yIGhvcml6b250YWwuIFNob3VsZCBtYXRjaCBncmlkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJG5lc3RlZCBbZmFsc2VdIC0gSXMgZ3JpZCBuZXN0ZWQgb3Igbm90LiBJZiBuZXN0ZWQgaXMgdHJ1ZSB0aGlzIHNldHMgdGhlIGZyYW1lIHRvIDEwMCUgaGVpZ2h0LCBvdGhlcndpc2Ugd2lsbCBiZSAxMDB2aC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFtudWxsXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbmNsdWRlLWJhc2UgW3RydWVdIC0gSW5jbHVkZSB0aGUgYmFzZSBzdHlsZXMgdGhhdCBkb24ndCB2YXJ5IHBlciBicmVha3BvaW50LlxuQG1peGluIHh5LWdyaWQtZnJhbWUoXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICRuZXN0ZWQ6IGZhbHNlLFxuICAkZ3V0dGVyczogbnVsbCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICRpbmNsdWRlLWJhc2U6IHRydWVcbikge1xuXG4gIEBpZiAkaW5jbHVkZS1iYXNlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuXG4gIEBpZiAkYnJlYWtwb2ludCA9PSBudWxsIGFuZCB0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbWFwJyB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUoJHZlcnRpY2FsLCAkbmVzdGVkLCAkZ3V0dGVycywgJC16Zi1zaXplLCBmYWxzZSk7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAvLyBHZXQgb3VyIGd1dHRlcnMgaWYgYXBwbGljYWJsZVxuICAgICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG5cbiAgICAvLyBJZiB3ZSBoYXZlIGEgZ3V0dGVyLCBhZGQgaXQgdG8gdGhlIHdpZHRoL2hlaWdodFxuICAgIEBpZiAkZ3V0dGVyIHtcbiAgICAgIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgICAgICR1bml0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZoKTtcbiAgICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcik7XG4gICAgICAgIGhlaWdodDogY2FsYygjeyR1bml0fSArICN7JGd1dHRlcn0pO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICR1bml0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZ3KTtcbiAgICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcik7XG4gICAgICAgIHdpZHRoOiBjYWxjKCN7JHVuaXR9ICsgI3skZ3V0dGVyfSk7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgICAgIGhlaWdodDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2aCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgd2lkdGg6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdncpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gTW9kaWZpZXMgYSBjZWxsIHRvIGdpdmUgaXQgXCJibG9ja1wiIGJlaGF2aW9yIChvdmVyZmxvdyBhdXRvLCBpbmVydGlhbCBzY3JvbGxpbmcpXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gSXMgZ3JpZCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsLiBTaG91bGQgbWF0Y2ggZ3JpZC5cbkBtaXhpbiB4eS1jZWxsLWJsb2NrKFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJHByb3BlcnR5OiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgJ292ZXJmbG93LXknLCAnb3ZlcmZsb3cteCcpO1xuXG4gIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIH0gQGVsc2Uge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbn1cblxuLy8vIENvbnRhaW5lciBmb3IgaW5zaWRlIGEgZ3JpZCBmcmFtZSBjb250YWluaW5nIG11bHRpcGxlIGJsb2Nrcy4gVHlwaWNhbGx5IHVzZWRcbi8vLyBhcyBhIG1vZGlmaWVyIGZvciBhIGAuY2VsbGAgdG8gYWxsb3cgdGhlIGNlbGwgdG8gcGFzcyBhbG9uZyBmbGV4IHNpemluZ1xuLy8vIGNvbnN0cmFpbnRzIC8gZnJvbSBwYXJlbnRzIHRvIGNoaWxkcmVuLlxuQG1peGluIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuXG4gID4gLmdyaWQteCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvblxuLy8vL1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGJ1dHRvbiBlbGVtZW50cy5cbi8vLyBAdHlwZSBGb250XG4kYnV0dG9uLWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGJ1dHRvbiBlbGVtZW50cy5cbi8vLyBJZ25vcmVkIGlmIG51bGwgKGRlZmF1bHQpXG4vLy8gQHR5cGUgRm9udC1XZWlnaHRcbiRidXR0b24tZm9udC13ZWlnaHQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tcGFkZGluZzogMC44NWVtIDFlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBhcm91bmQgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZpbGwgZm9yIGJ1dHRvbnMuIENhbiBlaXRoZXIgYmUgYHNvbGlkYCBvciBgaG9sbG93YC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kYnV0dG9uLWZpbGw6IHNvbGlkICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGl2ZSBmb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgYnV0dG9ucywgdHJhbnNwYXJlbnQgYnkgZGVmYXVsdFxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgd2lkdGggZm9yIGhvbGxvdyBvdXRsaW5lIGJ1dHRvbnNcbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBvcGFjaXR5IGZvciBhIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGhvbGxvdyBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbDogZmxpcCBmcm9tIG1hcmdpbi1yaWdodCB0byBtYXJnaW4tbGVmdCBmb3IgZGVmYXVsdHNcbkBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbn1cblxuLy8vIHRyYW5zaXRpb25zIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBBZGRpdGlvbmFsIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgLmV4cGFuZGVkXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJ1dHRvbi1yZXNwb25zaXZlLWV4cGFuZGVkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gVE9ETzogRG9jdW1lbnQgYnV0dG9uLWJhc2UoKSBtaXhpblxuQG1peGluIGJ1dHRvbi1iYXNlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogJGJ1dHRvbi1tYXJnaW47XG5cbiAgQGlmICh0eXBlLW9mKCRidXR0b24tcGFkZGluZykgPT0gJ21hcCcpIHtcbiAgICBAZWFjaCAkc2l6ZSwgJHBhZGRpbmcgaW4gJGJ1dHRvbi1wYWRkaW5nIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmc7XG4gIH1cblxuICBib3JkZXI6ICRidXR0b24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgdHJhbnNpdGlvbjogJGJ1dHRvbi10cmFuc2l0aW9uO1xuICBmb250LWZhbWlseTogJGJ1dHRvbi1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuICBmb250LXdlaWdodDogJGJ1dHRvbi1mb250LXdlaWdodDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vLyBFeHBhbmRzIGEgYnV0dG9uIHRvIG1ha2UgaXQgZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgdGhlIGV4cGFuZCBiZWhhdmlvci4gU2V0IHRvIGBmYWxzZWAgdG8gcmV2ZXJzZSB0aGlzIGJlaGF2aW9yLlxuQG1peGluIGJ1dHRvbi1leHBhbmQoJGV4cGFuZDogdHJ1ZSkge1xuICBAaWYgJGV4cGFuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgYmFzZSBzdHlsZXMgb2YgYSBob2xsb3cgb3IgY2xlYXIgYnV0dG9uIGZpbGxpbmcgYWNjb3JkaW5nIHRvIGAkZmlsbGAuXG4vLy8gU2VlIG1peGluIGBidXR0b24tZmlsbC1zdHlsZWAgZm9yIHRoZSBmaWxsaW5nIHN0eWxlcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRmaWxsIFskYnV0dG9uLWZpbGxdIC0gVHlwZSBvZiBmaWxsaW5nIGJldHdlZW4gYGhvbGxvd2AgYW5kIGBjbGVhcmAuIGBzb2xpZGAgaGFzIG5vIGVmZmVjdHMuXG5AbWl4aW4gYnV0dG9uLWZpbGwoXG4gICRmaWxsOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaWYgJGZpbGwgPT0gaG9sbG93IHtcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICB9XG4gIEBlbHNlIGlmICRmaWxsID09IGNsZWFyIHtcbiAgICBAaW5jbHVkZSBidXR0b24tY2xlYXI7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHZpc3VhbCBzdHlsZXMgb2YgYSBzb2xpZC9ob2xsb3cvY2xlYXIgYnV0dG9uIGZpbGxpbmcgYWNjb3JkaW5nIHRvIGAkZmlsbGAuXG4vLy8gU2VlIG1peGlucyBgYnV0dG9uLXN0eWxlYCwgYGJ1dHRvbi1ob2xsb3ctc3R5bGVgIGFuZCBgYnV0dG9uLWNsZWFyLXN0eWxlYCBmb3IgZWZmZWN0cyBvZiB2aXN1YWwgc3R5bGluZyBwYXJhbWV0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZpbGwgWyRidXR0b24tZmlsbF0gLSBUeXBlIG9mIGZpbGxpbmcgYmV0d2VlbiBgaG9sbG93YCBhbmQgYGNsZWFyYC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIC1cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIC1cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gLVxuQG1peGluIGJ1dHRvbi1maWxsLXN0eWxlKFxuICAkZmlsbDogJGJ1dHRvbi1maWxsLFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkY29sb3I6ICRidXR0b24tY29sb3Jcbikge1xuICBAaWYgJGZpbGwgPT0gc29saWQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmFja2dyb3VuZCwgJGJhY2tncm91bmQtaG92ZXIsICRjb2xvcik7XG4gIH1cbiAgQGVsc2UgaWYgJGZpbGwgPT0gaG9sbG93IHtcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRiYWNrZ3JvdW5kKTtcbiAgfVxuICBAZWxzZSBpZiAkZmlsbCA9PSBjbGVhciB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWNsZWFyLXN0eWxlKCRiYWNrZ3JvdW5kKTtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tc3R5bGUoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgQGlmICRiYWNrZ3JvdW5kLWhvdmVyID09IGF1dG8ge1xuICAgICRiYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzKTtcbiAgfVxuXG4gIC8vIERlZmF1bHQgYW5kIGRpc2FibGVkIHN0YXRlc1xuICAmLFxuICAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZDpob3ZlciwgJltkaXNhYmxlZF06aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMsICZbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgYmFzZSBzdHlsZXMgb2YgYSBob2xsb3cgYnV0dG9uLlxuLy8vIFNlZSBtaXhpbiBgYnV0dG9uLWhvbGxvdy1zdHlsZWAgZm9yIHRoZSBmaWxsaW5nIHN0eWxlcy5cbkBtaXhpbiBidXR0b24taG9sbG93IHtcbiAgJiwgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBob2xsb3cgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIFRleHQgYW5kIGJvcmRlciBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRob3Zlci1saWdodG5lc3MgWyRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzc10gLSBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJvcmRlci13aWR0aCBbJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoXSAtIEJvcmRlciB3aWR0aCBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbi1ob2xsb3ctc3R5bGUoXG4gICRjb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3MsXG4gICRib3JkZXItd2lkdGg6ICRidXR0b24taG9sbG93LWJvcmRlci13aWR0aFxuKSB7XG4gICRjb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkaG92ZXItbGlnaHRuZXNzKTtcblxuICAvLyBEZWZhdWx0IGFuZCBkaXNhYmxlZCBzdGF0ZXNcbiAgJixcbiAgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0sXG4gICYuZGlzYWJsZWQ6aG92ZXIsICZbZGlzYWJsZWRdOmhvdmVyLFxuICAmLmRpc2FibGVkOmZvY3VzLCAmW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRjb2xvcjtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgYmFzZSBzdHlsZXMgb2YgYSBjbGVhciBidXR0b24uXG4vLy8gU2VlIG1peGluIGBidXR0b24tY2xlYXItc3R5bGVgIGZvciB0aGUgZmlsbGluZyBzdHlsZXMuXG5AbWl4aW4gYnV0dG9uLWNsZWFyIHtcbiAgJiwgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgY2xlYXIgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkaG92ZXItbGlnaHRuZXNzIFskYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3NdIC0gQ29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyLlxuQG1peGluIGJ1dHRvbi1jbGVhci1zdHlsZShcbiAgJGNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRob3Zlci1saWdodG5lc3M6ICRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzc1xuKSB7XG4gICRjb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkaG92ZXItbGlnaHRuZXNzKTtcblxuICAvLyBEZWZhdWx0IGFuZCBkaXNhYmxlZCBzdGF0ZXNcbiAgJixcbiAgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0sXG4gICYuZGlzYWJsZWQ6aG92ZXIsICZbZGlzYWJsZWRdOmhvdmVyLFxuICAmLmRpc2FibGVkOmZvY3VzLCAmW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gIH1cbn1cblxuLy8vIEFkZHMgZGlzYWJsZWQgc3R5bGVzIHRvIGEgYnV0dG9uIGJ5IGZhZGluZyB0aGUgZWxlbWVudCBhbmQgcmVzZXRpbmcgdGhlIGN1cnNvci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9wYWNpdHkgWyRidXR0b24tb3BhY2l0eS1kaXNhYmxlZF0gLSBPcGFjaXR5IG9mIHRoZSBkaXNhYmxlZCBidXR0b24uXG5AbWl4aW4gYnV0dG9uLWRpc2FibGVkKFxuICAkb3BhY2l0eTogJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkXG4pIHtcbiAgb3BhY2l0eTogJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4vLy8gQWRkcyBhIGRyb3Bkb3duIGFycm93IHRvIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc2l6ZSBbMC40ZW1dIC0gU2l6ZSBvZiB0aGUgYXJyb3cuIFdlIHJlY29tbWVuZCB1c2luZyBhbiBgZW1gIHZhbHVlIHNvIHRoZSB0cmlhbmdsZSBzY2FsZXMgd2hlbiB1c2VkIGluc2lkZSBkaWZmZXJlbnQgc2l6ZXMgb2YgYnV0dG9ucy5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgW3doaXRlXSAtIENvbG9yIG9mIHRoZSBhcnJvdy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9mZnNldCBbJGJ1dHRvbi1wYWRkaW5nXSAtIERpc3RhbmNlIGJldHdlZW4gdGhlIGFycm93IGFuZCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uLiBEZWZhdWx0cyB0byB3aGF0ZXZlciB0aGUgcmlnaHQgcGFkZGluZyBvZiBhIGJ1dHRvbiBpcy5cbkBtaXhpbiBidXR0b24tZHJvcGRvd24oXG4gICRzaXplOiAwLjRlbSxcbiAgJGNvbG9yOiAkd2hpdGUsXG4gICRvZmZzZXQ6IGdldC1zaWRlKCRidXR0b24tcGFkZGluZywgcmlnaHQpXG4pIHtcbiAgJjo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkc2l6ZSwgJGNvbG9yLCBkb3duKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTsgLy8gQWxpZ25zIHRoZSBhcnJvdyB3aXRoIHRoZSB0ZXh0IG9mIHRoZSBidXR0b25cblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogI3skZ2xvYmFsLXJpZ2h0fTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkb2Zmc2V0O1xuICB9XG59XG5cbi8vLyBBZGRzIGFsbCBzdHlsZXMgZm9yIGEgYnV0dG9uLiBGb3IgbW9yZSBncmFudWxhciBjb250cm9sIG92ZXIgc3R5bGVzLCB1c2UgdGhlIGluZGl2aWR1YWwgYnV0dG9uIG1peGlucy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gbWFrZSB0aGUgYnV0dG9uIGZ1bGwtd2lkdGguXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0eWxlIFtzb2xpZF0gLSBTZXQgdG8gYGhvbGxvd2AgdG8gY3JlYXRlIGEgaG9sbG93IGJ1dHRvbi4gVGhlIGNvbG9yIGRlZmluZWQgaW4gYCRiYWNrZ3JvdW5kYCB3aWxsIGJlIHVzZWQgYXMgdGhlIHByaW1hcnkgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbkBtaXhpbiBidXR0b24oXG4gICRleHBhbmQ6IGZhbHNlLFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkY29sb3I6ICRidXR0b24tY29sb3IsXG4gICRzdHlsZTogJGJ1dHRvbi1maWxsXG4pIHtcbiAgQGluY2x1ZGUgYnV0dG9uLWJhc2U7XG4gIEBpbmNsdWRlIGJ1dHRvbi1maWxsKCRzdHlsZSk7XG4gIEBpbmNsdWRlIGJ1dHRvbi1maWxsLXN0eWxlKCRzdHlsZSwgJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IpO1xuXG4gIEBpZiAkZXhwYW5kIHtcbiAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJ1dHRvbiB7XG4gIC5idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbigkc3R5bGU6IG5vbmUpO1xuXG4gICAgLy8gU2l6ZXNcbiAgICBAZWFjaCAkc2l6ZSwgJHZhbHVlIGluIG1hcC1yZW1vdmUoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCkge1xuICAgICAgJi4jeyRzaXplfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZXhwYW5kZWQgeyBAaW5jbHVkZSBidXR0b24tZXhwYW5kOyB9XG5cbiAgICBAaWYgJGJ1dHRvbi1yZXNwb25zaXZlLWV4cGFuZGVkIHtcbiAgICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9IG9ubHkpIHtcbiAgICAgICAgICAmLiN7JHNpemV9LW9ubHktZXhwYW5kZWQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9IGRvd24pIHtcbiAgICAgICAgICAgICYuI3skc2l6ZX0tZG93bi1leHBhbmRlZCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgjeyRzaXplfSkge1xuICAgICAgICAgICAgJi4jeyRzaXplfS1leHBhbmRlZCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU29saWQsIGhvbGxvdyAmIGNsZWFyIHN0eWxlc1xuICAgIEBlYWNoICRmaWxsaW5nIGluIChzb2xpZCBob2xsb3cgY2xlYXIpIHtcbiAgICAgICRzZWxlY3RvcjogaWYoJGJ1dHRvbi1maWxsID09ICRmaWxsaW5nLCBudWxsLCAnLiN7JGZpbGxpbmd9Jyk7XG5cbiAgICAgICYjeyRzZWxlY3Rvcn0ge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZmlsbCgkZmlsbGluZyk7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsLXN0eWxlKCRmaWxsaW5nKTtcblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZmlsbC1zdHlsZSgkZmlsbGluZywgJGNvbG9yLCBhdXRvLCBhdXRvKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAgICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kaXNhYmxlZDtcbiAgICB9XG5cbiAgICAvLyBEcm9wZG93biBhcnJvd1xuICAgICYuZHJvcGRvd24ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRyb3Bkb3duO1xuXG4gICAgICBAaWYgJGJ1dHRvbi1maWxsID09IGhvbGxvdyB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5ob2xsb3csICYuY2xlYXIge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQnV0dG9uIHdpdGggZHJvcGRvd24gYXJyb3cgb25seVxuICAgICYuYXJyb3ctb25seTo6YWZ0ZXIge1xuICAgICAgdG9wOiAtMC4xZW07XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgfVxuICB9XG5cbiAgYS5idXR0b24geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGNsb3NlLWJ1dHRvblxuLy8vL1xuXG4vLy8gRGVmYXVsdCBwb3NpdGlvbiBvZiB0aGUgY2xvc2UgYnV0dG9uLiBUaGUgZmlyc3QgdmFsdWUgc2hvdWxkIGJlIGByaWdodGAgb3IgYGxlZnRgLCBhbmQgdGhlIHNlY29uZCB2YWx1ZSBzaG91bGQgYmUgYHRvcGAgb3IgYGJvdHRvbWAuXG4vLy8gQHR5cGUgTGlzdFxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3AgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHotaW5kZXggZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlclxuJGNsb3NlYnV0dG9uLXotaW5kZXg6IDEwICFkZWZhdWx0O1xuXG4vLy8gQnV0dG9uIHNpemUgdG8gdXNlIGFzIGRlZmF1bHRcbi8vLyBAdHlwZSBTdHJpbmdcbi8vLyBAc2VlICRjbG9zZWJ1dHRvbi1zaXplXG4vLy8gQHNlZSAkY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWxcbi8vLyBAc2VlICRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWxcbiRjbG9zZWJ1dHRvbi1kZWZhdWx0LXNpemU6IG1lZGl1bSAhZGVmYXVsdDtcblxuLy8vIFJpZ2h0IChvciBsZWZ0KSBvZmZzZXQocykgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxuICBzbWFsbDogMC42NnJlbSxcbiAgbWVkaXVtOiAxcmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFRvcCAob3IgYm90dG9tKSBvZmZzZXQocykgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IChcbiAgc21hbGw6IDAuMzNlbSxcbiAgbWVkaXVtOiAwLjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gU2l6ZShzKSBvZiB0aGUgY2xvc2UgYnV0dG9uLiBVc2VkIHRvIGdlbmVyYXRlIHNpemluZyBtb2RpZmllcnMuXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLXNpemU6IChcbiAgc21hbGw6IDEuNWVtLFxuICBtZWRpdW06IDJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGluZS1oZWlnaHQgb2YgdGhlIGNsb3NlIGJ1dHRvbi4gSXQgYWZmZWN0cyB0aGUgc3BhY2luZyBvZiB0aGUgZWxlbWVudC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0OiAxICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIENvbG9yXG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSBjbG9zZSBidXR0b24gd2hlbiBiZWluZyBob3ZlcmVkIG9uLlxuLy8vIEB0eXBlIENvbG9yXG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjayAhZGVmYXVsdDtcblxuXG4vLy8gR2V0IHRoZSBzaXplIGFuZCBwb3NpdGlvbiBmb3IgYSBjbG9zZSBidXR0b24uIElmIHRoZSBpbnB1dCB2YWx1ZSBpcyBhIG51bWJlciwgdGhlIG51bWJlciBpcyByZXR1cm5lZC4gSWYgdGhlIGlucHV0IHZhbHVlIGlzIGEgY29uZmlnIG1hcCBhbmQgdGhlIG1hcCBoYXMgdGhlIGtleSBgJHNpemVgLCB0aGUgdmFsdWUgaXMgcmV0dXJuZWQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICR2YWx1ZSAtIEEgbnVtYmVyIG9yIG1hcCB0aGF0IHJlcHJlc2VudHMgdGhlIHNpemUgb3IgcG9zaXRpb24gdmFsdWUocykgb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gVGhlIHNpemUgb2YgdGhlIGNsb3NlIGJ1dHRvbiB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IFRoZSBnaXZlbiBudW1iZXIgb3IgdGhlIHZhbHVlIGZvdW5kIGluIHRoZSBtYXAuXG5AZnVuY3Rpb24gLXpmLWdldC1zaXplLXZhbCgkdmFsdWUsICRzaXplKSB7XG4gIC8vIENoZWNrIGlmIHRoZSB2YWx1ZSBpcyBhIG51bWJlclxuICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAvLyBJZiBpdCBpcywganVzdCByZXR1cm4gdGhlIG51bWJlclxuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgdGhlIHNpemUgbmFtZSBleGlzdHMgaW4gdGhlIHZhbHVlIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkdmFsdWUsICRzaXplKSB7XG4gICAgLy8gSWYgaXQgZG9lcywgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkdmFsdWUsICRzaXplKTtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgc2l6ZSBhbmQgcG9zaXRpb24gb2YgYSBjbG9zZSBidXR0b24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSBbbWVkaXVtXSAtIFRoZSBzaXplIHRvIHVzZS4gU2V0IHRvIGBzbWFsbGAgdG8gY3JlYXRlIGEgc21hbGwgY2xvc2UgYnV0dG9uLiBUaGUgJ21lZGl1bScgdmFsdWVzIGRlZmluZWQgaW4gYCRjbG9zZWJ1dHRvbi0qYCB2YXJpYWJsZXMgd2lsbCBiZSB1c2VkIGFzIHRoZSBkZWZhdWx0IHNpemUgYW5kIHBvc2l0aW9uIG9mIHRoZSBjbG9zZSBidXR0b24uXG5AbWl4aW4gY2xvc2UtYnV0dG9uLXNpemUoJHNpemUpIHtcbiAgJHg6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDEpO1xuICAkeTogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMik7XG5cbiAgI3skeH06IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsLCAkc2l6ZSk7XG4gICN7JHl9OiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWwsICRzaXplKTtcbiAgZm9udC1zaXplOiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1zaXplLCAkc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0LCAkc2l6ZSk7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjbG9zZSBidXR0b24sIHVzaW5nIHRoZSBzdHlsZXMgaW4gdGhlIHNldHRpbmdzIHZhcmlhYmxlcy5cbkBtaXhpbiBjbG9zZS1idXR0b24ge1xuICAkeDogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMSk7XG4gICR5OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAyKTtcblxuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogJGNsb3NlYnV0dG9uLXotaW5kZXg7XG4gIGNvbG9yOiAkY2xvc2VidXR0b24tY29sb3I7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbiB7XG4gIC5jbG9zZS1idXR0b24ge1xuICAgIC8vIFVzZSBieSBkZWZhdWx0IHRoZSBwbGFjZWhvbGRlciBvZiB0aGUgZGVmYXVsdCBzaXplXG4gICAgQGV4dGVuZCAlemYtY2xvc2UtYnV0dG9uLS0jeyRjbG9zZWJ1dHRvbi1kZWZhdWx0LXNpemV9O1xuXG4gICAgQGluY2x1ZGUgY2xvc2UtYnV0dG9uO1xuXG4gICAgLy8gR2VuZXJhdGUgYSBwbGFjZWhvbGRlciBhbmQgYSBjbGFzcyBmb3IgZWFjaCBzaXplXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRjbG9zZWJ1dHRvbi1zaXplIHtcbiAgICAgIEBhdC1yb290IHtcbiAgICAgICAgJXpmLWNsb3NlLWJ1dHRvbi0tI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGNsb3NlLWJ1dHRvbi1zaXplKCRuYW1lKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgQGV4dGVuZCAlemYtY2xvc2UtYnV0dG9uLS0jeyRuYW1lfTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBsYWJlbFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0ZSB0ZXh0IGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLWZvbnQtc2l6ZTogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBvZiBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBiYXNlIHN0eWxlcyBmb3IgYSBsYWJlbC5cbkBtaXhpbiBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGxhYmVsLXBhZGRpbmc7XG5cbiAgYm9yZGVyLXJhZGl1czogJGxhYmVsLXJhZGl1cztcblxuICBmb250LXNpemU6ICRsYWJlbC1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWxhYmVsIHtcbiAgLmxhYmVsIHtcbiAgICBAaW5jbHVkZSBsYWJlbDtcblxuICAgIGJhY2tncm91bmQ6ICRsYWJlbC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkbGFiZWwtY29sb3I7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRsYWJlbC1wYWxldHRlIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgICAgIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRjb2xvciwgKCRsYWJlbC1jb2xvciwgJGxhYmVsLWNvbG9yLWFsdCkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJyZWFkY3J1bWJzXG4vLy8vXG5cbi8vLyBNYXJnaW4gYXJvdW5kIGEgYnJlYWRjcnVtYnMgY29udGFpbmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWJzLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDAgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGFjdGl2ZSBicmVhZGNydW1iIGxpbmsuXG4vLy8gQHR5cGUgQ29sb3JcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIE9wYWNpdHkgb2YgZGlzYWJsZWQgYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYmV0d2VlbiBicmVhZGNydW1iIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luOiAwLjc1cmVtICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBtYWtlcyBicmVhZGNydW1iIGxpbmtzIHVwcGVyY2FzZS5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2U6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFkZHMgYSBzZXBlcmF0b3IgYmV0d2VlbiBicmVhZGNydW1iIGxpbmtzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvcjogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gSWYgaXQgZXhpc3RzICRicmVhZGNydW1icy1pdGVtLXNsYXNoIGlzIHVzZWQgdG8gYnVpbGQgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2gpIHtcbiAgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaDtcbn1cblxuLy8vIFVzZWQgY2hhcmFjdGVyIGZvciB0aGUgYnJlYWRjcnVtYiBzZXBhcmF0b3IuXG4vLy8gQHR5cGUgQ29udGVudFxuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW06ICcvJyAhZGVmYXVsdDtcblxuLy8vIFVzZWQgY2hhcmFjdGVyIGZvciB0aGUgYnJlYWRjcnVtYiBzZXBhcmF0b3IgaW4gcnRsIG1vZGUuXG4vLy8gQHR5cGUgQ29udGVudFxuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW0tcnRsOiAnXFxcXCcgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBicmVhZGNydW1iIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLyBJZiBpdCBleGlzdHMgJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2gtY29sb3IgaXMgdXNlZCB0byBidWlsZCAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3IuIFNlZSB0aGUgZG9jdW1lbnRhdGlvbi5cbkBpZiB2YXJpYWJsZS1leGlzdHMoYnJlYWRjcnVtYnMtaXRlbS1zbGFzaC1jb2xvcikge1xuICAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I6ICRicmVhZGNydW1icy1pdGVtLXNsYXNoLWNvbG9yO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgYnJlYWRjcnVtYnMgY29udGFpbmVyLCBhbG9uZyB3aXRoIHRoZSBzdHlsZXMgZm9yIHRoZSBgPGxpPmAgYW5kIGA8YT5gIGVsZW1lbnRzIGluc2lkZSBvZiBpdC5cbkBtaXhpbiBicmVhZGNydW1icy1jb250YWluZXIge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luOiAkYnJlYWRjcnVtYnMtbWFyZ2luO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIC8vIEl0ZW0gd3JhcHBlclxuICBsaSB7XG4gICAgZmxvYXQ6ICN7JGdsb2JhbC1sZWZ0fTtcblxuICAgIGZvbnQtc2l6ZTogJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplO1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50O1xuICAgIGN1cnNvcjogZGVmYXVsdDtcblxuICAgIEBpZiAkYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2Uge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICBAaWYgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yIHtcbiAgICAgIC8vIE5lZWQgdG8gZXNjYXBlIHRoZSBiYWNrc2xhc2hcbiAgICAgICRzZXBhcmF0b3I6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ2x0cicsICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLCAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbS1ydGwpO1xuXG4gICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIG1hcmdpbjogMCAkYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW47XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICBjb250ZW50OiAkc2VwYXJhdG9yO1xuICAgICAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRicmVhZGNydW1icy1pdGVtLW1hcmdpbjtcbiAgICB9XG4gIH1cblxuICAvLyBQYWdlIGxpbmtzXG4gIGEge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzIHtcbiAgLmJyZWFkY3J1bWJzIHtcbiAgICBAaW5jbHVkZSBicmVhZGNydW1icy1jb250YWluZXI7XG5cbiAgICAuZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkO1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjYWxsb3V0XG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmFkZSB2YWx1ZSBmb3IgY2FsbG91dCBiYWNrZ3JvdW5kcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgc3R5bGUgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIExpc3RcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDAgIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgQ2FsbG91dCBwYWRkaW5ncy5cbi8vLyBAdHlwZSBNYXBcbiRjYWxsb3V0LXNpemVzOiAoXG4gIHNtYWxsOiAwLjVyZW0sXG4gIGRlZmF1bHQ6IDFyZW0sXG4gIGxhcmdlOiAzcmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhbGxvdXRzLCBpZiB0aGUgY2FsbG91dCBoYXMgYSBkYXJrIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgcmFkaXVzIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEFtb3VudCB0byB0aW50IGxpbmtzIHVzZWQgd2l0aGluIGNvbG9yZWQgcGFuZWxzLiBTZXQgdG8gYGZhbHNlYCB0byBkaXNhYmxlIHRoaXMgZmVhdHVyZS5cbi8vLyBAdHlwZSBOdW1iZXIgfCBCb29sZWFuXG4kY2FsbG91dC1saW5rLXRpbnQ6IDMwJSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBhIGNhbGxvdXQsIGluY2x1ZGluZyBwYWRkaW5nIGFuZCBtYXJnaW4uXG5AbWl4aW4gY2FsbG91dC1iYXNlKCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogJGNhbGxvdXQtbWFyZ2luO1xuICBwYWRkaW5nOiBtYXAtZ2V0KCRjYWxsb3V0LXNpemVzLCBkZWZhdWx0KTtcblxuICBib3JkZXI6ICRjYWxsb3V0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGNhbGxvdXQtcmFkaXVzO1xuXG4gIC8vIFJlc3BlY3QgdGhlIHBhZGRpbmcsIGZvb2wuXG4gID4gOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgcXVpY2sgc3R5bGVzIGZvciBhIGNhbGxvdXQgdXNpbmcgYSBzaW5nbGUgY29sb3IgYXMgYSBiYXNlbGluZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRjYWxsb3V0LWJhY2tncm91bmRdIC0gQ29sb3IgdG8gdXNlLlxuQG1peGluIGNhbGxvdXQtc3R5bGUoJGNvbG9yOiAkY2FsbG91dC1iYWNrZ3JvdW5kKSB7XG4gICRiYWNrZ3JvdW5kOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRjYWxsb3V0LWJhY2tncm91bmQtZmFkZSk7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGNhbGxvdXQtZm9udC1jb2xvciwgJGNhbGxvdXQtZm9udC1jb2xvci1hbHQpKTtcbn1cblxuQG1peGluIGNhbGxvdXQtc2l6ZSgkcGFkZGluZykge1xuICBwYWRkaW5nLXRvcDogJHBhZGRpbmc7XG4gIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmc7XG4gIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG59XG5cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNhbGxvdXQuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskY2FsbG91dC1iYWNrZ3JvdW5kXSAtIENvbG9yIHRvIHVzZS5cbkBtaXhpbiBjYWxsb3V0KCRjb2xvcjogJGNhbGxvdXQtYmFja2dyb3VuZCkge1xuICBAaW5jbHVkZSBjYWxsb3V0LWJhc2U7XG4gIEBpbmNsdWRlIGNhbGxvdXQtc3R5bGUoJGNvbG9yKTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tY2FsbG91dCB7XG4gIC5jYWxsb3V0IHtcbiAgICBAaW5jbHVkZSBjYWxsb3V0O1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBAaW5jbHVkZSBjYWxsb3V0LXN0eWxlKCRjb2xvcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGVhY2ggJHNpemUsICRwYWRkaW5nIGluIG1hcC1yZW1vdmUoJGNhbGxvdXQtc2l6ZXMsIGRlZmF1bHQpIHtcbiAgICAgICYuI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBjYWxsb3V0LXNpemUoJHBhZGRpbmcpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGRyb3Bkb3duXG4vLy8vXG5cbi8vLyBQYWRkaW5nIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd24tcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLWZvbnQtc2l6ZTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFdpZHRoIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bi13aWR0aDogMzAwcHggIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3duLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgZHJvcGRvd24gcGFuZXMuIEVhY2ggc2l6ZSBpcyBhIENTUyBjbGFzcyB5b3UgY2FuIGFwcGx5LlxuLy8vIEB0eXBlIE1hcFxuJGRyb3Bkb3duLXNpemVzOiAoXG4gIHRpbnk6IDEwMHB4LFxuICBzbWFsbDogMjAwcHgsXG4gIGxhcmdlOiA0MDBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBBcHBsaWVzIHN0eWxlcyBmb3IgYSBiYXNpYyBkcm9wZG93bi5cbkBtaXhpbiBkcm9wZG93bi1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuXG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgd2lkdGg6ICRkcm9wZG93bi13aWR0aDtcbiAgcGFkZGluZzogJGRyb3Bkb3duLXBhZGRpbmc7XG5cbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRkcm9wZG93bi1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1iYWNrZ3JvdW5kO1xuXG4gIGZvbnQtc2l6ZTogJGRyb3Bkb3duLWZvbnQtc2l6ZTtcblxuXG4gIC8vIEFsbG93IGFuIGludGVybWl0dGVudCBzdGF0ZSB0byBkbyBwb3NpdGlvbmluZyBiZWZvcmUgbWFraW5nIHZpc2libGUuXG4gICYuaXMtb3BlbmluZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmLmlzLW9wZW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZHJvcGRvd24ge1xuICAuZHJvcGRvd24tcGFuZSB7XG4gICAgQGluY2x1ZGUgZHJvcGRvd24tY29udGFpbmVyO1xuICB9XG5cbiAgQGVhY2ggJG5hbWUsICRzaXplIGluICRkcm9wZG93bi1zaXplcyB7XG4gICAgLmRyb3Bkb3duLXBhbmUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIHdpZHRoOiAkc2l6ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBwYWdpbmF0aW9uXG4vLy8vXG5cbi8vLyBGb250IHNpemUgb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIG9mIHRoZSBwYWdpbmF0aW9uIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKSAhZGVmYXVsdDtcblxuLy8vIFJpZ2h0IG1hcmdpbiB0byBzZXBhcmF0ZSBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtIGZvciB0aGUgY3VycmVudCBwYWdlLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBwYWdpbmF0aW9uIGl0ZW0gZm9yIHRoZSBjdXJyZW50IHBhZ2UuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhIGRpc2FibGVkIHBhZ2luYXRpb24gaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGVsbGlwc2lzIGluIGEgcGFnaW5hdGlvbiBtZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gSWYgYGZhbHNlYCwgZG9uJ3QgZGlzcGxheSBwYWdlIG51bWJlciBsaW5rcyBvbiBtb2JpbGUsIG9ubHkgbmV4dC9wcmV2aW91cyBsaW5rc1xuLy8vIGFuZCBvcHRpb25hbGx5IGN1cnJlbnQgcGFnZSBudW1iZXIuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgZGlzcGxheSB0aGUgY3VycmVudCBwYWdlIG51bWJlciBvbiBtb2JpbGUgZXZlbiBpZiBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zYCBpcyBzZXQgdG8gYGZhbHNlYC5cbi8vLyBUaGlzIHBhcmFtZXRlciB3aWxsIG9ubHkgb3ZlcnJpZGUgdGhlIHZpc2liaWxpdHkgc2V0dGluZyBvZiB0aGUgY3VycmVudCBpdGVtIGZvciBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtgLFxuLy8vIGl0IHdpbGwgbm90IGFmZmVjdCB0aGUgY3VycmVudCBwYWdlIG51bWJlciB2aXNpYmlsaXR5IHdoZW4gYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtc2AgaXMgc2V0IHRvIGB0cnVlYC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYXJyb3dzIGFyZSBhZGRlZCB0byB0aGUgbmV4dCBhbmQgcHJldmlvdXMgbGlua3Mgb2YgcGFnaW5hdGlvbi5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBDb250ZW50IGZvciB0aGUgcHJldmlvdXMgYXJyb3cgd2hlbiBgJHBhZ2luYXRpb24tYXJyb3dzYCBpcyBgdHJ1ZWBcbi8vLyBAdHlwZSBTdHJpbmdcbiRwYWdpbmF0aW9uLWFycm93LXByZXZpb3VzOiAnXFwwMEFCJyAhZGVmYXVsdDtcblxuLy8vIENvbnRlbnQgZm9yIHRoZSBuZXh0IGFycm93IHdoZW4gYCRwYWdpbmF0aW9uLWFycm93c2AgaXMgYHRydWVgXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFnaW5hdGlvbi1hcnJvdy1uZXh0OiAnXFwwMEJCJyAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHBhZ2luYXRpb24gY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIGEgYDx1bD5gLlxuQG1peGluIHBhZ2luYXRpb24tY29udGFpbmVyIChcbiAgJG1hcmdpbi1ib3R0b206ICRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b20sXG4gICRmb250LXNpemU6ICRwYWdpbmF0aW9uLWZvbnQtc2l6ZSxcbiAgJHNwYWNpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZyxcbiAgJHJhZGl1czogJHBhZ2luYXRpb24tcmFkaXVzLFxuICAkY29sb3I6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3IsXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXJcbikge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1ib3R0b207XG5cbiAgLy8gTGlzdCBpdGVtXG4gIGxpIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG5cbiAgICBAaWYgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgJjpsYXN0LWNoaWxkLFxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cblxuICAgICAgQGlmICRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW0ge1xuICAgICAgICAmLmN1cnJlbnQge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUGFnZSBsaW5rc1xuICBhLFxuICBidXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGN1cnJlbnQgcGFnaW5hdGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIGFuIGA8YT5gLlxuQG1peGluIHBhZ2luYXRpb24taXRlbS1jdXJyZW50IChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGJhY2tncm91bmQtY3VycmVudDogJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQsXG4gICRjb2xvci1jdXJyZW50OiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnRcbikge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtY3VycmVudDtcbiAgY29sb3I6ICRjb2xvci1jdXJyZW50O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBkaXNhYmxlZCBwYWdpbmF0aW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gYW4gYDxhPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkIChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkXG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBlbGxpcHNpcyBmb3IgdXNlIGluIGEgcGFnaW5hdGlvbiBsaXN0LlxuQG1peGluIHBhZ2luYXRpb24tZWxsaXBzaXMgKFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkY29sb3I6ICRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yXG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGNvbnRlbnQ6ICdcXDIwMjYnO1xuICBjb2xvcjogJGNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1wYWdpbmF0aW9uIHtcbiAgLnBhZ2luYXRpb24ge1xuICAgIEBpbmNsdWRlIHBhZ2luYXRpb24tY29udGFpbmVyO1xuXG4gICAgLmN1cnJlbnQge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1pdGVtLWN1cnJlbnQ7XG4gICAgfVxuXG4gICAgLmRpc2FibGVkIHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24taXRlbS1kaXNhYmxlZDtcbiAgICB9XG5cbiAgICAuZWxsaXBzaXM6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24tZWxsaXBzaXM7XG4gICAgfVxuICB9XG5cbiAgQGlmICRwYWdpbmF0aW9uLWFycm93cyB7XG4gICAgLnBhZ2luYXRpb24tcHJldmlvdXMgYTo6YmVmb3JlLFxuICAgIC5wYWdpbmF0aW9uLXByZXZpb3VzLmRpc2FibGVkOjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICRwYWdpbmF0aW9uLWFycm93LXByZXZpb3VzO1xuICAgIH1cblxuICAgIC5wYWdpbmF0aW9uLW5leHQgYTo6YWZ0ZXIsXG4gICAgLnBhZ2luYXRpb24tbmV4dC5kaXNhYmxlZDo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMC41cmVtO1xuICAgICAgY29udGVudDogJHBhZ2luYXRpb24tYXJyb3ctbmV4dDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBhY2NvcmRpb25cbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhbiBhY2NvcmRpb24gZ3JvdXAuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhZGRzIHBsdXMgYW5kIG1pbnVzIGljb25zIHRvIHRoZSBzaWRlIG9mIGVhY2ggYWNjb3JkaW9uIHRpdGxlLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhY2NvcmRpb24tcGx1c21pbnVzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQ29udGVudCBmb3IgdGhlIHBsdXMgaWNvbiB3aGVuIGAkYWNjb3JkaW9uLXBsdXNtaW51c2AgaXMgYHRydWVgXG4vLy8gQHR5cGUgU3RyaW5nXG4kYWNjb3JkaW9uLXBsdXMtY29udGVudDogJ1xcMDAyQicgIWRlZmF1bHQ7XG5cbi8vLyBDb250ZW50IGZvciB0aGUgbWludXMgaWNvbiB3aGVuIGAkYWNjb3JkaW9uLXBsdXNtaW51c2AgaXMgYHRydWVgXG4vLy8gQHR5cGUgU3RyaW5nXG4kYWNjb3JkaW9uLW1pbnVzLWNvbnRlbnQ6ICdcXDIwMTMnICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGFjY29yZGlvbiB0aXRsZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24taXRlbS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGl0ZW1zIGluIGEgTWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIGFuIGFjY29yZGlvbiBpdGVtLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRhY2NvcmRpb24taXRlbS1wYWRkaW5nOiAxLjI1cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGFjY29yZGlvbiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gdGhlIHNhbWUgZWxlbWVudCB0aGF0IGdldHMgYGRhdGEtYWNjb3JkaW9uYC5cbkBtaXhpbiBhY2NvcmRpb24tY29udGFpbmVyIChcbiAgJGJhY2tncm91bmQ6ICRhY2NvcmRpb24tYmFja2dyb3VuZFxuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cbiAgJltkaXNhYmxlZF0ge1xuICAgIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgYWNjb3JkaW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gdGhlIGxpc3QgaXRlbSB3aXRoaW4gYW4gYWNjb3JkaW9uIHVsLlxuQG1peGluIGFjY29yZGlvbi1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXMgMCAwO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSB0aXRsZSBvZiBhbiBhY2NvcmRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byB0aGUgbGluayB3aXRoaW4gYW4gYWNjb3JkaW9uIGl0ZW0uXG5AbWl4aW4gYWNjb3JkaW9uLXRpdGxlIChcbiAgJHBhZGRpbmc6ICRhY2NvcmRpb24taXRlbS1wYWRkaW5nLFxuICAkZm9udC1zaXplOiAkYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZSxcbiAgJGNvbG9yOiAkYWNjb3JkaW9uLWl0ZW0tY29sb3IsXG4gICRib3JkZXI6ICRhY2NvcmRpb24tY29udGVudC1ib3JkZXIsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlclxuKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gIDpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+ICYge1xuICAgIGJvcmRlci1ib3R0b206ICRib3JkZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gIH1cblxuICBAaWYgJGFjY29yZGlvbi1wbHVzbWludXMge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgICAgY29udGVudDogJGFjY29yZGlvbi1wbHVzLWNvbnRlbnQ7XG4gICAgfVxuXG4gICAgLmlzLWFjdGl2ZSA+ICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAkYWNjb3JkaW9uLW1pbnVzLWNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYWNjb3JkaW9uIGNvbnRlbnQuIEFwcGx5IHRoaXMgdG8gdGhlIGNvbnRlbnQgcGFuZSBiZWxvdyBhbiBhY2NvcmRpb24gaXRlbSdzIHRpdGxlLlxuQG1peGluIGFjY29yZGlvbi1jb250ZW50IChcbiAgJHBhZGRpbmc6ICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nLFxuICAkYm9yZGVyOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyLFxuICAkYmFja2dyb3VuZDogJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQsXG4gICRjb2xvcjogJGFjY29yZGlvbi1jb250ZW50LWNvbG9yXG4pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICBjb2xvcjogJGNvbG9yO1xuXG4gIDpsYXN0LWNoaWxkID4gJjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWFjY29yZGlvbiB7XG4gIC5hY2NvcmRpb24ge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1jb250YWluZXI7XG4gIH1cblxuICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1pdGVtO1xuICB9XG5cbiAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLXRpdGxlO1xuICB9XG5cbiAgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG1lZGlhLW9iamVjdFxuLy8vL1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIExlZnQgYW5kIHJpZ2h0IHBhZGRpbmcgb24gc2VjdGlvbnMgd2l0aGluIGEgbWVkaWEgb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gV2lkdGggb2YgaW1hZ2VzIHdpdGhpbiBhIG1lZGlhIG9iamVjdCwgd2hlbiB0aGUgb2JqZWN0IGlzIHN0YWNrZWQgdmVydGljYWxseS4gU2V0IHRvICdhdXRvJyB0byB1c2UgdGhlIGltYWdlJ3MgbmF0dXJhbCB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbWVkaWEgb2JqZWN0IGNvbnRhaW5lci5cbkBtaXhpbiBtZWRpYS1vYmplY3QtY29udGFpbmVyIHtcbiAgZGlzcGxheTogaWYoJGdsb2JhbC1mbGV4Ym94LCBmbGV4LCBibG9jayk7XG4gIG1hcmdpbi1ib3R0b206ICRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG5cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAmLnN0YWNrLWZvci0jeyQtemYtemVyby1icmVha3BvaW50fSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHNlY3Rpb25zIHdpdGhpbiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBhZGRpbmcgWyRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmddIC0gUGFkZGluZyBiZXR3ZWVuIHNlY3Rpb25zLlxuQG1peGluIG1lZGlhLW9iamVjdC1zZWN0aW9uKCRwYWRkaW5nOiAkbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICRwYWRkaW5nO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gICAgcGFkZGluZy0jeyRnbG9iYWwtbGVmdH06ICRwYWRkaW5nO1xuICB9XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5zdGFjay1mb3ItI3skLXpmLXplcm8tYnJlYWtwb2ludH0gJiB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3Qtc3RhY2s7XG4gICAgfVxuICB9XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgJi5tYWluLXNlY3Rpb24ge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgICYubWlkZGxlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgJi5ib3R0b20ge1xuICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIHRvIHN0YWNrIHNlY3Rpb25zIG9mIGEgbWVkaWEgb2JqZWN0LiBBcHBseSB0aGlzIHRvIHRoZSBzZWN0aW9uIGVsZW1lbnRzLCBub3QgdGhlIGNvbnRhaW5lci5cbkBtaXhpbiBtZWRpYS1vYmplY3Qtc3RhY2sge1xuICBwYWRkaW5nOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZztcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiAkbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1tZWRpYS1vYmplY3Qge1xuICAubWVkaWEtb2JqZWN0IHtcbiAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3QtY29udGFpbmVyO1xuICB9XG5cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3Qtc2VjdGlvbjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHJlc3BvbnNpdmUtZW1iZWRcbi8vLy9cblxuLy8vIE1hcmdpbiBiZWxvdyBhIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG4vLy8gQXNwZWN0IHJhdGlvcyB1c2VkIHRvIGRldGVybWluZSBwYWRkaW5nLWJvdHRvbSBvZiByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lcnMuXG4vLy8gQHR5cGUgTWFwXG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcbiAgZGVmYXVsdDogNCBieSAzLFxuICB3aWRlc2NyZWVuOiAxNiBieSA5LFxuKSAhZGVmYXVsdDtcblxuLy8vIENyZWF0ZXMgYSByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lci5cbi8vLyBAcGFyYW0ge1N0cmluZ3xMaXN0fSAkcmF0aW8gW2RlZmF1bHRdIC0gUmF0aW8gb2YgdGhlIGNvbnRhaW5lci4gQ2FuIGJlIGEga2V5IGZyb20gdGhlIGAkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3NgIG1hcCBvciBhIGxpc3QgZm9ybWF0dGVkIGFzIGB4IGJ5IHlgLlxuQG1peGluIHJlc3BvbnNpdmUtZW1iZWQoJHJhdGlvOiBkZWZhdWx0KSB7XG4gIEBpZiB0eXBlLW9mKCRyYXRpbykgPT0gJ3N0cmluZycge1xuICAgICRyYXRpbzogbWFwLWdldCgkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3MsICRyYXRpbyk7XG4gIH1cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b207XG4gIHBhZGRpbmctYm90dG9tOiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbyk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgaWZyYW1lLFxuICBvYmplY3QsXG4gIGVtYmVkLFxuICB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQge1xuICAucmVzcG9uc2l2ZS1lbWJlZCxcbiAgLmZsZXgtdmlkZW8ge1xuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZW1iZWQoJHJhdGlvOiBkZWZhdWx0KTtcblxuICAgICRyYXRpb3M6IG1hcC1yZW1vdmUoJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zLCBkZWZhdWx0KTtcblxuICAgIEBlYWNoICRuYW1lLCAkcmF0aW8gaW4gJHJhdGlvcyB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0YWJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBvZiB0aGUgdGFiIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGFiIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHRhYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEFjdGl2ZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGFiIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBBY3RpdmUgZm9udCBjb2xvciBvZiB0YWIgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRhYiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhIHRhYiBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgdGFiIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGA8dWw+YC5cbkBtaXhpbiB0YWJzLWNvbnRhaW5lciAoXG4gICRtYXJnaW46ICR0YWItbWFyZ2luLFxuICAkYmFja2dyb3VuZDogJHRhYi1iYWNrZ3JvdW5kLFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbjogJG1hcmdpbjtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLy8vIEF1Z21lbnRzIGEgdGFiIGNvbnRhaW5lciB0byBoYXZlIHZlcnRpY2FsIHRhYnMuIFVzZSB0aGlzIGluIGNvbmp1bmN0aW9uIHdpdGggYHRhYnMtY29udGFpbmVyKClgLlxuQG1peGluIHRhYnMtY29udGFpbmVyLXZlcnRpY2FsIHtcbiAgPiBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgbGlua3Mgd2l0aGluIGEgdGFiIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byB0aGUgYDxsaT5gIGVsZW1lbnRzIGluc2lkZSBhIHRhYiBjb250YWluZXIuXG5AbWl4aW4gdGFicy10aXRsZSAoXG4gICRwYWRkaW5nOiAkdGFiLWl0ZW0tcGFkZGluZyxcbiAgJGZvbnQtc2l6ZTogJHRhYi1pdGVtLWZvbnQtc2l6ZSxcbiAgJGNvbG9yOiAkdGFiLWNvbG9yLFxuICAkY29sb3ItYWN0aXZlOiAkdGFiLWFjdGl2ZS1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXI6ICR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkYmFja2dyb3VuZC1hY3RpdmU6ICR0YWItYmFja2dyb3VuZC1hY3RpdmVcbikge1xuICBmbG9hdDogI3skZ2xvYmFsLWxlZnR9O1xuXG4gID4gYSB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICAgIGNvbG9yOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJlthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtYWN0aXZlO1xuICAgICAgY29sb3I6ICRjb2xvci1hY3RpdmU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIHdyYXBwZXIgdGhhdCBzdXJyb3VuZHMgYSB0YWIgZ3JvdXAncyBjb250ZW50IHBhbmVzLlxuQG1peGluIHRhYnMtY29udGVudCAoXG4gICRiYWNrZ3JvdW5kOiAkdGFiLWNvbnRlbnQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkdGFiLWNvbnRlbnQtY29sb3IsXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6ICRjb2xvcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbn1cblxuLy8vIEF1Z21lbnRzIGEgdGFiIGNvbnRlbnQgY29udGFpbmVyIHRvIGhhdmUgYSB2ZXJ0aWNhbCBzdHlsZSwgYnkgc2hpZnRpbmcgdGhlIGJvcmRlciBhcm91bmQuIFVzZSB0aGlzIGluIGNvbmp1bmN0aW9uIHdpdGggYHRhYnMtY29udGVudCgpYC5cbkBtaXhpbiB0YWJzLWNvbnRlbnQtdmVydGljYWwgKFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBpbmRpdmlkdWFsIHRhYiBjb250ZW50IHBhbmVsIHdpdGhpbiB0aGUgdGFiIGNvbnRlbnQgY29udGFpbmVyLlxuQG1peGluIHRhYnMtcGFuZWwgKFxuICAkcGFkZGluZzogJHRhYi1jb250ZW50LXBhZGRpbmdcbikge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGFicyB7XG4gIC50YWJzIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsXG4gIC50YWJzLnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lci12ZXJ0aWNhbDtcbiAgfVxuXG4gIC8vIFNpbXBsZVxuICAudGFicy5zaW1wbGUge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQcmltYXJ5IGNvbG9yXG4gIC50YWJzLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgPiBsaSA+IGEge1xuICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJHByaW1hcnktY29sb3IpO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCRwcmltYXJ5LWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGFicy10aXRsZSB7XG4gICAgQGluY2x1ZGUgdGFicy10aXRsZTtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGVudDtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGVudC12ZXJ0aWNhbDtcbiAgfVxuXG4gIC50YWJzLXBhbmVsIHtcbiAgICBAaW5jbHVkZSB0YWJzLXBhbmVsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ21hdGgnO1xuXG4kY29udHJhc3Qtd2FybmluZ3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBQYXRjaCB0byBmaXggaXNzdWUgIzEyMDgwXG4kcHJpbWFyeS1jb2xvcjogbnVsbCAhZGVmYXVsdDtcbiRzZWNvbmRhcnktY29sb3I6IG51bGwgIWRlZmF1bHQ7XG4kd2FybmluZy1jb2xvcjogbnVsbCAhZGVmYXVsdDtcbiRhbGVydC1jb2xvcjogbnVsbCAhZGVmYXVsdDtcbiRzdWNjZXNzLWNvbG9yOiBudWxsICFkZWZhdWx0O1xuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBjaGVjayB0aGUgbHVtaW5hbmNlIG9mLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbkBmdW5jdGlvbiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNyZWxhdGl2ZWx1bWluYW5jZWRlZlxuICAkcmdiYTogcmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKTtcbiAgJHJnYmEyOiAoKTtcblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDMge1xuICAgICRyZ2I6IG50aCgkcmdiYSwgJGkpO1xuICAgICRyZ2I6IGRpdmlkZSgkcmdiLCAyNTUpO1xuXG4gICAgJHJnYjogaWYoJHJnYiA8IDAuMDM5MjgsIGRpdmlkZSgkcmdiLCAxMi45MiksIHBvdyhkaXZpZGUoJHJnYiArIDAuMDU1LCAxLjA1NSksIDIuNCkpO1xuXG4gICAgJHJnYmEyOiBhcHBlbmQoJHJnYmEyLCAkcmdiKTtcbiAgfVxuXG4gIEByZXR1cm4gMC4yMTI2ICogbnRoKCRyZ2JhMiwgMSkgKyAwLjcxNTIgKiBudGgoJHJnYmEyLCAyKSArIDAuMDcyMiAqIG50aCgkcmdiYTIsIDMpO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBjb250cmFzdCByYXRpbyBvZiB0d28gY29sb3JzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMSAtIEZpcnN0IGNvbG9yIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMiAtIFNlY29uZCBjb2xvciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGNvbnRyYXN0IHJhdGlvIG9mIHRoZSBjb21wYXJlZCBjb2xvcnMuXG5AZnVuY3Rpb24gY29sb3ItY29udHJhc3QoJGNvbG9yMSwgJGNvbG9yMikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jY29udHJhc3QtcmF0aW9kZWZcbiAgJGx1bWluYW5jZTE6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IxKSArIDAuMDU7XG4gICRsdW1pbmFuY2UyOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMikgKyAwLjA1O1xuICAkcmF0aW86IGRpdmlkZSgkbHVtaW5hbmNlMSwgJGx1bWluYW5jZTIpO1xuXG4gIEBpZiAkbHVtaW5hbmNlMiA+ICRsdW1pbmFuY2UxIHtcbiAgICAkcmF0aW86IGRpdmlkZSgxLCAkcmF0aW8pO1xuICB9XG5cbiAgJHJhdGlvOiByb3VuZCgkcmF0aW8gKiAxMCkgKiAwLjE7XG5cbiAgQHJldHVybiAkcmF0aW87XG59XG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGJhc2VgLCBhbmQgcmV0dXJucyB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYXNlIC0gQ29sb3IgdG8gY2hlY2sgbHVtaW5hbmNlLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGNvbG9ycyBbKCR3aGl0ZSwgJGJsYWNrKV0gLSBDb2xvcnMgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvbGVyYW5jZSBbJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZV0gLSBDb250cmFzdCB0b2xlcmFuY2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuQGZ1bmN0aW9uIGNvbG9yLXBpY2stY29udHJhc3QoJGJhc2UsICRjb2xvcnM6ICgkd2hpdGUsICRibGFjayksICR0b2xlcmFuY2U6ICRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2UpIHtcbiAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsIDEpKTtcbiAgJGJlc3Q6IG50aCgkY29sb3JzLCAxKTtcblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIGxlbmd0aCgkY29sb3JzKSB7XG4gICAgJGN1cnJlbnQtY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICBAaWYgKCRjdXJyZW50LWNvbnRyYXN0IC0gJGNvbnRyYXN0ID4gJHRvbGVyYW5jZSkge1xuICAgICAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgICAkYmVzdDogbnRoKCRjb2xvcnMsICRpKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKCRjb250cmFzdC13YXJuaW5ncyBhbmQgJGNvbnRyYXN0IDwgMykge1xuICAgIEB3YXJuICdDb250cmFzdCByYXRpbyBvZiAjeyRiZXN0fSBvbiAjeyRiYXNlfSBpcyBwcmV0dHkgYmFkLCBqdXN0ICN7JGNvbnRyYXN0fSc7XG4gIH1cblxuICBAcmV0dXJuICRiZXN0O1xufVxuXG4vLy8gU2NhbGVzIGEgY29sb3IgdG8gYmUgZGFya2VyIGlmIGl0J3MgbGlnaHQsIG9yIGxpZ2h0ZXIgaWYgaXQncyBkYXJrLiBVc2UgdGhpcyBmdW5jdGlvbiB0byB0aW50IGEgY29sb3IgYXBwcm9wcmlhdGUgdG8gaXRzIGxpZ2h0bmVzcy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIHNjYWxlLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHNjYWxlIFs1JV0gLSBBbW91bnQgdG8gc2NhbGUgdXAgb3IgZG93bi5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICR0aHJlc2hvbGQgWzQwJV0gLSBUaHJlc2hvbGQgb2YgbGlnaHRuZXNzIHRvIGNoZWNrIGFnYWluc3QuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IEEgc2NhbGVkIGNvbG9yLlxuQGZ1bmN0aW9uIHNtYXJ0LXNjYWxlKCRjb2xvciwgJHNjYWxlOiA1JSwgJHRocmVzaG9sZDogNDAlKSB7XG4gIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA+ICR0aHJlc2hvbGQge1xuICAgICRzY2FsZTogLSRzY2FsZTtcbiAgfVxuICBAcmV0dXJuIHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJHNjYWxlKTtcbn1cblxuLy8vIEdldCBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHBhcmFtIHtrZXl9IGNvbG9yIGtleSBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuQGZ1bmN0aW9uIGdldC1jb2xvcigka2V5KSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ2dpdmVuICRrZXkgaXMgbm90IGF2YWlsYWJsZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlJztcbiAgfVxufVxuXG4vLy8gVHJhbnNmZXJzIHRoZSBjb2xvcnMgaW4gdGhlIGAkZm91bmRhdGlvbi1wYWxldHRlYCBtYXAgaW50byB2YXJpYWJsZXMsIHN1Y2ggYXMgYCRwcmltYXJ5LWNvbG9yYCBhbmQgYCRzZWNvbmRhcnktY29sb3JgLiBDYWxsIHRoaXMgbWl4aW4gYmVsb3cgdGhlIEdsb2JhbCBzZWN0aW9uIG9mIHlvdXIgc2V0dGluZ3MgZmlsZSB0byBwcm9wZXJseSBtaWdyYXRlIHlvdXIgY29kZWJhc2UuXG5AbWl4aW4gYWRkLWZvdW5kYXRpb24tY29sb3JzKCkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICAgICRwcmltYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRwcmltYXJ5LWNvbG9yOiAjMTc3OWJhICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkge1xuICAgICRzZWNvbmRhcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc2Vjb25kYXJ5LWNvbG9yOiAjNzY3Njc2ICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogIzNhZGI3NiAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSB7XG4gICAgJHdhcm5pbmctY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHdhcm5pbmctY29sb3I6ICNmZmFlMDAgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpIHtcbiAgICAkYWxlcnQtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRhbGVydC1jb2xvcjogI2NjNGIzNyAhZ2xvYmFsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbWVudVxuLy8vL1xuXG4vLy8gTWFyZ2luIG9mIGEgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIExlZnQtaGFuZCBtYXJnaW4gb2YgYSBuZXN0ZWQgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgaXRlbXMgaW4gYSBwaWxsIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1pdGVtcy1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBzaW1wbGUgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LXNpbXBsZS1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGl2ZSB0ZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWNvbG9yLWFsdC1hY3RpdmU6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gYWN0aXZlIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGFuIGljb24gYW5kIHRleHQgaW4gYSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1pY29uLXNwYWNpbmc6IDAuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciBtZW51IHN0YXRlLiBJZiB0cnVlLCB0aGlzIGR1cGxpY2F0ZSBgYWN0aXZlYCB3aXRoIGBpcy1hY3RpdmVgLlxuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IGBhY3RpdmVgIHdpbGwgYmUgcmVtb3ZlZCBpbiB1cGNvbWluZyB2ZXJzaW9ucy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kbWVudS1zdGF0ZS1iYWNrLWNvbXBhdDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2t3YXJkIGNvbXBhdGliaWxpdHkgZm9yIG1lbnUgY2VudGVyZWQuIElmIHRydWUsIHRoaXMgZHVwbGljYXRlIGAubWVudS1jZW50ZXJlZCA+IC5tZW51YCB3aXRoIGAubWVudS5hbGlnbi1jZW50ZXJgLlxuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IGBtZW51LWNlbnRlcmVkYCB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciB1c2luZyBgaWNvbi0qYCBjbGFzc2VzIHdpdGhvdXQgYC5pY29uc2AgY2xhc3Nlc1xuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IHRoaXMgYmFja3dhcmQgY29tcGF0aWJpbGl0eSB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtaWNvbnMtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIHRoZSBiYXNlIHN0eWxlcyBmb3IgYSBNZW51LlxuQG1peGluIG1lbnUtYmFzZSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgbGkge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgfVxuXG4gIGEsXG4gIC5idXR0b24ge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkbWVudS1pdGVtcy1wYWRkaW5nO1xuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9mIGlubmVyIGVsZW1lbnRzXG4gIGlucHV0LFxuICBzZWxlY3QsXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIGlucHV0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLy8vIEV4cGFuZHMgdGhlIGl0ZW1zIG9mIGEgTWVudSwgc28gZWFjaCBpdGVtIGlzIHRoZSBzYW1lIHdpZHRoLlxuQG1peGluIG1lbnUtZXhwYW5kIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFsaWduIG1lbnUgaXRlbXMuXG5AbWl4aW4gbWVudS1hbGlnbigkYWxpZ25tZW50KSB7XG4gIEBpZiAkYWxpZ25tZW50ID09IGxlZnQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRhbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi52ZXJ0aWNhbCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG5cbiAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgICAgfVxuXG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGFsaWdubWVudCA9PSBjZW50ZXIge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgYSBNZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbaG9yaXpvbnRhbF0gLSBEaXJlY3Rpb24gb2YgdGhlIE1lbnUuIENhbiBiZSBgaG9yaXpvbnRhbGAgb3IgYHZlcnRpY2FsYC5cbkBtaXhpbiBtZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbXBsZSBNZW51LCB3aGljaCBoYXMgbm8gcGFkZGluZyBvciBob3ZlciBzdGF0ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgWyRnbG9iYWwtbGVmdF0gLSBEaXJlY3Rpb24gb2YgdGhlIG1lbnUuIFRoaXMgZWZmZWN0cyB0aGUgc2lkZSBvZiB0aGUgYDxsaT5gIHRoYXQgcmVjZWl2ZXMgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1hcmdpbiBbJG1lbnUtc2ltcGxlLW1hcmdpbl0gLSBUaGUgbWFyZ2luIHRvIGFwcGx5IHRvIGVhY2ggYDxsaT5gLlxuQG1peGluIG1lbnUtc2ltcGxlKCRkaXI6ICRnbG9iYWwtbGVmdCwgJG1hcmdpbjogJG1lbnUtc2ltcGxlLW1hcmdpbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgbGkgKyBsaSB7XG4gICAgbWFyZ2luLSN7JGRpcn06ICRtYXJnaW47XG4gIH1cblxuICBhIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBuZXN0ZWQgTWVudSwgYnkgYWRkaW5nIGBtYXJnaW4tbGVmdGAgdG8gdGhlIG1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJG1hcmdpbiBbJG1lbnUtbmVzdGVkLW1hcmdpbl0gLSBMZW5ndGggb2YgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRuZXN0ZWQtYWxpZ25tZW50IFtsZWZ0XSAtIEFsaWdubWVudCBvZiB0aGUgbmVzdGVkIGNsYXNzXG5AbWl4aW4gbWVudS1uZXN0ZWQoXG4gICRtYXJnaW46ICRtZW51LW5lc3RlZC1tYXJnaW4sXG4gICRuZXN0ZWQtYWxpZ25tZW50OiBsZWZ0XG4pIHtcbiAgQGlmICRuZXN0ZWQtYWxpZ25tZW50ID09IHJpZ2h0IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJG1hcmdpbjtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbWFyZ2luO1xuICB9XG5cbn1cblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBpY29ucyBpbiBtZW51cy5cbkBtaXhpbiBtZW51LWljb25zKCkge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBpbWcsXG4gICAgaSxcbiAgICBzdmcge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgKyBzcGFuIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFsaWduIHRvcC9ib3R0b20gaWNvbnMgd2l0aGluIGEgbWVudS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRhbGlnbm1lbnQgW2NlbnRlcl0gLSBBbGlnbm1lbnQgb2YgdGhlIGljb25cbkBtaXhpbiBtZW51LWljb24tYWxpZ25tZW50KCRhbGlnbm1lbnQ6IGNlbnRlcikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAmLmljb24tdG9wLFxuICAgICYuaWNvbi1ib3R0b20ge1xuICAgICAgbGkgYSB7XG4gICAgICAgIGltZyxcbiAgICAgICAgaSxcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICBAaWYgJGFsaWdubWVudCA9PSBsZWZ0IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGVsc2UgaWYgJGFsaWdubWVudCA9PSByaWdodCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHBvc2l0aW9uIGNsYXNzZXMgZm9yIGljb25zIHdpdGhpbiBhIG1lbnUuXG5AbWl4aW4gbWVudS1pY29uLXBvc2l0aW9uKCRwb3NpdGlvbjogbGVmdCwgJHNwYWNpbmc6ICRtZW51LWljb24tc3BhY2luZykge1xuICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcblxuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJHNwYWNpbmc7XG5cbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDAgYXV0byAkc3BhY2luZztcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAkc3BhY2luZyBhdXRvIDA7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZW51LXRleHQge1xuICBwYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcblxuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG5AbWl4aW4gbWVudS1zdGF0ZS1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAkbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlO1xuICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlLCAoJG1lbnUtaXRlbS1jb2xvci1hY3RpdmUsICRtZW51LWl0ZW0tY29sb3ItYWx0LWFjdGl2ZSkpO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1tZW51IHtcbiAgLm1lbnUge1xuICAgIEBpbmNsdWRlIG1lbnUtYmFzZTtcblxuICAgIC8vIERlZmF1bHQgb3JpZW50YXRpb246IGhvcml6b250YWxcbiAgICAmLCAmLmhvcml6b250YWwge1xuICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgfVxuXG4gICAgLy8gVmVydGljYWwgb3JpZW50YXRpb24gbW9kaWZpZXJcbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1hbGlnbm1lbnQobGVmdCk7XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBtb2RpZmllciBmb3IgaG9yaXpvbnRhbCBvcmllbnRhdGlvblxuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tYWxpZ25tZW50KGxlZnQpO1xuICAgIH1cblxuICAgIC8vIFNpbXBsZVxuICAgICYuc2ltcGxlIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtc2ltcGxlO1xuICAgIH1cblxuICAgIC8vIEJyZWFrcG9pbnQgc3BlY2lmaWMgdmVyc2lvbnNcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCRzbWFsbDogZmFsc2UpIHtcbiAgICAgICYuI3skLXpmLXNpemV9LWhvcml6b250YWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tdmVydGljYWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LWV4cGFuZGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LXNpbXBsZSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5lc3RpbmdcbiAgICAmLm5lc3RlZCB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZDtcbiAgICB9XG5cbiAgICAvLyBJY29uIEJhc2UgU3R5bGVzXG4gICAgJi5pY29ucyB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb25zO1xuICAgIH1cblxuICAgIC8vIEJhY2t3YXJkIENvbXBhdGliaWxpdHkgZm9yIGFjdGl2ZSBzdGF0ZVxuICAgIEBpZiAkbWVudS1pY29ucy1iYWNrLWNvbXBhdCB7XG4gICAgICAmLmljb24tdG9wLFxuICAgICAgJi5pY29uLXJpZ2h0LFxuICAgICAgJi5pY29uLWJvdHRvbSxcbiAgICAgICYuaWNvbi1sZWZ0IHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1pY29ucztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBNZW51IGljb24gcG9zaXRpb25cbiAgICAvLyBJbmNsdWRlcyBzcGVjaWZpY2l0eSB0byBuZXN0ZWQgaWNvbnMgd2l0aCBhIGRpZmZlcmVudCBwb3NpdGlvblxuICAgICYsXG4gICAgJi5uZXN0ZWQge1xuICAgICAgLy8gSWNvbiBMZWZ0XG4gICAgICAmLmljb24tbGVmdCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihsZWZ0KTtcbiAgICAgIH1cblxuICAgICAgLy8gSWNvbiBSaWdodFxuICAgICAgJi5pY29uLXJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKHJpZ2h0KTtcbiAgICAgIH1cblxuICAgICAgLy8gSWNvbiBUb3BcbiAgICAgICYuaWNvbi10b3Age1xuICAgICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24odG9wKTtcbiAgICAgIH1cblxuICAgICAgLy8gSWNvbiBCb3R0b21cbiAgICAgICYuaWNvbi1ib3R0b20ge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24oYm90dG9tKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAuaXMtYWN0aXZlID4gYSB7XG4gICAgICBAaW5jbHVkZSBtZW51LXN0YXRlLWFjdGl2ZTtcbiAgICB9XG5cbiAgICAvLyBCYWNrd2FyZCBDb21wYXRpYmlsaXR5IGZvciBhY3RpdmUgc3RhdGVcbiAgICBAaWYgJG1lbnUtc3RhdGUtYmFjay1jb21wYXQge1xuICAgICAgLmFjdGl2ZSA+IGEge1xuICAgICAgICBAaW5jbHVkZSBtZW51LXN0YXRlLWFjdGl2ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBbGlnbiBsZWZ0XG4gICAgJi5hbGlnbi0jeyRnbG9iYWwtbGVmdH0ge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihsZWZ0KTtcbiAgICB9XG5cbiAgICAvLyBBbGlnbiByaWdodFxuICAgICYuYWxpZ24tI3skZ2xvYmFsLXJpZ2h0fSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWFsaWduKHJpZ2h0KTtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1hbGlnbm1lbnQocmlnaHQpO1xuXG4gICAgICAubmVzdGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJG5lc3RlZC1hbGlnbm1lbnQ6IHJpZ2h0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBbGlnbiBjZW50ZXJcbiAgICAmLmFsaWduLWNlbnRlciB7XG4gICAgICBAaW5jbHVkZSBtZW51LWFsaWduKGNlbnRlcik7XG4gICAgfVxuXG4gICAgLm1lbnUtdGV4dCB7XG4gICAgICBAaW5jbHVkZSBtZW51LXRleHQ7XG4gICAgfVxuICB9XG5cbiAgQGlmICRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0IHtcbiAgICAubWVudS1jZW50ZXJlZCB7XG4gICAgICA+IC5tZW51IHtcbiAgICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZW51LWFsaWduKGNlbnRlcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUHJldmVudCBGT1VDIHdoZW4gdXNpbmcgdGhlIFJlc3BvbnNpdmUgTWVudSBwbHVnaW5cbiAgLm5vLWpzIFtkYXRhLXJlc3BvbnNpdmUtbWVudV0gdWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93bi1tZW51XG4vLy8vXG5cbi8vLyBFbmFibGVzIGFycm93cyBmb3IgaXRlbXMgd2l0aCBkcm9wZG93biBtZW51cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHNpemUgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHBhZGRpbmcgZm9yIGFsaWduaW5nIHRoZSBhcnJvdyBjb3JyZWN0bHkuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc6IDEuNXJlbSAhZGVmYXVsdDtcblxuLy8vIE1pbmltdW0gd2lkdGggb2YgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcm9wZG93bnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciB0b3AgbGV2ZWwgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IG5lc3RlZCBtYXJnaW5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIHN1Yi1tZW51IGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLyBCb3JkZXIgd2lkdGggZm9yIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vIFVzZWQgdG8gYWRqdXN0IHRvcCBtYXJnaW4gb2YgYSBzdWItbWVudSBpZiBhIGJvcmRlciBpcyB1c2VkLlxuLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWJvcmRlci13aWR0aDogbnRoKCRkcm9wZG93bm1lbnUtYm9yZGVyLCAxKTtcblxuLy8vIFRleHQgY29sb3Igb2YgYW4gYWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbS4gRXhwbGljaXQgb3ZlcnJpZGUgZm9yIG1lbnUgZGVmYXVsdHNcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gYWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbS4gRXhwbGljaXQgb3ZlcnJpZGUgZm9yIG1lbnUgZGVmYXVsdHNcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cyB7XG4gID4gYTo6YWZ0ZXIge1xuICAgICN7JGdsb2JhbC1yaWdodH06IDE0cHg7XG4gIH1cblxuICAmLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgbGVmdCk7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICB9XG5cbiAgJi5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7XG4gIH1cbn1cblxuQG1peGluIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKCRkaXI6IGhvcml6b250YWwpIHtcbiAgQGlmICRkaXIgPT0gaG9yaXpvbnRhbCB7XG4gICAgPiBsaS5vcGVucy1sZWZ0IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpLm9wZW5zLXJpZ2h0IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZztcbiAgICAgIH1cblxuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuICAgICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICAgICN7JGdsb2JhbC1sZWZ0fTogYXV0bztcbiAgICAgICAgbWFyZ2luLXRvcDogLTEgKiAoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplICogMC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGRpciA9PSB2ZXJ0aWNhbCB7XG4gICAgPiBsaSB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgIH1cblxuICAgICAgJi5vcGVucy1sZWZ0IHtcbiAgICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5vcGVucy1yaWdodCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnVGhlIGRpcmVjdGlvbiB1c2VkIGZvciBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigpIG11c3QgYmUgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4nO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnUge1xuICAuZHJvcGRvd24ubWVudSB7XG4gICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG5cbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICB9XG5cbiAgICAvLyBUb3AtbGV2ZWwgaXRlbVxuICAgID4gbGkgPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDtcbiAgICAgIHBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAvLyBUb3AtbGV2ZWwgaXRlbSBhY3RpdmUgc3RhdGVcbiAgICA+IGxpLmlzLWFjdGl2ZSA+IGEge1xuICAgICAgYmFja2dyb3VuZDogJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICAgIGNvbG9yOiAkZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTtcbiAgICB9XG5cbiAgICAubm8tanMgJiB1bCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5uZXN0ZWQuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW4pO1xuICAgIH1cblxuICAgICYudmVydGljYWwge1xuICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgIH1cblxuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICAgICYuI3skc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLiN7JHNpemV9LXZlcnRpY2FsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LmZpcnN0LXN1YiB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICAgIHdpZHRoOiAxMDBweDtcblxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgYTo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICAjeyRnbG9iYWwtbGVmdH06IGF1dG87XG4gICAgICBtYXJnaW4tdG9wOiAtMSAqICRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTtcbiAgICB9XG5cbiAgICAmLm9wZW5zLWlubmVyID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuXG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBAaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSAncnRsJyB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgICYub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICAmLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMTAwJTtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtaW4td2lkdGg6ICRkcm9wZG93bm1lbnUtbWluLXdpZHRoO1xuXG4gICAgYm9yZGVyOiAkZHJvcGRvd25tZW51LWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd25tZW51LXN1Ym1lbnUtYmFja2dyb3VuZDtcblxuICAgIC5kcm9wZG93biAmIGEge1xuICAgICAgcGFkZGluZzogJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICAgIEBpbmNsdWRlIHpmLWRyb3Bkb3duLWxlZnQtcmlnaHQtYXJyb3dzO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAodHlwZS1vZigkZHJvcGRvd25tZW51LWJvcmRlci13aWR0aCkgPT0gJ251bWJlcicpIHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgbWFyZ2luLXRvcDogKC0kZHJvcGRvd25tZW51LWJvcmRlci13aWR0aCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBbVE9ET10gQ3V0IGJhY2sgc3BlY2lmaWNpdHlcbiAgICAvLyY6bm90KC5qcy1kcm9wZG93bi1ub2hvdmVyKSA+IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudDpob3ZlciA+ICYsIC8vIHdoeSBpcyB0aGlzIGxpbmUgbmVlZGVkPyBPcGVuaW5nIGlzIGhhbmRsZWQgYnkgSlMgYW5kIHRoaXMgY2F1c2VzIHNvbWUgdWdseSBmbGlja2VyaW5nIHdoZW4gdGhlIHN1YiBpcyByZS1wb3NpdGlvbmVkIGF1dG9tYXRpY2FsbHkuLi5cbiAgICAmLmpzLWRyb3Bkb3duLWFjdGl2ZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBGbGV4Ym94IFV0aWxpdGllc1xuLy8vL1xuLy9cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciB0aGUgY291bnQgb2Ygc291cmNlIG9yZGVyaW5nYFxuLy8vIEB0eXBlIE51bWJlclxuJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50OiA2ICFkZWZhdWx0O1xuXG4vLy8gUXVpY2tseSBkaXNhYmxlL2VuYWJsZSBSZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBWYW5pbGxhIEZsZXggSGVscGVycy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzOiB0cnVlICFkZWZhdWx0O1xuXG5AbWl4aW4gZmxleC1oZWxwZXJzIHtcbiAgLmZsZXgtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBmbGV4O1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cblxuICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAuZmxleC1kaXItI3skZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzKSB7XG4gICAgLy8gTG9vcCB0aHJvdWdoIFJlc3BvbnNpdmUgQnJlYWtwb2ludHNcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jb250YWluZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1hdXRvIHtcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLWdyb3cge1xuICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBlYWNoICRkaXIsICRwcm9wIGluICQtemYtZmxleC1kaXJlY3Rpb24ge1xuICAgICAgICAgICAgLiN7JHNpemV9LWZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcyB7XG4gIC8vIEhvcml6b250YWwgYWxpZ25tZW50IHVzaW5nIGp1c3RpZnktY29udGVudFxuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWp1c3RpZnkge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgfVxuICB9XG4gIFxuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCBTcGVjaWZpY2FsbHkgZm9yIFZlcnRpY2FsIE1lbnVcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluIG1hcC1yZW1vdmUoJC16Zi1mbGV4LWp1c3RpZnksICdqdXN0aWZ5JywgJ3NwYWNlZCcpIHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgICYubWVudSA+IGxpID4gYSB7XG4gICAgICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmVydGljYWwgYWxpZ25tZW50IHVzaW5nIGFsaWduLWl0ZW1zIGFuZCBhbGlnbi1zZWxmXG4gIEBlYWNoICR2ZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtYWxpZ24ge1xuICAgIC5hbGlnbi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR5OiAkdmRpcik7XG4gICAgfVxuXG4gICAgLmFsaWduLXNlbGYtI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbi1zZWxmKCR5OiAkdmRpcik7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2VudHJhbCBhbGlnbm1lbnQgb2YgY29udGVudFxuICAuYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogY2VudGVyLCAkeTogbWlkZGxlKTtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQge1xuICAgICAgLiN7JC16Zi1zaXplfS1vcmRlci0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtb3JkZXIoJGkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZhbmlsbGEgRmxleGJveCBIZWxwZXJzXG4gIEBpbmNsdWRlIGZsZXgtaGVscGVycztcbn1cbiIsIkBmdW5jdGlvbiAtemYtZmxleC1qdXN0aWZ5KCR0ZXh0LWRpcmVjdGlvbikge1xuICAkLXpmLWZsZXgtanVzdGlmeTogKFxuICAgICdsZWZ0JzogaWYoJHRleHQtZGlyZWN0aW9uID09IHJ0bCwgZmxleC1lbmQsIGZsZXgtc3RhcnQpLFxuICAgICdyaWdodCc6IGlmKCR0ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGZsZXgtc3RhcnQsIGZsZXgtZW5kKSxcbiAgICAnY2VudGVyJzogY2VudGVyLFxuICAgICdqdXN0aWZ5Jzogc3BhY2UtYmV0d2VlbixcbiAgICAnc3BhY2VkJzogc3BhY2UtYXJvdW5kLFxuICApO1xuXG4gIEByZXR1cm4gJC16Zi1mbGV4LWp1c3RpZnk7XG59XG5cblxuJC16Zi1mbGV4LWFsaWduOiAoXG4gICd0b3AnOiBmbGV4LXN0YXJ0LFxuICAnYm90dG9tJzogZmxleC1lbmQsXG4gICdtaWRkbGUnOiBjZW50ZXIsXG4gICdzdHJldGNoJzogc3RyZXRjaCxcbik7XG5cbiQtemYtZmxleC1kaXJlY3Rpb246IChcbiAgJ3Jvdyc6IHJvdyxcbiAgJ3Jvdy1yZXZlcnNlJzogcm93LXJldmVyc2UsXG4gICdjb2x1bW4nOiBjb2x1bW4sXG4gICdjb2x1bW4tcmV2ZXJzZSc6IGNvbHVtbi1yZXZlcnNlLFxuKTtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBieSBhZGRpbmcgYGRpc3BsYXk6IGZsZXhgIHRvIHRoZSBlbGVtZW50LlxuQG1peGluIGZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkgYWxpZ25zIHRoZSBpdGVtcyB3aXRoaW4gYSBmbGV4IGNvbnRhaW5lci5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHggW251bGxdIC0gSG9yaXpvbnRhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYGxlZnRgLCBgcmlnaHRgLCBgY2VudGVyYCwgYGp1c3RpZnlgLCBvciBgc3BhY2VkYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IGhvcml6b250YWwgYWxpZ25tZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWFsaWduKCR4OiBudWxsLCAkeTogbnVsbCkge1xuICBAaWYgJHgge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtanVzdGlmeSwgJHgpIHtcbiAgICAgICR4OiBtYXAtZ2V0KCQtemYtZmxleC1qdXN0aWZ5LCAkeCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtcm93LWFsaWduKCk6ICN7JHh9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciBob3Jpem9udGFsIGFsaWdubWVudC4gVXNlIGxlZnQsIHJpZ2h0LCBjZW50ZXIsIGp1c3RpZnksIG9yIHNwYWNlZC4nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgdmVydGljYWwgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGp1c3RpZnktY29udGVudDogJHg7XG4gIGFsaWduLWl0ZW1zOiAkeTtcbn1cblxuLy8vIFZlcnRpY2FsbHkgYWxpZ24gYSBzaW5nbGUgY29sdW1uIHdpdGhpbiBhIGZsZXggcm93LiBBcHBseSB0aGlzIG1peGluIHRvIGEgZmxleCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbi1zZWxmKCR5OiBudWxsKSB7XG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLWNvbHVtbi1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGFsaWduLXNlbGY6ICR5O1xufVxuXG4vLy8gQ2hhbmdlcyB0aGUgc291cmNlIG9yZGVyIG9mIGEgZmxleCBjaGlsZC4gQ2hpbGRyZW4gd2l0aCBsb3dlciBudW1iZXJzIGFwcGVhciBmaXJzdCBpbiB0aGUgbGF5b3V0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb3JkZXIgWzBdIC0gT3JkZXIgbnVtYmVyIHRvIGFwcGx5LlxuQG1peGluIGZsZXgtb3JkZXIoJG9yZGVyOiAwKSB7XG4gIG9yZGVyOiAkb3JkZXI7XG59XG5cbi8vLyBDaGFuZ2UgZmxleC1kaXJlY3Rpb25cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW3Jvd10gLSBGbGV4IGRpcmVjdGlvbiB0byB1c2UuIENhbiBiZVxuLy8vICAgLSByb3cgKGRlZmF1bHQpOiBzYW1lIGFzIHRleHQgZGlyZWN0aW9uXG4vLy8gICAtIHJvdy1yZXZlcnNlOiBvcHBvc2l0ZSB0byB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSBjb2x1bW46IHNhbWUgYXMgcm93IGJ1dCB0b3AgdG8gYm90dG9tXG4vLy8gICAtIGNvbHVtbi1yZXZlcnNlOiBzYW1lIGFzIHJvdy1yZXZlcnNlIHRvcCB0byBib3R0b21cbkBtaXhpbiBmbGV4LWRpcmVjdGlvbigkZGlyZWN0aW9uOiByb3cpIHtcbiAgZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yKCRzaXplKSB7XG4gICRzaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAvLyBNYXggdmFsdWUgaXMgMC4ycHggdW5kZXIgdGhlIG5leHQgYnJlYWtwb2ludCAoMC4wMiAvIDE2ID0gMC4wMDEyNSkuXG4gIC8vIFVzZSBhIHByZWNpc2lvbiB1bmRlciAxcHggdG8gc3VwcG9ydCBicm93c2VyIHpvb20sIGJ1dCBub3QgdG8gbG93IHRvIGF2b2lkIHJvdW5kaW5nLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTEzMTNcbiAgJHNpemU6IC16Zi1icC10by1lbSgkc2l6ZSkgLSAwLjAwMTI1O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCB3aXRoaW4gYSBjZXJ0YWluIGJyZWFrcG9pbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvci1vbmx5KCRzaXplKSB7XG4gICRsb3dlci1ib3VuZC1zaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkdXBwZXItYm91bmQtc2l6ZTogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJHNpemUpO1xuXG4gIC8vIG1vcmUgb2Z0ZW4gdGhhbiBub3QgdGhpcyB3aWxsIGJlIGNvcnJlY3QsIGp1c3Qgb25lIHRpbWUgcm91bmQgdGhlIGxvb3AgaXQgd29uJ3Qgc28gc2V0IGluIHNjb3BlIGhlcmVcbiAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpIC0gMC4wMDEyNTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgLnZpc2libGUge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBEYXJrIE1vZGUgVmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItZGFyay1tb2RlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5oaWRlLWZvci1kYXJrLW1vZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAgIC5zaG93LWZvci1kYXJrLW1vZGUge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmhpZGUtZm9yLWRhcmstbW9kZSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSUUxMCsgVmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItaWUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAuc2hvdy1mb3ItaWUge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmhpZGUtZm9yLWllIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBTdGlja3kgVmlzaWJpbGl0eVxuICAuc2hvdy1mb3Itc3RpY2t5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5pcy1zdHVjayAuc2hvdy1mb3Itc3RpY2t5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuaXMtc3R1Y2sgLmhpZGUtZm9yLXN0aWNreSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHByb3RvdHlwZS1mb250LXN0eWxpbmdcbi8vLy9cblxuLy8vIFJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIGZvbnQgc3R5bGluZyB0eXBlc1xuLy8vIEB0eXBlIEJvb2xlYW5cbiRwcm90b3R5cGUtZm9udC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHMgIWRlZmF1bHQ7XG5cbi8vLyBMZXR0ZXIgc3BhY2luZyBmb3IgYC5mb250LXdpZGVgXG4vLy8gQHR5cGUgTnVtYmVyXG4kcHJvdG90eXBlLXdpZGUtbGV0dGVyLXNwYWNpbmc6IHJlbS1jYWxjKDQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB3ZWlnaHQgZm9yIGAuZm9udC1ub3JtYWxgLCBkZWZhdWx0ZWQgdG8gYGdsb2JhbC13ZWlnaHQtbm9ybWFsYFxuLy8vIEB0eXBlIE51bWJlclxuJHByb3RvdHlwZS1mb250LW5vcm1hbDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB3ZWlnaHQgZm9yIGAuZm9udC1ib2xkYCwgZGVmYXVsdGVkIHRvIGBnbG9iYWwtd2VpZ2h0LWJvbGRgXG4vLy8gQHR5cGUgTnVtYmVyXG4kcHJvdG90eXBlLWZvbnQtYm9sZDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2lkZSBsZXR0ZXIgc3BhY2luZyFcbi8vLyBAcGFyYW0ge051bWJlcn0gJGxldHRlci1zcGFjaW5nIFskcHJvdG90eXBlLXdpZGUtbGV0dGVyLXNwYWNpbmddIFdpZGUgbGV0dGVyIHNwYWNpbmcgZm9yIHRoZSBmb250XG5AbWl4aW4gZm9udC13aWRlKFxuICAkbGV0dGVyLXNwYWNpbmc6ICRwcm90b3R5cGUtd2lkZS1sZXR0ZXItc3BhY2luZ1xuKSB7XG4gIGxldHRlci1zcGFjaW5nOiAkbGV0dGVyLXNwYWNpbmc7XG59XG5cbi8vLyBGb250IFdlaWdodCBOb3JtYWwsIGRlZmF1bHQgdmFsdWUgY29taW5nIHRocm91Z2ggYGdsb2JhbC13ZWlnaHQtbm9ybWFsYFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFskcHJvdG90eXBlLWZvbnQtbm9ybWFsXSBXZWlnaHQgb2YgdGhlIGZvbnQgKG5vcm1hbClcbkBtaXhpbiBmb250LW5vcm1hbChcbiAgJHdlaWdodDogJHByb3RvdHlwZS1mb250LW5vcm1hbFxuKSB7XG4gIGZvbnQtd2VpZ2h0OiAkd2VpZ2h0O1xufVxuXG4vLy8gRm9udCBXZWlnaHQgQm9sZCwgZGVmYXVsdCB2YWx1ZSBjb21pbmcgdGhyb3VnaCBgZ2xvYmFsLXdlaWdodC1ib2xkYFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFskcHJvdG90eXBlLWZvbnQtYm9sZF0gV2VpZ2h0IG9mIHRoZSBmb250IChib2xkKVxuQG1peGluIGZvbnQtYm9sZChcbiAgJHdlaWdodDogJHByb3RvdHlwZS1mb250LWJvbGRcbikge1xuICBmb250LXdlaWdodDogJHdlaWdodDtcbn1cblxuLy8vIEZvbnQgU3R5bGUgSXRhbGljXG5AbWl4aW4gZm9udC1pdGFsaWMge1xuICBmb250LXN0eWxlOiBpdGFsaWMgIWltcG9ydGFudDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tcHJvdG90eXBlLWZvbnQtc3R5bGluZyB7XG4gIC5mb250LXdpZGUge1xuICAgIEBpbmNsdWRlIGZvbnQtd2lkZTtcbiAgfVxuXG4gIC5mb250LW5vcm1hbCB7XG4gICAgQGluY2x1ZGUgZm9udC1ub3JtYWw7XG4gIH1cblxuICAuZm9udC1ib2xkIHtcbiAgICBAaW5jbHVkZSBmb250LWJvbGQ7XG4gIH1cblxuICAuZm9udC1pdGFsaWMge1xuICAgIEBpbmNsdWRlIGZvbnQtaXRhbGljO1xuICB9XG5cbiAgQGlmICgkcHJvdG90eXBlLWZvbnQtYnJlYWtwb2ludHMpIHtcbiAgICAvLyBMb29wIHRocm91Z2ggUmVzcG9uc2l2ZSBCcmVha3BvaW50c1xuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS1mb250LXdpZGUge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC13aWRlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mb250LW5vcm1hbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LW5vcm1hbDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZm9udC1ib2xkIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQtYm9sZDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZm9udC1pdGFsaWMge1xuICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1pdGFsaWM7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcHJvdG90eXBlLXNwYWNpbmdcbi8vLy9cblxuLy8vIFJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIHNwYWNpbmcgY2xhc3NlcyAobWFyZ2luIGFuZCBwYWRkaW5nKVxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwcm90b3R5cGUtc3BhY2luZy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHMgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG51bWJlciBvZiBzcGFjZXJzIGNvdW50IChtYXJnaW4gYW5kIHBhZGRpbmcpXG4vLy8gQHR5cGUgTnVtYmVyXG4kcHJvdG90eXBlLXNwYWNlcnMtY291bnQ6IDMgIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gaGVscGVyIG1peGluLCBhbGwgdGhlIHZhbHVlcyBhcmUgbXVsdGlwbGllZCBieSBgJGdsb2JhbC1tYXJnaW5gIHdoaWNoIGJ5IGRlZmF1bHQgaXMgZXF1YWwgdG8gYDFyZW1gXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0b3AgW251bGxdIC0gTWFyZ2luIFRvcFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcmlnaHQgW251bGxdIC0gTWFyZ2luIFJpZ2h0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRib3R0b20gW251bGxdIC0gTWFyZ2luIEJvdHRvbVxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbGVmdCBbbnVsbF0gLSBNYXJnaW4gTGVmdFxuQG1peGluIG1hcmdpbihcbiAgJHRvcDogbnVsbCxcbiAgJHJpZ2h0OiBudWxsLFxuICAkYm90dG9tOiBudWxsLFxuICAkbGVmdDogbnVsbFxuKSB7XG4gIEBpZiAkdG9wICE9IG51bGwge1xuICAgIG1hcmdpbi10b3A6ICR0b3AgKiAkZ2xvYmFsLW1hcmdpbiAhaW1wb3J0YW50O1xuICB9XG4gIEBpZiAkcmlnaHQgIT0gbnVsbCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkcmlnaHQgKiAkZ2xvYmFsLW1hcmdpbiAhaW1wb3J0YW50O1xuICB9XG4gIEBpZiAkYm90dG9tICE9IG51bGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRib3R0b20gKiAkZ2xvYmFsLW1hcmdpbiAhaW1wb3J0YW50O1xuICB9XG4gIEBpZiAkbGVmdCAhPSBudWxsIHtcbiAgICBtYXJnaW4tbGVmdDogJGxlZnQgKiAkZ2xvYmFsLW1hcmdpbiAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBQYWRkaW5nIGhlbHBlciBtaXhpbiwgYWxsIHRoZSB2YWx1ZXMgYXJlIG11bHRpcGxpZWQgYnkgYCRnbG9iYWwtcGFkZGluZ2Agd2hpY2ggYnkgZGVmYXVsdCBpcyBlcXVhbCB0byBgMXJlbWBcbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvcCBbbnVsbF0gLSBQYWRkaW5nIFRvcFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcmlnaHQgW251bGxdIC0gUGFkZGluZyBSaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYm90dG9tIFtudWxsXSAtIFBhZGRpbmcgQm90dG9tXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRsZWZ0IFtudWxsXSAtIFBhZGRpbmcgTGVmdFxuQG1peGluIHBhZGRpbmcoXG4gICR0b3A6IG51bGwsXG4gICRyaWdodDogbnVsbCxcbiAgJGJvdHRvbTogbnVsbCxcbiAgJGxlZnQ6IG51bGxcbikge1xuICBAaWYgJHRvcCAhPSBudWxsIHtcbiAgICBwYWRkaW5nLXRvcDogJHRvcCAqICRnbG9iYWwtcGFkZGluZyAhaW1wb3J0YW50O1xuICB9XG4gIEBpZiAkcmlnaHQgIT0gbnVsbCB7XG4gICAgcGFkZGluZy1yaWdodDogJHJpZ2h0ICogJGdsb2JhbC1wYWRkaW5nICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGlmICRib3R0b20gIT0gbnVsbCB7XG4gICAgcGFkZGluZy1ib3R0b206ICRib3R0b20gKiAkZ2xvYmFsLXBhZGRpbmcgIWltcG9ydGFudDtcbiAgfVxuICBAaWYgJGxlZnQgIT0gbnVsbCB7XG4gICAgcGFkZGluZy1sZWZ0OiAkbGVmdCAqICRnbG9iYWwtcGFkZGluZyAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBNYXJnaW4gY2xhc3NlcyBmb3Igc3BlY2lmaWMgZGlyZWN0aW9uIHByb3BlcnRpZXNcbi8vLyBAcGFyYW0ge1N0cmluZ30gJGRpciBbXSBEaXJlY3Rpb25cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNwYWNlciBbXSBTcGFjZXJcbkBtaXhpbiBtYXJnaW4tZGlyZWN0aW9uKCRkaXIsICRzcGFjZXIpIHtcbiAgQGlmICgkZGlyID09IHRvcCkge1xuICAgIEBpbmNsdWRlIG1hcmdpbigkdG9wOiAkc3BhY2VyKTtcbiAgfVxuICBAZWxzZSBpZiAoJGRpciA9PSByaWdodCkge1xuICAgIEBpbmNsdWRlIG1hcmdpbigkcmlnaHQ6ICRzcGFjZXIpO1xuICB9XG4gIEBlbHNlIGlmICgkZGlyID09IGJvdHRvbSkge1xuICAgIEBpbmNsdWRlIG1hcmdpbigkYm90dG9tOiAkc3BhY2VyKTtcbiAgfVxuICBAZWxzZSBpZiAoJGRpciA9PSBsZWZ0KSB7XG4gICAgQGluY2x1ZGUgbWFyZ2luKCRsZWZ0OiAkc3BhY2VyKTtcbiAgfVxuICBAZWxzZSBpZiAoJGRpciA9PSBob3Jpem9udGFsKSB7XG4gICAgQGluY2x1ZGUgbWFyZ2luKCRyaWdodDogJHNwYWNlciwgJGxlZnQ6ICRzcGFjZXIpO1xuICB9XG4gIEBlbHNlIGlmICgkZGlyID09IHZlcnRpY2FsKSB7XG4gICAgQGluY2x1ZGUgbWFyZ2luKCR0b3A6ICRzcGFjZXIsICRib3R0b206ICRzcGFjZXIpO1xuICB9XG59XG5cbi8vLyBQYWRkaW5nIGNsYXNzZXMgZm9yIHNwZWNpZmljIGRpcmVjdGlvbiBwcm9wZXJ0aWVzXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRkaXIgW10gRGlyZWN0aW9uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzcGFjZXIgW10gU3BhY2VyXG5AbWl4aW4gcGFkZGluZy1kaXJlY3Rpb24oJGRpciwgJHNwYWNlcikge1xuICBAaWYgKCRkaXIgPT0gdG9wKSB7XG4gICAgQGluY2x1ZGUgcGFkZGluZygkdG9wOiAkc3BhY2VyKTtcbiAgfVxuICBAZWxzZSBpZiAoJGRpciA9PSByaWdodCkge1xuICAgIEBpbmNsdWRlIHBhZGRpbmcoJHJpZ2h0OiAkc3BhY2VyKTtcbiAgfVxuICBAZWxzZSBpZiAoJGRpciA9PSBib3R0b20pIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKCRib3R0b206ICRzcGFjZXIpO1xuICB9XG4gIEBlbHNlIGlmICgkZGlyID09IGxlZnQpIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nKCRsZWZ0OiAkc3BhY2VyKTtcbiAgfVxuICBAZWxzZSBpZiAoJGRpciA9PSBob3Jpem9udGFsKSB7XG4gICAgQGluY2x1ZGUgcGFkZGluZygkcmlnaHQ6ICRzcGFjZXIsICRsZWZ0OiAkc3BhY2VyKTtcbiAgfVxuICBAZWxzZSBpZiAoJGRpciA9PSB2ZXJ0aWNhbCkge1xuICAgIEBpbmNsdWRlIHBhZGRpbmcoJHRvcDogJHNwYWNlciwgJGJvdHRvbTogJHNwYWNlcik7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tcHJvdG90eXBlLXNwYWNpbmcge1xuICBAZm9yICRzcGFjZXIgZnJvbSAwIHRocm91Z2ggJHByb3RvdHlwZS1zcGFjZXJzLWNvdW50IHtcblxuICAgIEBlYWNoICRwcm9wIGluIChtYXJnaW4sIHBhZGRpbmcpIHtcbiAgICAgIC8vIEFsbCBTaWRlc1xuICAgICAgLiN7JHByb3B9LSN7JHNwYWNlcn0ge1xuICAgICAgICBAaWYgKCRwcm9wID09IG1hcmdpbikge1xuICAgICAgICAgIG1hcmdpbjogJHNwYWNlciAqICRnbG9iYWwtbWFyZ2luICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2UgaWYgKCRwcm9wID09IHBhZGRpbmcpIHtcbiAgICAgICAgICBwYWRkaW5nOiAkc3BhY2VyICogJGdsb2JhbC1wYWRkaW5nICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGVhY2ggJGRpciBpbiAodG9wLCByaWdodCwgYm90dG9tLCBsZWZ0LCBob3Jpem9udGFsLCB2ZXJ0aWNhbCkge1xuICAgICAgICAvLyBUb3AgU2lkZVxuICAgICAgICAuI3skcHJvcH0tI3skZGlyfS0jeyRzcGFjZXJ9IHtcbiAgICAgICAgICBAaWYgKCRwcm9wID09IG1hcmdpbikge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWFyZ2luLWRpcmVjdGlvbigkZGlyLCAkc3BhY2VyKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2UgaWYgKCRwcm9wID09IHBhZGRpbmcpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBhZGRpbmctZGlyZWN0aW9uKCRkaXIsICRzcGFjZXIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAoJHByb3RvdHlwZS1zcGFjaW5nLWJyZWFrcG9pbnRzKSB7XG4gICAgQGZvciAkc3BhY2VyIGZyb20gMCB0aHJvdWdoICRwcm90b3R5cGUtc3BhY2Vycy1jb3VudCB7XG4gICAgICAvLyBMb29wIHRocm91Z2ggUmVzcG9uc2l2ZSBCcmVha3BvaW50c1xuICAgICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgLiN7JHNpemV9IHtcbiAgICAgICAgICAgICAgQGVhY2ggJHByb3AgaW4gKG1hcmdpbiwgcGFkZGluZykge1xuICAgICAgICAgICAgICAgIC8vIEFsbCBTaWRlc1xuICAgICAgICAgICAgICAgICYtI3skcHJvcH0tI3skc3BhY2VyfSB7XG4gICAgICAgICAgICAgICAgICBAaWYgKCRwcm9wID09IG1hcmdpbikge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46ICRzcGFjZXIgKiAkZ2xvYmFsLW1hcmdpbiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgQGVsc2UgaWYgKCRwcm9wID09IHBhZGRpbmcpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogJHNwYWNlciAqICRnbG9iYWwtcGFkZGluZyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBlYWNoICRkaXIgaW4gKHRvcCwgcmlnaHQsIGJvdHRvbSwgbGVmdCwgaG9yaXpvbnRhbCwgdmVydGljYWwpIHtcbiAgICAgICAgICAgICAgICAgIC8vIFRvcCBTaWRlXG4gICAgICAgICAgICAgICAgICAmLSN7JHByb3B9LSN7JGRpcn0tI3skc3BhY2VyfSB7XG4gICAgICAgICAgICAgICAgICAgIEBpZiAoJHByb3AgPT0gbWFyZ2luKSB7XG4gICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWFyZ2luLWRpcmVjdGlvbigkZGlyLCAkc3BhY2VyKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBAZWxzZSBpZiAoJHByb3AgPT0gcGFkZGluZykge1xuICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBhZGRpbmctZGlyZWN0aW9uKCRkaXIsICRzcGFjZXIpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcHJvdG90eXBlLXNlcGFyYXRvclxuLy8vL1xuXG4vLy8gUmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3Igc2VwYXJhdG9yLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYWxpZ25tZW50IG9mIGEgc2VwYXJhdG9yLlxuLy8vIEB0eXBlIFN0cmluZ1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItYWxpZ246IGNlbnRlciAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBvZiBhIHNlcGFyYXRvci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWhlaWdodDogcmVtLWNhbGMoMikgIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBvZiBhIHNlcGFyYXRvci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwcm90b3R5cGUtc2VwYXJhdG9yLXdpZHRoOiAzcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBhIHNlcGFyYXRvci5cbi8vLyBAdHlwZSBDb2xvclxuJHByb3RvdHlwZS1zZXBhcmF0b3ItYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBUb3AgTWFyZ2luIG9mIGEgc2VwYXJhdG9yLlxuLy8vIEB0eXBlIE51bWJlclxuJHByb3RvdHlwZS1zZXBhcmF0b3ItbWFyZ2luLXRvcDogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBUaXRsZSBzZXBhcmF0b3IgVXRpbGl0eSwgbW9zdGx5IHVzZWQgdG8gc3R5bGUgdGhlIG1haW4gaGVhZGluZyBvZiBhIHNlY3Rpb25cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGFsaWduIFskcHJvdG90eXBlLXNlcGFyYXRvci1hbGlnbl0gLSBzZXBhcmF0b3IgQWxpZ25tZW50XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWyRwcm90b3R5cGUtc2VwYXJhdG9yLWhlaWdodF0gLSBXaWR0aFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWyRwcm90b3R5cGUtc2VwYXJhdG9yLXdpZHRoXSAtIEhlaWdodFxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskcHJvdG90eXBlLXNlcGFyYXRvci1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmRcbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvcCBbJHByb3RvdHlwZS1zZXBhcmF0b3ItbWFyZ2luLXRvcF0gLSBNYXJnaW4gVG9wXG5AbWl4aW4gc2VwYXJhdG9yIChcbiAgJGFsaWduOiAkcHJvdG90eXBlLXNlcGFyYXRvci1hbGlnbixcbiAgJGhlaWdodDogJHByb3RvdHlwZS1zZXBhcmF0b3ItaGVpZ2h0LFxuICAkd2lkdGg6ICRwcm90b3R5cGUtc2VwYXJhdG9yLXdpZHRoLFxuICAkYmFja2dyb3VuZDogJHByb3RvdHlwZS1zZXBhcmF0b3ItYmFja2dyb3VuZCxcbiAgJHRvcDogJHByb3RvdHlwZS1zZXBhcmF0b3ItbWFyZ2luLXRvcFxuKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICB0ZXh0LWFsaWduOiAkYWxpZ24gIWltcG9ydGFudDtcblxuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgcG9zaXRpb24ocmVsYXRpdmUpO1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhlaWdodCBzb2xpZCAkYmFja2dyb3VuZDtcbiAgICBtYXJnaW46ICR0b3AgYXV0byAwO1xuXG4gICAgQGlmICRhbGlnbiA9PSBsZWZ0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGlmICRhbGlnbiA9PSByaWdodCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tcHJvdG90eXBlLXNlcGFyYXRvciB7XG4gIC5zZXBhcmF0b3ItY2VudGVyIHtcbiAgICBAaW5jbHVkZSBzZXBhcmF0b3IoY2VudGVyKTtcbiAgfVxuXG4gIC5zZXBhcmF0b3ItbGVmdCB7XG4gICAgQGluY2x1ZGUgc2VwYXJhdG9yKGxlZnQpO1xuICB9XG5cbiAgLnNlcGFyYXRvci1yaWdodCB7XG4gICAgQGluY2x1ZGUgc2VwYXJhdG9yKHJpZ2h0KTtcbiAgfVxuXG4gIEBpZiAoJHByb3RvdHlwZS1zZXBhcmF0b3ItYnJlYWtwb2ludHMpIHtcbiAgICAvLyBMb29wIHRocm91Z2ggUmVzcG9uc2l2ZSBCcmVha3BvaW50c1xuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS1zZXBhcmF0b3ItY2VudGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNlcGFyYXRvcihjZW50ZXIpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuI3skc2l6ZX0tc2VwYXJhdG9yLWxlZnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgc2VwYXJhdG9yKGxlZnQpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuI3skc2l6ZX0tc2VwYXJhdG9yLXJpZ2h0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNlcGFyYXRvcihyaWdodCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcHJvdG90eXBlLXBvc2l0aW9uXG4vLy8vXG5cbi8vLyBSZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBwb3NpdGlvbiBoZWxwZXJzXG4vLy8gQHR5cGUgQm9vbGVhblxuJHByb3RvdHlwZS1wb3NpdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHMgIWRlZmF1bHQ7XG5cbi8vLyBNYXAgY29udGFpbmluZyBhbGwgdGhlIGBwb3NpdGlvbmAgY2xhc3Nlc1xuLy8vIEB0eXBlIE1hcFxuJHByb3RvdHlwZS1wb3NpdGlvbjogKFxuICBzdGF0aWMsXG4gIHJlbGF0aXZlLFxuICBhYnNvbHV0ZSxcbiAgZml4ZWRcbikgIWRlZmF1bHQ7XG5cbi8vLyB6LWluZGV4IGZvciBmaXhlZCBwb3NpdGlvbmluZ1xuLy8vIEB0eXBlIE51bWJlclxuJHByb3RvdHlwZS1wb3NpdGlvbi16LWluZGV4OiA5NzUgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbiBjbGFzc2VzLCBieSBkZWZhdWx0IGNvbWluZyB0aHJvdWdoIGEgbWFwIGAkcHJvdG90eXBlLXBvc2l0aW9uYCwgd2hlcmVhcyBhbGwgdGhlIG9mZnNldCB2YWx1ZXMgYXJlIG11bHRpcGxpZWQgYnkgYCRnbG9iYWwtcG9zaXRpb25gIHdoaWNoIGJ5IGRlZmF1bHQgaXMgZXF1YWwgdG8gYDFyZW1gLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkcG9zaXRpb24gW10gUG9zaXRpb24gY2xhc3NlcywgRWl0aGVyIGBzdGF0aWNgLCBgcmVsYXRpdmVgLCBgYWJzb2x1dGVgIG9yIGBmaXhlZGBcbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvcCBbbnVsbF0gLSBUb3Agb2Zmc2V0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRyaWdodCBbbnVsbF0gLSBSaWdodCBvZmZzZXRcbi8vLyBAcGFyYW0ge051bWJlcn0gJGJvdHRvbSBbbnVsbF0gLSBCb3R0b20gb2Zmc2V0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRsZWZ0IFtudWxsXSAtIExlZnQgb2Zmc2V0XG5AbWl4aW4gcG9zaXRpb24oXG4gICRwb3NpdGlvbixcbiAgJHRvcDogbnVsbCxcbiAgJHJpZ2h0OiBudWxsLFxuICAkYm90dG9tOiBudWxsLFxuICAkbGVmdDogbnVsbFxuKSB7XG4gIHBvc2l0aW9uOiAkcG9zaXRpb24gIWltcG9ydGFudDtcbiAgQGlmICR0b3AgIT0gbnVsbCB7XG4gICAgdG9wOiAkdG9wICogJGdsb2JhbC1wb3NpdGlvbiAhaW1wb3J0YW50O1xuICB9XG4gIEBpZiAkcmlnaHQgIT0gbnVsbCB7XG4gICAgcmlnaHQ6ICRyaWdodCAqICRnbG9iYWwtcG9zaXRpb24gIWltcG9ydGFudDtcbiAgfVxuICBAaWYgJGJvdHRvbSAhPSBudWxsIHtcbiAgICBib3R0b206ICRib3R0b20gKiAkZ2xvYmFsLXBvc2l0aW9uICFpbXBvcnRhbnQ7XG4gIH1cbiAgQGlmICRsZWZ0ICE9IG51bGwge1xuICAgIGxlZnQ6ICRsZWZ0ICogJGdsb2JhbC1wb3NpdGlvbiAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBQb3NpdGlvbiBGaXhlZCBvbiB0b3AgY29ybmVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkei1pbmRleCBbJHByb3RvdHlwZS1wb3NpdGlvbi16LWluZGV4XSB6LWluZGV4IGZvciBgcG9zaXRpb24tZml4ZWQtdG9wYFxuQG1peGluIHBvc2l0aW9uLWZpeGVkLXRvcChcbiAgJHotaW5kZXg6ICRwcm90b3R5cGUtcG9zaXRpb24tei1pbmRleFxuKSB7XG4gIEBpbmNsdWRlIHBvc2l0aW9uKGZpeGVkLCAwLCAwLCBudWxsLCAwKTtcbiAgei1pbmRleDogJHotaW5kZXg7XG59XG5cbi8vLyBQb3NpdGlvbiBGaXhlZCBvbiBib3R0b20gY29ybmVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkei1pbmRleCBbJHByb3RvdHlwZS1wb3NpdGlvbi16LWluZGV4XSB6LWluZGV4IGZvciBgcG9zaXRpb24tZml4ZWQtYm90dG9tYFxuQG1peGluIHBvc2l0aW9uLWZpeGVkLWJvdHRvbShcbiAgJHotaW5kZXg6ICRwcm90b3R5cGUtcG9zaXRpb24tei1pbmRleFxuKSB7XG4gIEBpbmNsdWRlIHBvc2l0aW9uKGZpeGVkLCBudWxsLCAwLCAwLCAwKTtcbiAgei1pbmRleDogJHotaW5kZXg7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXByb3RvdHlwZS1wb3NpdGlvbiB7XG4gIC8vIFBvc2l0aW9uOiBTdGF0aWMsIFJlbGF0aXZlLCBGaXhlZCwgQWJzb2x1dGVcbiAgQGVhY2ggJHBvc2l0aW9uIGluICRwcm90b3R5cGUtcG9zaXRpb24ge1xuICAgIC5wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgQGluY2x1ZGUgcG9zaXRpb24oJHBvc2l0aW9uKTtcbiAgICB9XG4gIH1cblxuICAvLyBQb3NpdGlvbjogRml4ZWQgVG9wLCBGaXhlZCBCb3R0b21cbiAgLnBvc2l0aW9uLWZpeGVkLXRvcCB7XG4gICAgQGluY2x1ZGUgcG9zaXRpb24tZml4ZWQtdG9wO1xuICB9XG4gIC5wb3NpdGlvbi1maXhlZC1ib3R0b20ge1xuICAgIEBpbmNsdWRlIHBvc2l0aW9uLWZpeGVkLWJvdHRvbTtcbiAgfVxuXG4gIEBpZiAoJHByb3RvdHlwZS1wb3NpdGlvbi1icmVha3BvaW50cykge1xuICAgIC8vIExvb3AgdGhyb3VnaCBSZXNwb25zaXZlIEJyZWFrcG9pbnRzXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIC8vIFBvc2l0aW9uOiBTdGF0aWMsIFJlbGF0aXZlLCBGaXhlZCwgQWJzb2x1dGVcbiAgICAgICAgQGVhY2ggJHBvc2l0aW9uIGluICRwcm90b3R5cGUtcG9zaXRpb24ge1xuICAgICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICAuI3skc2l6ZX0tcG9zaXRpb24tI3skcG9zaXRpb259IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oJHBvc2l0aW9uKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBQb3NpdGlvbjogRml4ZWQgVG9wLCBGaXhlZCBCb3R0b21cbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tcG9zaXRpb24tZml4ZWQtdG9wIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uLWZpeGVkLXRvcDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tcG9zaXRpb24tZml4ZWQtYm90dG9tIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uLWZpeGVkLWJvdHRvbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBwcm90b3R5cGUtc2l6aW5nXG4vLy8vXG5cbi8vLyBSZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBzcGFjaW5nIGNsYXNzZXMgKG1hcmdpbiBhbmQgcGFkZGluZylcbi8vLyBAdHlwZSBCb29sZWFuXG4kcHJvdG90eXBlLXNpemluZy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHMgIWRlZmF1bHQ7XG5cbi8vLyBNYXAgY29udGFpbmluZyBhbGwgdGhlIGBzaXppbmdgIGNsYXNzZXNcbi8vLyBAdHlwZSBNYXBcbiRwcm90b3R5cGUtc2l6aW5nOiAoXG4gIHdpZHRoLFxuICBoZWlnaHRcbikgIWRlZmF1bHQ7XG5cbi8vLyBNYXAgY29udGFpbmluZyBhbGwgdGhlIHNpemVzLlxuLy8vIEB0eXBlIE1hcFxuJHByb3RvdHlwZS1zaXplczogKFxuICAyNTogMjUlLFxuICA1MDogNTAlLFxuICA3NTogNzUlLFxuICAxMDA6IDEwMCVcbikgIWRlZmF1bHQ7XG5cbi8vLyBNYXggV2lkdGggMTAwIHV0aWxpdHkuXG5AbWl4aW4gbWF4LXdpZHRoLTEwMCB7XG4gIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4vLy8gTWF4IEhlaWdodCAxMDAgdXRpbGl0eS5cbkBtaXhpbiBtYXgtaGVpZ2h0LTEwMCB7XG4gIG1heC1oZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tcHJvdG90eXBlLXNpemluZyB7XG4gIC8vIEVsZW1lbnQgU2l6aW5nXG4gIEBlYWNoICRzaXppbmcgaW4gJHByb3RvdHlwZS1zaXppbmcge1xuICAgIEBlYWNoICRsZW5ndGgsICRwZXJjZW50YWdlIGluICRwcm90b3R5cGUtc2l6ZXMge1xuICAgICAgLiN7JHNpemluZ30tI3skbGVuZ3RofSB7XG4gICAgICAgICN7JHNpemluZ306ICRwZXJjZW50YWdlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTWF4IHdpZHRoICYgaGVpZ2h0XG4gIC5tYXgtd2lkdGgtMTAwIHtcbiAgICBAaW5jbHVkZSBtYXgtd2lkdGgtMTAwO1xuICB9XG4gIC5tYXgtaGVpZ2h0LTEwMCB7XG4gICAgQGluY2x1ZGUgbWF4LWhlaWdodC0xMDA7XG4gIH1cblxuICBAaWYgKCRwcm90b3R5cGUtc2l6aW5nLWJyZWFrcG9pbnRzKSB7XG4gICAgLy8gTG9vcCB0aHJvdWdoIFJlc3BvbnNpdmUgQnJlYWtwb2ludHNcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICBAZWFjaCAkc2l6aW5nIGluICRwcm90b3R5cGUtc2l6aW5nIHtcbiAgICAgICAgICAgIEBlYWNoICRsZW5ndGgsICRwZXJjZW50YWdlIGluICRwcm90b3R5cGUtc2l6ZXMge1xuICAgICAgICAgICAgICAuI3skc2l6ZX0tI3skc2l6aW5nfS0jeyRsZW5ndGh9IHtcbiAgICAgICAgICAgICAgICAjeyRzaXppbmd9OiAkcGVyY2VudGFnZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vIERlZmF1bHQgVmFyaWFibGVzXG5cbi8vIFNsaWNrIGljb24gZW50aXR5IGNvZGVzIG91dHB1dHMgdGhlIGZvbGxvd2luZ1xuLy8gXCJcXDIxOTBcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKGkFwiXG4vLyBcIlxcMjE5MlwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaSXCJcbi8vIFwiXFwyMDIyXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLigKJcIlxuXG4kc2xpY2stZm9udC1wYXRoOiBcIi4vZm9udHMvXCIgIWRlZmF1bHQ7XG4kc2xpY2stZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiICFkZWZhdWx0O1xuJHNsaWNrLWxvYWRlci1wYXRoOiBcIi4vXCIgIWRlZmF1bHQ7XG4kc2xpY2stYXJyb3ctY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiRzbGljay1kb3QtY29sb3I6ICNFOEU4RTggIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNvbG9yLWFjdGl2ZTogIzI1M0MzQSAhZGVmYXVsdDtcbiRzbGljay1wcmV2LWNoYXJhY3RlcjogXCJcXGU5MDJcIiAhZGVmYXVsdDtcbiRzbGljay1uZXh0LWNoYXJhY3RlcjogXCJcXGU5MDNcIiAhZGVmYXVsdDtcbiRzbGljay1kb3QtY2hhcmFjdGVyOiBcIlxcZTkxNFwiICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1zaXplOiAxM3B4ICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktZGVmYXVsdDogMSAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LW9uLWhvdmVyOiAxICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTogMC41ICFkZWZhdWx0O1xuXG5AZnVuY3Rpb24gc2xpY2staW1hZ2UtdXJsKCR1cmwpIHtcbiAgQGlmIGZ1bmN0aW9uLWV4aXN0cyhpbWFnZS11cmwpIHtcbiAgICBAcmV0dXJuIGltYWdlLXVybCgkdXJsKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiB1cmwoJHNsaWNrLWxvYWRlci1wYXRoICsgJHVybCk7XG4gIH1cbn1cblxuQGZ1bmN0aW9uIHNsaWNrLWZvbnQtdXJsKCR1cmwpIHtcbiAgQGlmIGZ1bmN0aW9uLWV4aXN0cyhmb250LXVybCkge1xuICAgIEByZXR1cm4gZm9udC11cmwoJHVybCk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gdXJsKCRzbGljay1mb250LXBhdGggKyAkdXJsKTtcbiAgfVxufVxuXG4vKiBTbGlkZXIgKi9cblxuLnNsaWNrLWxpc3Qge1xuICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAvL2JhY2tncm91bmQ6ICNmZmYgc2xpY2staW1hZ2UtdXJsKFwiLi4vaW1nL2xvYWRlci5zdmdcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gIH1cbn1cblxuLyogSWNvbnMgKi9cbkBpZiAkc2xpY2stZm9udC1mYW1pbHkgPT0gXCJzbGlja1wiIHtcbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90XCIpO1xuICAgIHNyYzogc2xpY2stZm9udC11cmwoXCJzbGljay5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2suc3ZnI3NsaWNrXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgfVxufVxuXG4vKiBBcnJvd3MgKi9cblxuLnNsaWNrLXByZXYsXG4uc2xpY2stbmV4dCB7XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiA2OHB4O1xuICB3aWR0aDogNDhweDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGZvbnQtc2l6ZTogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgLy9ib3JkZXI6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbiAgb3V0bGluZTogbm9uZTtcbiAgei1pbmRleDogMjtcbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgJjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktb24taG92ZXI7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG4gICYuc2xpY2stZGlzYWJsZWQ6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlO1xuICB9XG4gICY6YmVmb3JlIHtcbiAgICB0ZXh0LXNoYWRvdzogMHB4IDJweCByZ2JhKDAsIDUxLCAxMDIsIDAuNCk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcbiAgICBmb250LXNpemU6IDMuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJHNsaWNrLWFycm93LWNvbG9yO1xuICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LWRlZmF1bHQ7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgfVxufVxuXG4uc2xpY2stcHJldiB7XG4gIGxlZnQ6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7XG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29udGVudDogJHNsaWNrLXByZXYtY2hhcmFjdGVyO1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbnRlbnQ6ICRzbGljay1uZXh0LWNoYXJhY3RlcjtcbiAgICB9XG4gIH1cbn1cblxuLnNsaWNrLW5leHQge1xuICByaWdodDogMDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNHB4O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA0cHg7XG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogYXV0bztcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29udGVudDogJHNsaWNrLW5leHQtY2hhcmFjdGVyO1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbnRlbnQ6ICRzbGljay1wcmV2LWNoYXJhY3RlcjtcbiAgICB9XG4gIH1cbn1cblxuLyogRG90cyAqL1xuXG4uc2xpY2stZG90dGVkLnNsaWNrLXNsaWRlciB7XG4gIC8vbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLnNsaWNrLWRvdHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogLTI1cHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMTBweDtcbiAgICB3aWR0aDogMTBweDtcbiAgICBtYXJnaW46IDAgNXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJ1dHRvbiB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgbGluZS1oZWlnaHQ6IDBweDtcbiAgICAgIGZvbnQtc2l6ZTogMHB4O1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgY29udGVudDogJHNsaWNrLWRvdC1jaGFyYWN0ZXI7XG4gICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkc2xpY2stZm9udC1mYW1pbHk7XG4gICAgICAgIGZvbnQtc2l6ZTogJHNsaWNrLWRvdC1zaXplO1xuICAgICAgICBsaW5lLWhlaWdodDogMTBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogJHNsaWNrLWRvdC1jb2xvcjtcbiAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTtcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICB9XG4gICAgfVxuICAgICYuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgY29sb3I6ICRzbGljay1kb3QtY29sb3ItYWN0aXZlO1xuICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktZGVmYXVsdDtcbiAgICB9XG4gIH1cbn1cblxuLyogU2xpZGVyICovXG5cbi5zbGljay1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc2xpY2stbGlzdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgJi5kcmFnZ2luZyB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGN1cnNvcjogaGFuZDtcbiAgfVxufVxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc2xpY2stdHJhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG5cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuXG4gIC5zbGljay1sb2FkaW5nICYge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufVxuLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBbZGlyPVwicnRsXCJdICYge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICBpbWcge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAmLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgZGlzcGxheTogbm9uZTtcblxuICAmLmRyYWdnaW5nIGltZyB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAuc2xpY2staW5pdGlhbGl6ZWQgJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAuc2xpY2stdmVydGljYWwgJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB9XG59XG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8qXG49PSBtYWxpaHUganF1ZXJ5IGN1c3RvbSBzY3JvbGxiYXIgcGx1Z2luID09XG5QbHVnaW4gVVJJOiBodHRwOi8vbWFub3MubWFsaWh1LmdyL2pxdWVyeS1jdXN0b20tY29udGVudC1zY3JvbGxlclxuKi9cblxuXG5cbi8qXG5DT05URU5UUzogXG5cdDEuIEJBU0lDIFNUWUxFIC0gUGx1Z2luJ3MgYmFzaWMvZXNzZW50aWFsIENTUyBwcm9wZXJ0aWVzIChub3JtYWxseSwgc2hvdWxkIG5vdCBiZSBlZGl0ZWQpLiBcblx0Mi4gVkVSVElDQUwgU0NST0xMQkFSIC0gUG9zaXRpb25pbmcgYW5kIGRpbWVuc2lvbnMgb2YgdmVydGljYWwgc2Nyb2xsYmFyLiBcblx0My4gSE9SSVpPTlRBTCBTQ1JPTExCQVIgLSBQb3NpdGlvbmluZyBhbmQgZGltZW5zaW9ucyBvZiBob3Jpem9udGFsIHNjcm9sbGJhci5cblx0NC4gVkVSVElDQUwgQU5EIEhPUklaT05UQUwgU0NST0xMQkFSUyAtIFBvc2l0aW9uaW5nIGFuZCBkaW1lbnNpb25zIG9mIDItYXhpcyBzY3JvbGxiYXJzLiBcblx0NS4gVFJBTlNJVElPTlMgLSBDU1MzIHRyYW5zaXRpb25zIGZvciBob3ZlciBldmVudHMsIGF1dG8tZXhwYW5kZWQgYW5kIGF1dG8taGlkZGVuIHNjcm9sbGJhcnMuIFxuXHQ2LiBTQ1JPTExCQVIgQ09MT1JTLCBPUEFDSVRZIEFORCBCQUNLR1JPVU5EUyBcblx0XHQ2LjEgVEhFTUVTIC0gU2Nyb2xsYmFyIGNvbG9ycywgb3BhY2l0eSwgZGltZW5zaW9ucywgYmFja2dyb3VuZHMgZXRjLiB2aWEgcmVhZHktdG8tdXNlIHRoZW1lcy5cbiovXG5cblxuXG4vKiBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMS4gQkFTSUMgU1RZTEUgIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4ubUN1c3RvbVNjcm9sbGJhcnsgLW1zLXRvdWNoLWFjdGlvbjogcGluY2gtem9vbTsgdG91Y2gtYWN0aW9uOiBwaW5jaC16b29tOyAvKiBkaXJlY3QgcG9pbnRlciBldmVudHMgdG8ganMgKi8gfVxuLm1DdXN0b21TY3JvbGxiYXIubUNTX25vX3Njcm9sbGJhciwgLm1DdXN0b21TY3JvbGxiYXIubUNTX3RvdWNoX2FjdGlvbnsgLW1zLXRvdWNoLWFjdGlvbjogYXV0bzsgdG91Y2gtYWN0aW9uOiBhdXRvOyB9XG5cbi5tQ3VzdG9tU2Nyb2xsQm94eyAvKiBjb250YWlucyBwbHVnaW4ncyBtYXJrdXAgKi9cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgZGlyZWN0aW9uOiBsdHI7XG59XG5cbi5tQ1NCX2NvbnRhaW5lcnsgLyogY29udGFpbnMgdGhlIG9yaWdpbmFsIGNvbnRlbnQgKi9cbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuXG5cbi8qIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4yLiBWRVJUSUNBTCBTQ1JPTExCQVIgXG55LWF4aXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVyeyBtYXJnaW4tcmlnaHQ6IDMwcHg7IH1cblxuLm1DU0JfY29udGFpbmVyLm1DU19ub19zY3JvbGxiYXJfeS5tQ1NfeV9oaWRkZW57IG1hcmdpbi1yaWdodDogMDsgfSAvKiBub24tdmlzaWJsZSBzY3JvbGxiYXIgKi9cblxuLm1DUy1kaXItcnRsID4gLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVyeyAvKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG59XG5cbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lci5tQ1Nfbm9fc2Nyb2xsYmFyX3kubUNTX3lfaGlkZGVueyBtYXJnaW4tbGVmdDogMDsgfSAvKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cblxuLm1DU0Jfc2Nyb2xsVG9vbHN7IC8qIGNvbnRhaW5zIHNjcm9sbGJhciBtYXJrdXAgKGRyYWdnYWJsZSBlbGVtZW50LCBkcmFnZ2VyIHJhaWwsIGJ1dHRvbnMgZXRjLikgKi9cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbn1cblxuLm1DU0Jfb3V0c2lkZSArIC5tQ1NCX3Njcm9sbFRvb2xzeyByaWdodDogLTI2cHg7IH0gLyogc2Nyb2xsYmFyIHBvc2l0aW9uOiBvdXRzaWRlICovXG5cbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX2luc2lkZSA+IC5tQ1NCX3Njcm9sbFRvb2xzLCBcbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX291dHNpZGUgKyAubUNTQl9zY3JvbGxUb29sc3sgLyogUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbn1cblxuLm1DUy1kaXItcnRsID4gLm1DU0Jfb3V0c2lkZSArIC5tQ1NCX3Njcm9sbFRvb2xzeyBsZWZ0OiAtMjZweDsgfSAvKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKHNjcm9sbGJhciBwb3NpdGlvbjogb3V0c2lkZSkgKi9cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcnsgLyogY29udGFpbnMgdGhlIGRyYWdnYWJsZSBlbGVtZW50IGFuZCBkcmFnZ2VyIHJhaWwgbWFya3VwICovXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDsgXG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG4ubUNTQl9zY3JvbGxUb29scyBhICsgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcnsgbWFyZ2luOiAyMHB4IDA7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7XG4gICAgd2lkdGg6IDJweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxNnB4OyAtbW96LWJvcmRlci1yYWRpdXM6IDE2cHg7IGJvcmRlci1yYWRpdXM6IDE2cHg7XG59XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJ7IC8qIHRoZSBkcmFnZ2FibGUgZWxlbWVudCAqL1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDMwcHg7IC8qIG1pbmltdW0gZHJhZ2dlciBoZWlnaHQgKi9cbiAgICB6LWluZGV4OiAxO1xufVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyeyAvKiB0aGUgZHJhZ2dlciBlbGVtZW50ICovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiA0cHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTZweDsgLW1vei1ib3JkZXItcmFkaXVzOiAxNnB4OyBib3JkZXItcmFkaXVzOiAxNnB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyeyB3aWR0aDogMTJweDsgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi8gfVxuXG4ubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkICsgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWx7IHdpZHRoOiA4cHg7IC8qIGF1dG8tZXhwYW5kZWQgc2Nyb2xsYmFyICovIH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3due1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257IGJvdHRvbTogMDsgfVxuXG5cblxuLyogXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjMuIEhPUklaT05UQUwgU0NST0xMQkFSIFxueC1heGlzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbi5tQ1NCX2hvcml6b250YWwubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXJ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIC8vbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ubUNTQl9ob3Jpem9udGFsLm1DU0Jfb3V0c2lkZSA+IC5tQ1NCX2NvbnRhaW5lcnsgbWluLWhlaWdodDogMTAwJTsgfVxuXG4ubUNTQl9ob3Jpem9udGFsID4gLm1DU0JfY29udGFpbmVyLm1DU19ub19zY3JvbGxiYXJfeC5tQ1NfeF9oaWRkZW57IG1hcmdpbi1ib3R0b206IDA7IH0gLyogbm9uLXZpc2libGUgc2Nyb2xsYmFyICovXG5cbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgdG9wOiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xufVxuXG4ubUN1c3RvbVNjcm9sbEJveCArIC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCxcbi5tQ3VzdG9tU2Nyb2xsQm94ICsgLm1DU0Jfc2Nyb2xsVG9vbHMgKyAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWx7IGJvdHRvbTogLTI2cHg7IH0gLyogc2Nyb2xsYmFyIHBvc2l0aW9uOiBvdXRzaWRlICovXG5cbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCBhICsgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcnsgbWFyZ2luOiAwIDIwcHg7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlse1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNHB4O1xuICAgIG1hcmdpbjogNnB4IDA7XG59XG5cbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2Vye1xuICAgIHdpZHRoOiAzMHB4OyAvKiBtaW5pbXVtIGRyYWdnZXIgd2lkdGggKi9cbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbn1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgbWFyZ2luOiA2cHggYXV0bztcbn1cblxuLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcntcbiAgICBoZWlnaHQ6IDEycHg7IC8qIGF1dG8tZXhwYW5kZWQgc2Nyb2xsYmFyICovXG4gICAgbWFyZ2luOiAycHggYXV0bztcbn1cblxuLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkICsgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbHtcbiAgICBoZWlnaHQ6IDhweDsgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi9cbiAgICBtYXJnaW46IDRweCAwO1xufVxuXG4ubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfYnV0dG9uTGVmdCxcbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9idXR0b25SaWdodHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfYnV0dG9uTGVmdHsgbGVmdDogMDsgfVxuXG4ubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfYnV0dG9uUmlnaHR7IHJpZ2h0OiAwOyB9XG5cblxuXG4vKiBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuNC4gVkVSVElDQUwgQU5EIEhPUklaT05UQUwgU0NST0xMQkFSUyBcbnl4LWF4aXMgXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cbi5tQ1NCX2NvbnRhaW5lcl93cmFwcGVye1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyID4gLm1DU0JfY29udGFpbmVye1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94OyAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5tQ1NCX3ZlcnRpY2FsX2hvcml6b250YWwgPiAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FseyBib3R0b206IDIwcHg7IH1cblxuLm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbCA+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbHsgcmlnaHQ6IDIwcHg7IH1cblxuLyogbm9uLXZpc2libGUgaG9yaXpvbnRhbCBzY3JvbGxiYXIgKi9cbi5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyLm1DU19ub19zY3JvbGxiYXJfeC5tQ1NfeF9oaWRkZW4gKyAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FseyBib3R0b206IDA7IH1cblxuLyogbm9uLXZpc2libGUgdmVydGljYWwgc2Nyb2xsYmFyL1JUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xuLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbiArIC5tQ1NCX3Njcm9sbFRvb2xzIH4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLCBcbi5tQ1MtZGlyLXJ0bCA+IC5tQ3VzdG9tU2Nyb2xsQm94Lm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbC5tQ1NCX2luc2lkZSA+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbHsgcmlnaHQ6IDA7IH1cblxuLyogUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXG4ubUNTLWRpci1ydGwgPiAubUN1c3RvbVNjcm9sbEJveC5tQ1NCX3ZlcnRpY2FsX2hvcml6b250YWwubUNTQl9pbnNpZGUgPiAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWx7IGxlZnQ6IDIwcHg7IH1cblxuLyogbm9uLXZpc2libGUgc2Nyb2xsYmFyL1JUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xuLm1DUy1kaXItcnRsID4gLm1DdXN0b21TY3JvbGxCb3gubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbiArIC5tQ1NCX3Njcm9sbFRvb2xzIH4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFseyBsZWZ0OiAwOyB9XG5cbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyeyAvKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG59XG5cbi5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyLm1DU19ub19zY3JvbGxiYXJfeS5tQ1NfeV9oaWRkZW4gPiAubUNTQl9jb250YWluZXJ7IHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl94Lm1DU194X2hpZGRlbiA+IC5tQ1NCX2NvbnRhaW5lcnsgcGFkZGluZy1ib3R0b206IDA7IH1cblxuLm1DdXN0b21TY3JvbGxCb3gubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbntcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IC8qIG5vbi12aXNpYmxlIHNjcm9sbGJhciAqL1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vKiBub24tdmlzaWJsZSBob3Jpem9udGFsIHNjcm9sbGJhciAqL1xuLm1DdXN0b21TY3JvbGxCb3gubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl94Lm1DU194X2hpZGRlbnsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5cblxuLyogXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjUuIFRSQU5TSVRJT05TICBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuLm1DU0Jfc2Nyb2xsVG9vbHMsIFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCxcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24sXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0LFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHR7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDtcbn1cblxuLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJfYmFyLCAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqL1xuLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJSYWlse1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogd2lkdGggLjJzIGVhc2Utb3V0IC4ycywgaGVpZ2h0IC4ycyBlYXNlLW91dCAuMnMsIFxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0IC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1yaWdodCAuMnMgZWFzZS1vdXQgLjJzLCBcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wIC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1ib3R0b20gLjJzIGVhc2Utb3V0IC4ycyxcbiAgICAgICAgICAgICAgICBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7IFxuICAgIC1tb3otdHJhbnNpdGlvbjogd2lkdGggLjJzIGVhc2Utb3V0IC4ycywgaGVpZ2h0IC4ycyBlYXNlLW91dCAuMnMsIFxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0IC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1yaWdodCAuMnMgZWFzZS1vdXQgLjJzLCBcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wIC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1ib3R0b20gLjJzIGVhc2Utb3V0IC4ycyxcbiAgICAgICAgICAgICAgICBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7IFxuICAgIC1vLXRyYW5zaXRpb246IHdpZHRoIC4ycyBlYXNlLW91dCAuMnMsIGhlaWdodCAuMnMgZWFzZS1vdXQgLjJzLCBcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tcmlnaHQgLjJzIGVhc2Utb3V0IC4ycywgXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tYm90dG9tIC4ycyBlYXNlLW91dCAuMnMsXG4gICAgICAgICAgICAgICAgb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0OyBcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAuMnMgZWFzZS1vdXQgLjJzLCBoZWlnaHQgLjJzIGVhc2Utb3V0IC4ycywgXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLXJpZ2h0IC4ycyBlYXNlLW91dCAuMnMsIFxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3AgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLWJvdHRvbSAuMnMgZWFzZS1vdXQgLjJzLFxuICAgICAgICAgICAgICAgIG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDsgXG59XG5cblxuXG4vKiBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuNi4gU0NST0xMQkFSIENPTE9SUywgT1BBQ0lUWSBBTkQgQkFDS0dST1VORFMgIFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4vKiBcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjYuMSBUSEVNRVMgXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG4vKiBkZWZhdWx0IHRoZW1lIChcImxpZ2h0XCIpICovXG5cbi5tQ1NCX3Njcm9sbFRvb2xzeyBvcGFjaXR5OiAwLjc1OyBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjsgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTc1KVwiOyB9XG5cbi5tQ1MtYXV0b0hpZGUgPiAubUN1c3RvbVNjcm9sbEJveCA+IC5tQ1NCX3Njcm9sbFRvb2xzLFxuLm1DUy1hdXRvSGlkZSA+IC5tQ3VzdG9tU2Nyb2xsQm94IH4gLm1DU0Jfc2Nyb2xsVG9vbHN7IG9wYWNpdHk6IDA7IGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTApXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0wKVwiOyB9XG5cbi5tQ3VzdG9tU2Nyb2xsYmFyID4gLm1DdXN0b21TY3JvbGxCb3ggPiAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZyxcbi5tQ3VzdG9tU2Nyb2xsYmFyID4gLm1DdXN0b21TY3JvbGxCb3ggfiAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZyxcbi5tQ3VzdG9tU2Nyb2xsQm94OmhvdmVyID4gLm1DU0Jfc2Nyb2xsVG9vbHMsXG4ubUN1c3RvbVNjcm9sbEJveDpob3ZlciB+IC5tQ1NCX3Njcm9sbFRvb2xzLFxuLm1DUy1hdXRvSGlkZTpob3ZlciA+IC5tQ3VzdG9tU2Nyb2xsQm94ID4gLm1DU0Jfc2Nyb2xsVG9vbHMsXG4ubUNTLWF1dG9IaWRlOmhvdmVyID4gLm1DdXN0b21TY3JvbGxCb3ggfiAubUNTQl9zY3JvbGxUb29sc3sgb3BhY2l0eTogMTsgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MTAwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MTAwKVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlse1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC40KTtcbiAgICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT00MClcIjsgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTQwKVwiOyBcbn1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuNzUpO1xuICAgIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTc1KVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NzUpXCI7IFxufVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFye1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC44NSk7XG4gICAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9ODUpXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT04NSlcIjsgXG59XG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuOSk7XG4gICAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9OTApXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT05MClcIjsgXG59XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bixcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwobUNTQl9idXR0b25zLnBuZyk7IC8qIGNzcyBzcHJpdGVzICovXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBvcGFjaXR5OiAwLjQ7IGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTQwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NDApXCI7IFxufVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG4gICAgLyogXG4gICAgc3ByaXRlcyBsb2NhdGlvbnMgXG4gICAgbGlnaHQ6IDAgMCwgLTE2cHggMCwgLTMycHggMCwgLTQ4cHggMCwgMCAtNzJweCwgLTE2cHggLTcycHgsIC0zMnB4IC03MnB4XG4gICAgZGFyazogLTgwcHggMCwgLTk2cHggMCwgLTExMnB4IDAsIC0xMjhweCAwLCAtODBweCAtNzJweCwgLTk2cHggLTcycHgsIC0xMTJweCAtNzJweFxuICAgICovXG59XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjBweDtcbiAgICAvKiBcbiAgICBzcHJpdGVzIGxvY2F0aW9uc1xuICAgIGxpZ2h0OiAwIC0yMHB4LCAtMTZweCAtMjBweCwgLTMycHggLTIwcHgsIC00OHB4IC0yMHB4LCAwIC05MnB4LCAtMTZweCAtOTJweCwgLTMycHggLTkycHhcbiAgICBkYXJrOiAtODBweCAtMjBweCwgLTk2cHggLTIwcHgsIC0xMTJweCAtMjBweCwgLTEyOHB4IC0yMHB4LCAtODBweCAtOTJweCwgLTk2cHggLTkycHgsIC0xMTIgLTkycHhcbiAgICAqL1xufVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0e1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTQwcHg7XG4gICAgLyogXG4gICAgc3ByaXRlcyBsb2NhdGlvbnMgXG4gICAgbGlnaHQ6IDAgLTQwcHgsIC0yMHB4IC00MHB4LCAtNDBweCAtNDBweCwgLTYwcHggLTQwcHgsIDAgLTExMnB4LCAtMjBweCAtMTEycHgsIC00MHB4IC0xMTJweFxuICAgIGRhcms6IC04MHB4IC00MHB4LCAtMTAwcHggLTQwcHgsIC0xMjBweCAtNDBweCwgLTE0MHB4IC00MHB4LCAtODBweCAtMTEycHgsIC0xMDBweCAtMTEycHgsIC0xMjBweCAtMTEycHhcbiAgICAqL1xufVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC01NnB4O1xuICAgIC8qIFxuICAgIHNwcml0ZXMgbG9jYXRpb25zIFxuICAgIGxpZ2h0OiAwIC01NnB4LCAtMjBweCAtNTZweCwgLTQwcHggLTU2cHgsIC02MHB4IC01NnB4LCAwIC0xMjhweCwgLTIwcHggLTEyOHB4LCAtNDBweCAtMTI4cHhcbiAgICBkYXJrOiAtODBweCAtNTZweCwgLTEwMHB4IC01NnB4LCAtMTIwcHggLTU2cHgsIC0xNDBweCAtNTZweCwgLTgwcHggLTEyOHB4LCAtMTAwcHggLTEyOHB4LCAtMTIwcHggLTEyOHB4XG4gICAgKi9cbn1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXA6aG92ZXIsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duOmhvdmVyLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdDpob3Zlcixcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0OmhvdmVyeyBvcGFjaXR5OiAwLjc1OyBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjsgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTc1KVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwOmFjdGl2ZSxcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd246YWN0aXZlLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdDphY3RpdmUsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodDphY3RpdmV7IG9wYWNpdHk6IDAuOTsgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9OTApXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT05MClcIjsgfVxuXG5cbi8qIHRoZW1lOiBcImRhcmtcIiAqL1xuXG4ubUNTLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjE1KTsgfVxuXG4ubUNTLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuNzUpOyB9XG5cbi5tQ1MtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC44NSk7IH1cblxuLm1DUy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC45KTsgfVxuXG4ubUNTLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggMDsgfVxuXG4ubUNTLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3dueyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMjBweDsgfVxuXG4ubUNTLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtNDBweDsgfVxuXG4ubUNTLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTU2cHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cblxuLyogdGhlbWU6IFwibGlnaHQtMlwiLCBcImRhcmstMlwiICovXG5cbi5tQ1MtbGlnaHQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7XG4gICAgd2lkdGg6IDRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuMSk7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxcHg7IC1tb3otYm9yZGVyLXJhZGl1czogMXB4OyBib3JkZXItcmFkaXVzOiAxcHg7XG59XG5cbi5tQ1MtbGlnaHQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuICAgIHdpZHRoOiA0cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjc1KTtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDFweDsgLW1vei1ib3JkZXItcmFkaXVzOiAxcHg7IGJvcmRlci1yYWRpdXM6IDFweDtcbn1cblxuLm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLWRhcmstMi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNHB4O1xuICAgIG1hcmdpbjogNnB4IGF1dG87XG59XG5cbi5tQ1MtbGlnaHQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC44NSk7IH1cblxuLm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWxpZ2h0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC45KTsgfVxuXG4ubUNTLWxpZ2h0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggMDsgfVxuXG4ubUNTLWxpZ2h0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3due1x0YmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTIwcHg7IH1cblxuLm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdHtcdGJhY2tncm91bmQtcG9zaXRpb246IC00MHB4IC00MHB4OyB9XG5cbi5tQ1MtbGlnaHQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtNTZweDsgfVxuXG5cbi8qIHRoZW1lOiBcImRhcmstMlwiICovXG5cbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjEpO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMXB4OyAtbW96LWJvcmRlci1yYWRpdXM6IDFweDsgYm9yZGVyLXJhZGl1czogMXB4O1xufVxuXG4ubUNTLWRhcmstMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjc1KTtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDFweDsgLW1vei1ib3JkZXItcmFkaXVzOiAxcHg7IGJvcmRlci1yYWRpdXM6IDFweDtcbn1cblxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuODUpOyB9XG5cbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWRhcmstMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjkpOyB9XG5cbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAwOyB9XG5cbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bnsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC0yMHB4OyB9XG5cbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC00MHB4OyB9XG5cbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHR7XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTU2cHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cblxuLyogdGhlbWU6IFwibGlnaHQtdGhpY2tcIiwgXCJkYXJrLXRoaWNrXCIgKi9cblxuLm1DUy1saWdodC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlse1xuICAgIHdpZHRoOiA0cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjEpO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMnB4OyAtbW96LWJvcmRlci1yYWRpdXM6IDJweDsgYm9yZGVyLXJhZGl1czogMnB4O1xufVxuXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLWRhcmstdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuICAgIHdpZHRoOiA2cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjc1KTtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDJweDsgLW1vei1ib3JkZXItcmFkaXVzOiAycHg7IGJvcmRlci1yYWRpdXM6IDJweDtcbn1cblxuLm1DUy1saWdodC10aGljay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICBtYXJnaW46IDZweCAwO1xufVxuXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcntcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDZweDtcbiAgICBtYXJnaW46IDVweCBhdXRvO1xufVxuXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjg1KTsgfVxuXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuOSk7IH1cblxuLm1DUy1saWdodC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVweyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAwOyB9XG5cbi5tQ1MtbGlnaHQtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3due1x0YmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTIwcHg7IH1cblxuLm1DUy1saWdodC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnR7XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjBweCAtNDBweDsgfVxuXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHR7IGJhY2tncm91bmQtcG9zaXRpb246IC0yMHB4IC01NnB4OyB9XG5cblxuLyogdGhlbWU6IFwiZGFyay10aGlja1wiICovXG5cbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlse1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC4xKTtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDJweDsgLW1vei1ib3JkZXItcmFkaXVzOiAycHg7IGJvcmRlci1yYWRpdXM6IDJweDtcbn1cblxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuNzUpO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMnB4OyAtbW96LWJvcmRlci1yYWRpdXM6IDJweDsgYm9yZGVyLXJhZGl1czogMnB4O1xufVxuXG4ubUNTLWRhcmstdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuODUpOyB9XG5cbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuOSk7IH1cblxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXB7IGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IDA7IH1cblxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bnsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTIwcHg7IH1cblxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMHB4IC00MHB4OyB9XG5cbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0e1x0YmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMHB4IC01NnB4OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXG5cbi8qIHRoZW1lOiBcImxpZ2h0LXRoaW5cIiwgXCJkYXJrLXRoaW5cIiAqL1xuXG4ubUNTLWxpZ2h0LXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjEpOyB9XG5cbi5tQ1MtbGlnaHQtdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyeyB3aWR0aDogNHB4OyB9XG5cbi5tQ1MtbGlnaHQtdGhpbi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlseyB3aWR0aDogMTAwJTsgfVxuXG4ubUNTLWxpZ2h0LXRoaW4ubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgbWFyZ2luOiA2cHggYXV0bztcbn1cblxuXG4vKiB0aGVtZSBcImRhcmstdGhpblwiICovXG5cbi8vLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjE1KTsgfVxuXG4vLy5tQ1MtZGFyay10aGluLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjc1KTsgfVxuXG4ubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IFxuICAgIGJhY2tncm91bmQtY29sb3I6ICNDM0MzQzM7IFxufVxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gICAgLyogYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgKi9cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjdGQUZBO1xufVxuXG4ubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC44NSk7IH1cblxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtZGFyay10aGluLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuOSk7IH1cblxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcHtcdGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IDA7IH1cblxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3dueyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMjBweDsgfVxuXG4ubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnR7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC00MHB4OyB9XG5cbi5tQ1MtZGFyay10aGluLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHR7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC01NnB4OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXG5cbi8qIHRoZW1lIFwicm91bmRlZFwiLCBcInJvdW5kZWQtZGFya1wiLCBcInJvdW5kZWQtZG90c1wiLCBcInJvdW5kZWQtZG90cy1kYXJrXCIgKi9cblxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC4xNSk7IH1cblxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciwgXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIsIFxuLm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLCBcbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyeyBoZWlnaHQ6IDE0cHg7IH1cblxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuICAgIHdpZHRoOiAxNHB4O1xuICAgIG1hcmdpbjogMCAxcHg7XG59XG5cbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciwgXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciwgXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciwgXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyeyB3aWR0aDogMTRweDsgfVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcntcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgbWFyZ2luOiAxcHggMDtcbn1cblxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG4gICAgd2lkdGg6IDE2cHg7IC8qIGF1dG8tZXhwYW5kZWQgc2Nyb2xsYmFyICovXG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIG1hcmdpbjogLTFweCAwO1xufVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkICsgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkICsgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbHsgd2lkdGg6IDRweDsgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi8gfVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuICAgIGhlaWdodDogMTZweDsgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi9cbiAgICB3aWR0aDogMTZweDtcbiAgICBtYXJnaW46IDAgLTFweDtcbn1cblxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkICsgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCArIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbHtcbiAgICBoZWlnaHQ6IDRweDsgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi9cbiAgICBtYXJnaW46IDZweCAwO1xufVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNzJweDsgfVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3dueyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC05MnB4OyB9XG5cbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnR7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTExMnB4OyB9XG5cbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMjhweDsgfVxuXG5cbi8qIHRoZW1lIFwicm91bmRlZC1kYXJrXCIsIFwicm91bmRlZC1kb3RzLWRhcmtcIiAqL1xuXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC43NSk7IH1cblxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjE1KTsgfVxuXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC44NSk7IH1cblxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC45KTsgfVxuXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVweyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtNzJweDsgfVxuXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC05MnB4OyB9XG5cbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTExMnB4OyB9XG5cbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHR7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0xMjhweDsgfVxuXG5cbi8qIHRoZW1lIFwicm91bmRlZC1kb3RzXCIsIFwicm91bmRlZC1kb3RzLWRhcmtcIiAqL1xuXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCAubUNTQl9kcmFnZ2VyUmFpbHsgd2lkdGg6IDRweDsgfVxuXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWx7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xufVxuXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFnQUFBQUlDQVlBQUFERUQ3NkxBQUFBTkVsRVFWUVlWMk5rSUFBWWlWYncvLzkvWTZEaU0xQU5Kb3lNakdkQmJMZ0pRQVgva1UwREtnRExrYVFBdnhXNEhFdlFGd0NSY3hJSksxWHpuQUFBQUFCSlJVNUVya0pnZ2c9PVwiKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXk7XG4gICAgb3BhY2l0eTogMC4zO1xuICAgIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTMwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MzApXCI7IFxufVxuXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWx7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgbWFyZ2luOiA2cHggMDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbi5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC03MnB4OyB9XG5cbi5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bnsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTkycHg7IH1cblxuLm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjBweCAtMTEycHg7IH1cblxuLm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwcHggLTEyOHB4OyB9XG5cblxuLyogdGhlbWUgXCJyb3VuZGVkLWRvdHMtZGFya1wiICovXG5cbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUFnQUFBQUlDQVlBQUFERUQ3NkxBQUFBTEVsRVFWUVlWMk5rSUFBWVNWRmdERlI4QnFyQkJFaWZCYkdSVGZpUFpocFlqaVFGQkszQTZsNkN2Z0FBRTlrR0NkMW12Z0VBQUFBQVNVVk9SSzVDWUlJPVwiKTtcbn1cblxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVweyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtNzJweDsgfVxuXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bnsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTkycHg7IH1cblxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnR7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMDBweCAtMTEycHg7IH1cblxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTAwcHggLTEyOHB4OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXG5cbi8qIHRoZW1lIFwiM2RcIiwgXCIzZC1kYXJrXCIsIFwiM2QtdGhpY2tcIiwgXCIzZC10aGljay1kYXJrXCIgKi9cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDI1NSwyNTUsMjU1LDAuNSkgMCUsIHJnYmEoMjU1LDI1NSwyNTUsMCkgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGNvbG9yLXN0b3AoMCUscmdiYSgyNTUsMjU1LDI1NSwwLjUpKSwgY29sb3Itc3RvcCgxMDAlLHJnYmEoMjU1LDI1NSwyNTUsMCkpKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDI1NSwyNTUsMjU1LDAuNSkgMCUscmdiYSgyNTUsMjU1LDI1NSwwKSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgyNTUsMjU1LDI1NSwwLjUpIDAlLHJnYmEoMjU1LDI1NSwyNTUsMCkgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDI1NSwyNTUsMjU1LDAuNSkgMCUscmdiYSgyNTUsMjU1LDI1NSwwKSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LDI1NSwyNTUsMC41KSAwJSxyZ2JhKDI1NSwyNTUsMjU1LDApIDEwMCUpO1xufVxuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcntcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwyNTUsMjU1LDAuNSkgMCUsIHJnYmEoMjU1LDI1NSwyNTUsMCkgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSxyZ2JhKDI1NSwyNTUsMjU1LDAuNSkpLCBjb2xvci1zdG9wKDEwMCUscmdiYSgyNTUsMjU1LDI1NSwwKSkpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsMjU1LDI1NSwwLjUpIDAlLHJnYmEoMjU1LDI1NSwyNTUsMCkgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsMjU1LDI1NSwwLjUpIDAlLHJnYmEoMjU1LDI1NSwyNTUsMCkgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LDI1NSwyNTUsMC41KSAwJSxyZ2JhKDI1NSwyNTUsMjU1LDApIDEwMCUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjU1LDI1NSwyNTUsMC41KSAwJSxyZ2JhKDI1NSwyNTUsMjU1LDApIDEwMCUpO1xufVxuXG5cbi8qIHRoZW1lIFwiM2RcIiwgXCIzZC1kYXJrXCIgKi9cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsIC5tQ1NCX2RyYWdnZXIsIFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwgLm1DU0JfZHJhZ2dlcnsgaGVpZ2h0OiA3MHB4OyB9XG5cbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIsIFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyeyB3aWR0aDogNzBweDsgfVxuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMsIFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHN7XG4gICAgb3BhY2l0eTogMTtcbiAgICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0zMClcIjsgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTMwKVwiOyBcbn1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTZweDsgLW1vei1ib3JkZXItcmFkaXVzOiAxNnB4OyBib3JkZXItcmFkaXVzOiAxNnB4OyB9XG5cbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHtcbiAgICB3aWR0aDogOHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC4yKTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAxcHggMCAxcHggcmdiYSgwLDAsMCwwLjUpLCBpbnNldCAtMXB4IDAgMXB4IHJnYmEoMjU1LDI1NSwyNTUsMC4yKTtcbn1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFx0IFxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICM1NTU7IH1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcnsgd2lkdGg6IDhweDsgfVxuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlse1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogOHB4O1xuICAgIG1hcmdpbjogNHB4IDA7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsMC41KSwgaW5zZXQgMCAtMXB4IDFweCByZ2JhKDI1NSwyNTUsMjU1LDAuMik7XG59XG5cbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogOHB4O1xuICAgIG1hcmdpbjogNHB4IGF1dG87XG59XG5cbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTcycHg7IH1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC05MnB4OyB9XG5cbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtMTEycHg7IH1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtMTI4cHg7IH1cblxuXG4vKiB0aGVtZSBcIjNkLWRhcmtcIiAqL1xuXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMSk7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMXB4IDAgMXB4IHJnYmEoMCwwLDAsMC4xKTtcbn1cblxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbHsgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsMC4xKTsgfVxuXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC03MnB4OyB9XG5cbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtOTJweDsgfVxuXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTExMnB4OyB9XG5cbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0e1x0YmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC0xMjhweDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cblxuXG4vKiB0aGVtZTogXCIzZC10aGlja1wiLCBcIjNkLXRoaWNrLWRhcmtcIiAqL1xuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMsIFxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHN7XG4gICAgb3BhY2l0eTogMTtcbiAgICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0zMClcIjsgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTMwKVwiOyBcbn1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzLCBcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzLCBcbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyQ29udGFpbmVyLCBcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJDb250YWluZXJ7IC13ZWJraXQtYm9yZGVyLXJhZGl1czogN3B4OyAtbW96LWJvcmRlci1yYWRpdXM6IDdweDsgYm9yZGVyLXJhZGl1czogN3B4OyB9XG5cbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IC13ZWJraXQtYm9yZGVyLXJhZGl1czogNXB4OyAtbW96LWJvcmRlci1yYWRpdXM6IDVweDsgYm9yZGVyLXJhZGl1czogNXB4OyB9XG5cbi5tQ1NCX2luc2lkZSArIC5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCwgXG4ubUNTQl9pbnNpZGUgKyAubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbHsgcmlnaHQ6IDFweDsgfVxuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwsIFxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWx7IGJveC1zaGFkb3c6IGluc2V0IDFweCAwIDFweCByZ2JhKDAsMCwwLDAuMSksIGluc2V0IDAgMCAxNHB4IHJnYmEoMCwwLDAsMC41KTsgfVxuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCwgXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFse1xuICAgIGJvdHRvbTogMXB4O1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLDAuMSksIGluc2V0IDAgMCAxNHB4IHJnYmEoMCwwLDAsMC41KTtcbn1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcntcbiAgICBib3gtc2hhZG93OiBpbnNldCAxcHggMCAwIHJnYmEoMjU1LDI1NSwyNTUsMC40KTtcbiAgICB3aWR0aDogMTJweDtcbiAgICBtYXJnaW46IDJweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbn1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwwLjQpOyB9XG5cbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCAgXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjNTU1OyB9XG5cbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuICAgIGhlaWdodDogMTJweDtcbiAgICB3aWR0aDogYXV0bztcbn1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJDb250YWluZXJ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjA1KTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAxcHggMXB4IDE2cHggcmdiYSgwLDAsMCwwLjEpO1xufVxuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTcycHg7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC05MnB4OyB9XG5cbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtMTEycHg7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0e1x0YmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggLTEyOHB4OyB9XG5cblxuLyogdGhlbWU6IFwiM2QtdGhpY2stZGFya1wiICovXG5cbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzeyBib3gtc2hhZG93OiBpbnNldCAwIDAgMTRweCByZ2JhKDAsMCwwLDAuMik7IH1cblxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbHsgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsMC4xKSwgaW5zZXQgMCAwIDE0cHggcmdiYSgwLDAsMCwwLjIpOyB9XG5cbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJveC1zaGFkb3c6IGluc2V0IDFweCAwIDAgcmdiYSgyNTUsMjU1LDI1NSwwLjQpLCBpbnNldCAtMXB4IDAgMCByZ2JhKDAsMCwwLDAuMik7IH1cbiBcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcnsgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LDAuNCksIGluc2V0IDAgLTFweCAwIHJnYmEoMCwwLDAsMC4yKTsgfVxuXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCAgXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjNzc3OyB9XG5cbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJDb250YWluZXJ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjA1KTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAxcHggMXB4IDE2cHggcmdiYSgwLDAsMCwwLjEpO1xufVxuXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtNzJweDsgfVxuXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3dueyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTkycHg7IH1cblxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC0xMTJweDsgfVxuXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodHtcdGJhY2tncm91bmQtcG9zaXRpb246IC0xMjBweCAtMTI4cHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cblxuLyogdGhlbWU6IFwibWluaW1hbFwiLCBcIm1pbmltYWwtZGFya1wiICovXG5cbi5tQ1NCX291dHNpZGUgKyAubUNTLW1pbmltYWwubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCwgXG4ubUNTQl9vdXRzaWRlICsgLm1DUy1taW5pbWFsLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbHtcbiAgICByaWdodDogMDsgXG4gICAgbWFyZ2luOiAxMnB4IDA7IFxufVxuXG4ubUN1c3RvbVNjcm9sbEJveC5tQ1MtbWluaW1hbCArIC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCwgXG4ubUN1c3RvbVNjcm9sbEJveC5tQ1MtbWluaW1hbCArIC5tQ1NCX3Njcm9sbFRvb2xzICsgLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLCBcbi5tQ3VzdG9tU2Nyb2xsQm94Lm1DUy1taW5pbWFsLWRhcmsgKyAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwsIFxuLm1DdXN0b21TY3JvbGxCb3gubUNTLW1pbmltYWwtZGFyayArIC5tQ1NCX3Njcm9sbFRvb2xzICsgLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFse1xuICAgIGJvdHRvbTogMDsgXG4gICAgbWFyZ2luOiAwIDEycHg7IFxufVxuXG4vKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX291dHNpZGUgKyAubUNTLW1pbmltYWwubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCwgXG4ubUNTLWRpci1ydGwgPiAubUNTQl9vdXRzaWRlICsgLm1DUy1taW5pbWFsLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbHtcbiAgICBsZWZ0OiAwOyBcbiAgICByaWdodDogYXV0bztcbn1cblxuLm1DUy1taW5pbWFsLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1taW5pbWFsLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHsgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLm1DUy1taW5pbWFsLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwgLm1DU0JfZHJhZ2dlciwgXG4ubUNTLW1pbmltYWwtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsIC5tQ1NCX2RyYWdnZXJ7IGhlaWdodDogNTBweDsgfVxuXG4ubUNTLW1pbmltYWwubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIsIFxuLm1DUy1taW5pbWFsLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJ7IHdpZHRoOiA1MHB4OyB9XG5cbi5tQ1MtbWluaW1hbC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjIpO1xuICAgIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTIwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MjApXCI7IFxufVxuXG4ubUNTLW1pbmltYWwubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtbWluaW1hbC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhcntcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuNSk7XG4gICAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NTApXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT01MClcIjsgXG59XG5cblxuLyogdGhlbWU6IFwibWluaW1hbC1kYXJrXCIgKi9cblxuLm1DUy1taW5pbWFsLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC4yKTtcbiAgICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0yMClcIjsgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTIwKVwiOyBcbn1cblxuLm1DUy1taW5pbWFsLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtbWluaW1hbC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFye1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC41KTtcbiAgICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT01MClcIjsgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTUwKVwiOyBcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cblxuLyogdGhlbWUgXCJsaWdodC0zXCIsIFwiZGFyay0zXCIgKi9cblxuLm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHtcbiAgICB3aWR0aDogNnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC4yKTtcbn1cblxuLm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IHdpZHRoOiA2cHg7IH1cblxuLm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlse1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNnB4O1xuICAgIG1hcmdpbjogNXB4IDA7XG59XG5cbi5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlse1xuICAgIHdpZHRoOiAxMnB4O1xufVxuXG4ubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkICsgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlse1xuICAgIGhlaWdodDogMTJweDtcbiAgICBtYXJnaW46IDJweCAwO1xufVxuXG4ubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTcycHg7IH1cblxuLm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bnsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTkycHg7IH1cblxuLm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggLTExMnB4OyB9XG5cbi5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtMTI4cHg7IH1cblxuXG4vKiB0aGVtZSBcImRhcmstM1wiICovXG5cbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjc1KTsgfVxuXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC44NSk7IH1cblxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuOSk7IH1cblxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjEpOyB9XG5cbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtNzJweDsgfVxuXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtOTJweDsgfVxuXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnR7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjBweCAtMTEycHg7IH1cblxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodHtcdGJhY2tncm91bmQtcG9zaXRpb246IC0xMjBweCAtMTI4cHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cblxuLyogdGhlbWUgXCJpbnNldFwiLCBcImluc2V0LWRhcmtcIiwgXCJpbnNldC0yXCIsIFwiaW5zZXQtMi1kYXJrXCIsIFwiaW5zZXQtM1wiLCBcImluc2V0LTMtZGFya1wiICovXG5cbi5tQ1MtaW5zZXQubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLWluc2V0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7XG4gICAgd2lkdGg6IDEycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjIpO1xufVxuXG4ubUNTLWluc2V0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtaW5zZXQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyeyBcbiAgICB3aWR0aDogNnB4O1xuICAgIG1hcmdpbjogM3B4IDVweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbn1cblxuLm1DUy1pbnNldC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1pbnNldC0yLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcntcbiAgICBoZWlnaHQ6IDZweDtcbiAgICBtYXJnaW46IDVweCAzcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbn1cblxuLm1DUy1pbnNldC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1pbnNldC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLWluc2V0LTIubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLCBcbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEycHg7XG4gICAgbWFyZ2luOiAycHggMDtcbn1cblxuLm1DUy1pbnNldC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLCBcbi5tQ1MtaW5zZXQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLCBcbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVweyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtNzJweDsgfVxuXG4ubUNTLWluc2V0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biwgXG4ubUNTLWluc2V0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duLCBcbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC05MnB4OyB9XG5cbi5tQ1MtaW5zZXQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0LCBcbi5tQ1MtaW5zZXQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQsIFxuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggLTExMnB4OyB9XG5cbi5tQ1MtaW5zZXQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCwgXG4ubUNTLWluc2V0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCwgXG4ubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggLTEyOHB4OyB9XG5cblxuLyogdGhlbWUgXCJpbnNldC1kYXJrXCIsIFwiaW5zZXQtMi1kYXJrXCIsIFwiaW5zZXQtMy1kYXJrXCIgKi9cblxuLm1DUy1pbnNldC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuNzUpOyB9XG5cbi5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyLCBcbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjg1KTsgfVxuXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciwgXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIsIFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuOSk7IH1cblxuLm1DUy1pbnNldC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsIFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlseyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMSk7IH1cblxuLm1DUy1pbnNldC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAsIFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCwgXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVweyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTcycHg7IH1cblxuLm1DUy1pbnNldC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biwgXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24sIFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3dueyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTkycHg7IH1cblxuLm1DUy1pbnNldC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCwgXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQsIFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTExMnB4OyB9XG5cbi5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0LCBcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQsIFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodHtcdGJhY2tncm91bmQtcG9zaXRpb246IC0xMjBweCAtMTI4cHg7IH1cblxuXG4vKiB0aGVtZSBcImluc2V0LTJcIiwgXCJpbnNldC0yLWRhcmtcIiAqL1xuXG4ubUNTLWluc2V0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCwgXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlse1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjIpO1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDsgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94OyBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlseyBib3JkZXItY29sb3I6ICMwMDA7IGJvcmRlci1jb2xvcjogcmdiYSgwLDAsMCwwLjIpOyB9XG5cblxuLyogdGhlbWUgXCJpbnNldC0zXCIsIFwiaW5zZXQtMy1kYXJrXCIgKi9cblxuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC42KTsgfVxuXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlseyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuNik7IH1cblxuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjc1KTsgfVxuXG4ubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuODUpOyB9XG5cbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuOSk7IH1cblxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuNzUpOyB9XG5cbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjg1KTsgfVxuXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC45KTsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovIiwiLyoqXG4gKiBPd2wgQ2Fyb3VzZWwgdjIuMy40XG4gKiBDb3B5cmlnaHQgMjAxMy0yMDE4IERhdmlkIERldXRzY2hcbiAqIExpY2Vuc2VkIHVuZGVyOiBTRUUgTElDRU5TRSBJTiBodHRwczovL2dpdGh1Yi5jb20vT3dsQ2Fyb3VzZWwyL093bENhcm91c2VsMi9ibG9iL21hc3Rlci9MSUNFTlNFXG4gKi9cbiAub3dsLWNhcm91c2VsLC5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtey13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudDtwb3NpdGlvbjpyZWxhdGl2ZX0ub3dsLWNhcm91c2Vse2Rpc3BsYXk6bm9uZTt3aWR0aDoxMDAlO3otaW5kZXg6MX0ub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2V7cG9zaXRpb246cmVsYXRpdmU7LW1zLXRvdWNoLWFjdGlvbjpwYW4tWTt0b3VjaC1hY3Rpb246bWFuaXB1bGF0aW9uOy1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTpoaWRkZW59Lm93bC1jYXJvdXNlbCAub3dsLXN0YWdlOmFmdGVye2NvbnRlbnQ6XCIuXCI7ZGlzcGxheTpibG9jaztjbGVhcjpib3RoO3Zpc2liaWxpdHk6aGlkZGVuO2xpbmUtaGVpZ2h0OjA7aGVpZ2h0OjB9Lm93bC1jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVye3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbjstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCl9Lm93bC1jYXJvdXNlbCAub3dsLWl0ZW0sLm93bC1jYXJvdXNlbCAub3dsLXdyYXBwZXJ7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjstbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6aGlkZGVuOy1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUzZCgwLDAsMCk7LW1vei10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApfS5vd2wtY2Fyb3VzZWwgLm93bC1pdGVte21pbi1oZWlnaHQ6MXB4O2Zsb2F0OmxlZnQ7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjstd2Via2l0LXRvdWNoLWNhbGxvdXQ6bm9uZX0ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSBpbWd7ZGlzcGxheTpibG9jazt3aWR0aDoxMDAlfS5vd2wtY2Fyb3VzZWwgLm93bC1kb3RzLmRpc2FibGVkLC5vd2wtY2Fyb3VzZWwgLm93bC1uYXYuZGlzYWJsZWR7ZGlzcGxheTpub25lfS5uby1qcyAub3dsLWNhcm91c2VsLC5vd2wtY2Fyb3VzZWwub3dsLWxvYWRlZHtkaXNwbGF5OmJsb2NrfS5vd2wtY2Fyb3VzZWwgLm93bC1kb3QsLm93bC1jYXJvdXNlbCAub3dsLW5hdiAub3dsLW5leHQsLm93bC1jYXJvdXNlbCAub3dsLW5hdiAub3dsLXByZXZ7Y3Vyc29yOnBvaW50ZXI7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1raHRtbC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfS5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgYnV0dG9uLm93bC1uZXh0LC5vd2wtY2Fyb3VzZWwgLm93bC1uYXYgYnV0dG9uLm93bC1wcmV2LC5vd2wtY2Fyb3VzZWwgYnV0dG9uLm93bC1kb3R7YmFja2dyb3VuZDowIDA7Y29sb3I6aW5oZXJpdDtib3JkZXI6bm9uZTtwYWRkaW5nOjAhaW1wb3J0YW50O2ZvbnQ6aW5oZXJpdH0ub3dsLWNhcm91c2VsLm93bC1sb2FkaW5ne29wYWNpdHk6MDtkaXNwbGF5OmJsb2NrfS5vd2wtY2Fyb3VzZWwub3dsLWhpZGRlbntvcGFjaXR5OjB9Lm93bC1jYXJvdXNlbC5vd2wtcmVmcmVzaCAub3dsLWl0ZW17dmlzaWJpbGl0eTpoaWRkZW59Lm93bC1jYXJvdXNlbC5vd2wtZHJhZyAub3dsLWl0ZW17LW1zLXRvdWNoLWFjdGlvbjpwYW4teTt0b3VjaC1hY3Rpb246cGFuLXk7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lOy1tb3otdXNlci1zZWxlY3Q6bm9uZTstbXMtdXNlci1zZWxlY3Q6bm9uZTt1c2VyLXNlbGVjdDpub25lfS5vd2wtY2Fyb3VzZWwub3dsLWdyYWJ7Y3Vyc29yOm1vdmU7Y3Vyc29yOmdyYWJ9Lm93bC1jYXJvdXNlbC5vd2wtcnRse2RpcmVjdGlvbjpydGx9Lm93bC1jYXJvdXNlbC5vd2wtcnRsIC5vd2wtaXRlbXtmbG9hdDpyaWdodH0ub3dsLWNhcm91c2VsIC5hbmltYXRlZHthbmltYXRpb24tZHVyYXRpb246MXM7YW5pbWF0aW9uLWZpbGwtbW9kZTpib3RofS5vd2wtY2Fyb3VzZWwgLm93bC1hbmltYXRlZC1pbnt6LWluZGV4OjB9Lm93bC1jYXJvdXNlbCAub3dsLWFuaW1hdGVkLW91dHt6LWluZGV4OjF9Lm93bC1jYXJvdXNlbCAuZmFkZU91dHthbmltYXRpb24tbmFtZTpmYWRlT3V0fUBrZXlmcmFtZXMgZmFkZU91dHswJXtvcGFjaXR5OjF9MTAwJXtvcGFjaXR5OjB9fS5vd2wtaGVpZ2h0e3RyYW5zaXRpb246aGVpZ2h0IC41cyBlYXNlLWluLW91dH0ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenl7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAuNHMgZWFzZX0ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenk6bm90KFtzcmNdKSwub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenlbc3JjXj1cIlwiXXttYXgtaGVpZ2h0OjB9Lm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nLm93bC1sYXp5e3RyYW5zZm9ybS1zdHlsZTpwcmVzZXJ2ZS0zZH0ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8td3JhcHBlcntwb3NpdGlvbjpyZWxhdGl2ZTtoZWlnaHQ6MTAwJTtiYWNrZ3JvdW5kOiMwMDB9Lm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXktaWNvbntwb3NpdGlvbjphYnNvbHV0ZTtoZWlnaHQ6ODBweDt3aWR0aDo4MHB4O2xlZnQ6NTAlO3RvcDo1MCU7bWFyZ2luLWxlZnQ6LTQwcHg7bWFyZ2luLXRvcDotNDBweDtiYWNrZ3JvdW5kOnVybChvd2wudmlkZW8ucGxheS5wbmcpIG5vLXJlcGVhdDtjdXJzb3I6cG9pbnRlcjt6LWluZGV4OjE7LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OmhpZGRlbjt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMXMgZWFzZX0ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheS1pY29uOmhvdmVyey1tcy10cmFuc2Zvcm06c2NhbGUoMS4zLDEuMyk7dHJhbnNmb3JtOnNjYWxlKDEuMywxLjMpfS5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5aW5nIC5vd2wtdmlkZW8tcGxheS1pY29uLC5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5aW5nIC5vd2wtdmlkZW8tdG57ZGlzcGxheTpub25lfS5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby10bntvcGFjaXR5OjA7aGVpZ2h0OjEwMCU7YmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXIgY2VudGVyO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXNpemU6Y29udGFpbjt0cmFuc2l0aW9uOm9wYWNpdHkgLjRzIGVhc2V9Lm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLWZyYW1le3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTtoZWlnaHQ6MTAwJTt3aWR0aDoxMDAlfSIsIi8qKlxuICogT3dsIENhcm91c2VsIHYyLjMuNFxuICogQ29weXJpZ2h0IDIwMTMtMjAxOCBEYXZpZCBEZXV0c2NoXG4gKiBMaWNlbnNlZCB1bmRlcjogU0VFIExJQ0VOU0UgSU4gaHR0cHM6Ly9naXRodWIuY29tL093bENhcm91c2VsMi9Pd2xDYXJvdXNlbDIvYmxvYi9tYXN0ZXIvTElDRU5TRVxuICovXG4gLm93bC10aGVtZSAub3dsLWRvdHMsLm93bC10aGVtZSAub3dsLW5hdnt0ZXh0LWFsaWduOmNlbnRlcjstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnR9Lm93bC10aGVtZSAub3dsLW5hdnttYXJnaW4tdG9wOjEwcHh9Lm93bC10aGVtZSAub3dsLW5hdiBbY2xhc3MqPW93bC1de2NvbG9yOiNGRkY7Zm9udC1zaXplOjE0cHg7bWFyZ2luOjVweDtwYWRkaW5nOjRweCA3cHg7YmFja2dyb3VuZDojRDZENkQ2O2Rpc3BsYXk6aW5saW5lLWJsb2NrO2N1cnNvcjpwb2ludGVyO2JvcmRlci1yYWRpdXM6M3B4fS5vd2wtdGhlbWUgLm93bC1uYXYgW2NsYXNzKj1vd2wtXTpob3ZlcntiYWNrZ3JvdW5kOiM4Njk3OTE7Y29sb3I6I0ZGRjt0ZXh0LWRlY29yYXRpb246bm9uZX0ub3dsLXRoZW1lIC5vd2wtbmF2IC5kaXNhYmxlZHtvcGFjaXR5Oi41O2N1cnNvcjpkZWZhdWx0fS5vd2wtdGhlbWUgLm93bC1uYXYuZGlzYWJsZWQrLm93bC1kb3Rze21hcmdpbi10b3A6MTBweH0ub3dsLXRoZW1lIC5vd2wtZG90cyAub3dsLWRvdHtkaXNwbGF5OmlubGluZS1ibG9jazt6b29tOjF9Lm93bC10aGVtZSAub3dsLWRvdHMgLm93bC1kb3Qgc3Bhbnt3aWR0aDoxMHB4O2hlaWdodDoxMHB4O21hcmdpbjo1cHggN3B4O2JhY2tncm91bmQ6I0Q2RDZENjtkaXNwbGF5OmJsb2NrOy13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTp2aXNpYmxlO3RyYW5zaXRpb246b3BhY2l0eSAuMnMgZWFzZTtib3JkZXItcmFkaXVzOjMwcHh9Lm93bC10aGVtZSAub3dsLWRvdHMgLm93bC1kb3QuYWN0aXZlIHNwYW4sLm93bC10aGVtZSAub3dsLWRvdHMgLm93bC1kb3Q6aG92ZXIgc3BhbntiYWNrZ3JvdW5kOiM4Njk3OTF9IiwiLypcbiAqIFNtYXJUaWNrZXIgVmVyc2lvbiAxLjVcbiAqIGh0dHA6Ly9wb3dlcnVwLmlyL3Byb2plY3RzL3NtYXJ0aWNrZXJcbiAqIENvcHkjeyRvcHBvc2l0ZS1kaXJlY3Rpb259IChjKSAyMDE0IE1lZ2hkYWQgSGFkaWRpXG4gKi9cbiAuc21hcnRpY2tlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8vYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICB9XG4gIFxuICAuYm94IHtcbiAgICBtaW4taGVpZ2h0OiAzMHB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cbiAgXG4gIC5ib3JkZXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIH1cbiAgXG4gIC5yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICB9XG4gIFxuICAuc2hhZG93IHtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDVweCAjOTk5O1xuICB9XG4gIFxuICAuc2l6ZTEge1xuICAgIGhlaWdodDogMzBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG4gIFxuICAuc21hcnRpY2tlciAuc2VjMSwgLnNtYXJ0aWNrZXIgLnNlYzEtMiwgLnNtYXJ0aWNrZXIgLnNlYzIsIC5zbWFydGlja2VyIC5zZWMzLCAuc21hcnRpY2tlciAuc2VjNCwgLnNtYXJ0aWNrZXIgLnNlYzUsIC5zbWFydGlja2VyIC5zZWM2LCAuc21hcnRpY2tlciAuc2VjNyB7XG4gICAgZmxvYXQ6ICN7JGRlZmF1bHQtZGlyZWN0aW9ufTtcbiAgfVxuICBcbiAgLnNtYXJ0aWNrZXIgLnNlYzEge1xuICAgIG1pbi13aWR0aDogMTAlO1xuICB9XG4gIFxuICAuc21hcnRpY2tlciAuc2VjMS0yIHtcbiAgICAvL21pbi13aWR0aDogMTAlO1xuICB9XG4gIFxuICAuc21hcnRpY2tlciAuc2VjMiB7XG4gICAgbWluLXdpZHRoOiAyMCU7XG4gIH1cbiAgXG4gIC5zbWFydGlja2VyIC5zZWMzIHtcbiAgICBtaW4td2lkdGg6IDMzLjMzMyU7XG4gIH1cbiAgXG4gIC5zbWFydGlja2VyIC5zZWM0IHtcbiAgICBtaW4td2lkdGg6IDI1JTtcbiAgfVxuICBcbiAgLnNtYXJ0aWNrZXIgLnNlYzUge1xuICAgIG1pbi13aWR0aDogNTAlO1xuICB9XG4gIFxuICAuc21hcnRpY2tlciAuc2VjNiB7XG4gICAgbWluLXdpZHRoOiA2MCU7XG4gIH1cbiAgXG4gIC5zbWFydGlja2VyIC5zZWM3IHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgXG4gIC5zbWFydGlja2VyIC5uZXdzaG9sZGVyLCAucy1ydGwuc21hcnRpY2tlciAubmV3c2hvbGRlciB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgXG4gIC5zbWFydGlja2VyIHVsIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG4gIFxuICAuc21hcnRpY2tlciAuc21hcnRpY2tlci1jYXRzLCAuc21hcnRpY2tlci1jYXRzIC5jYXRsaXN0LCAuc21hcnRpY2tlciAuc21hcnRpY2tlci1jYXRlZ29yeSwgLnNtYXJ0aWNrZXIgLnNtYXJ0aWNrZXItbmV3cyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgXG4gIC5zbWFydGlja2VyIC5zbWFydGlja2VyLWNhdHMsIC5zbWFydGlja2VyIC5zbWFydGlja2VyLWNhdGVnb3J5IHtcbiAgICB0ZXh0LWFsaWduOiAjeyRkZWZhdWx0LWRpcmVjdGlvbn07XG4gIH1cbiAgXG4gIC5zbWFydGlja2VyIGxpIHtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIH1cbiAgXG4gIC5zbWFydGlja2VyIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICBcbiAgLnNtYXJ0aWNrZXIgLnNtYXJ0aWNrZXItbmV3cyB7XG4gICAgdGV4dC1hbGlnbjogI3skZGVmYXVsdC1kaXJlY3Rpb259O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICBcbiAgLnNtYXJ0aWNrZXIgLnNtYXJ0aWNrZXItbmV3cyB1bCB7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIFxuICAuc21hcnRpY2tlciAuc21hcnRpY2tlci1uZXdzIHVsIGxpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdG9wOiAwcHg7XG4gICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiBhdXRvO1xuICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IGF1dG87XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuICBcbiAgLnNtYXJ0aWNrZXIgLnNtYXJ0aWNrZXItbmV3cyB1bCBsaSBhIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG4gIFxuICAuc21hcnRpY2tlci1jYXRlZ29yeSBhIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIFxuICAuY292ZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwcHg7XG4gICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwcHg7XG4gICAgei1pbmRleDogMjtcbiAgICBmbG9hdDogI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTtcbiAgfVxuICBcbiAgLmx0ciAuZmxhc2hlciB7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDE1cHg7XG4gICAgZmxvYXQ6ICN7JGRlZmF1bHQtZGlyZWN0aW9ufTtcbiAgfVxuICBcbiAgLnJ0bCAuZmxhc2hlciB7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA1cHg7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICBmbG9hdDogI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTtcbiAgfVxuICBcbiAgLnNtYXJ0LWNvbnRyb2xsZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwcHg7XG4gICAgdG9wOiAwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHotaW5kZXg6IDM7XG4gICAgZGlzcGxheTogbm9uZTsgLy9oaWRlIGNvbnRyb2xsZXJcbiAgfVxuICBcbiAgLnMtcnRsIC5zbWFydC1jb250cm9sbGVyIHtcbiAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDBweDtcbiAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBhdXRvO1xuICB9XG4gIFxuICAuc21hcnRpY2tlci1uZXdzIGEge1xuICAgIGNvbG9yOiAjNjY2OyBcbiAgICBmb250LXNpemU6IDEzcHg7XG4gIH1cbiAgXG4gIC5zbWFydGlja2VyLWNhdHMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kOiAjOTk5O1xuICB9XG4gIFxuICAuc21hcnRpY2tlci1jYXRzIGEge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgfVxuICBcbiAgLnNtYXJ0aWNrZXItY2F0ZWdvcnkgYSB7XG4gICAgY29sb3I6ICM5OTk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG4gIFxuICAvKiAtLS0tLS0tLS0tIFRoZW1lIDEgLS0tLS0tLS0tLS0gKi9cbiAgLnRoZW1lMSB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgfVxuICBcbiAgLnRoZW1lMSAuc21hcnRpY2tlci1jYXRzIC4jeyRkZWZhdWx0LWRpcmVjdGlvbn0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDBweDtcbiAgICAvL2JhY2tncm91bmQ6IHVybCgnLi4vaW1nL3NtYXJ0aWNrZXIvI3skZGVmYXVsdC1kaXJlY3Rpb259LWZsYy13LnBuZycpIG5vLXJlcGVhdCAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259IGNlbnRlcjtcbiAgICB3aWR0aDogMjAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuICBcbiAgLnRoZW1lMSAuc21hcnRpY2tlci1jYXRzIC4jeyRvcHBvc2l0ZS1kaXJlY3Rpb259IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMHB4O1xuICAgIHRvcDogMHB4O1xuICAgIHotaW5kZXg6IDE7XG4gICAgLy9iYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9zbWFydGlja2VyLyN7JG9wcG9zaXRlLWRpcmVjdGlvbn0tZmxjLXcucG5nJykgbm8tcmVwZWF0ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn0gY2VudGVyO1xuICAgIHdpZHRoOiAyMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG4gIFxuICAubm8tY2F0ZWdvcnkgLnNtYXJ0aWNrZXItY2F0cyAuI3skZGVmYXVsdC1kaXJlY3Rpb259IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIFxuICAudGhlbWUxIC5mbGFzaGVyIHtcbiAgICBjb2xvcjogIzY2NjtcbiAgfVxuICBcbiAgLnNtYXJ0aWNrZXItY2F0cyBsaSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgXG4gIC50aGVtZTEgLnNtYXJ0aWNrZXItY2F0cyB1bCBhIGltZyB7XG4gICAgbWFyZ2luOiAwIDVweCAwIDIwcHg7XG4gIH1cbiAgXG4gIC8qIC0tLS0tLS0tLS0tLS0gVGhlbWUgMiAtLS0tLS0tLS0tLS0gKi9cbiAgLnRoZW1lMiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgXG4gIC50aGVtZTIgLnNtYXJ0aWNrZXItbmV3cyBhIHtcbiAgICBjb2xvcjogIzFhMWExYTtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cbiAgXG4gIC50aGVtZTIgLnNtYXJ0aWNrZXItY2F0cyB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDE2cHg7XG4gICAgJjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiAnfCc7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDhweDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgbWFyZ2luOiBhdXRvIGF1dG87XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgfVxuICBcbiAgLnRoZW1lMiAuc21hcnRpY2tlci1jYXRzIC4jeyRkZWZhdWx0LWRpcmVjdGlvbn0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDBweDtcbiAgICAvL2JhY2tncm91bmQ6IHVybCgnLi4vaW1nL3NtYXJ0aWNrZXIvI3skZGVmYXVsdC1kaXJlY3Rpb259LWZsYy1iLnBuZycpIG5vLXJlcGVhdCAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259IGNlbnRlcjtcbiAgICB3aWR0aDogMjAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuICBcbiAgLnRoZW1lMiAuc21hcnRpY2tlci1jYXRzIC4jeyRvcHBvc2l0ZS1kaXJlY3Rpb259IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMHB4O1xuICAgIHRvcDogMHB4O1xuICAgIHotaW5kZXg6IDE7XG4gICAgLy9iYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9zbWFydGlja2VyLyN7JG9wcG9zaXRlLWRpcmVjdGlvbn0tZmxjLWIucG5nJykgbm8tcmVwZWF0ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn0gY2VudGVyO1xuICAgIC8vYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvc21hcnRpY2tlci8jeyRvcHBvc2l0ZS1kaXJlY3Rpb259LWZsYy13LnBuZycpIG5vLXJlcGVhdCAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259IGNlbnRlcjtcbiAgICB3aWR0aDogMjAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIFxuICAubm8tY2F0ZWdvcnkgLnNtYXJ0aWNrZXItY2F0cyAuI3skZGVmYXVsdC1kaXJlY3Rpb259IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIFxuICAudGhlbWUyIC5zbWFydGlja2VyLWNhdHMgdWwgYSB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gIFxuICAudGhlbWUyIC5zbWFydGlja2VyLWNhdGVnb3J5IGEge1xuICAgIGNvbG9yOiAjNjY2NjY2O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICBcbiAgLnRoZW1lMiAuZmxhc2hlciB7XG4gICAgY29sb3I6ICM2YzZjNmM7XG4gIH1cbiAgXG4gIC50aGVtZTIgLnRpY2tlcnRpdGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDU3NWQ0O1xuICB9XG4gIFxuICAudGhlbWUyIC5zbWFydGlja2VyLWNhdHMgdWwgYSBpbWcge1xuICAgIG1hcmdpbjogMCA1cHggMCAyMHB4O1xuICB9XG4gIFxuICAvKiAtLS0tLS0tLS0tLS0tIFRoZW1lIDMgLS0tLS0tLS0tLS0tICovXG4gIC50aGVtZTMge1xuICAgIGJhY2tncm91bmQ6ICMzMzM7XG4gIH1cbiAgXG4gIC50aGVtZTMgLnNtYXJ0aWNrZXItbmV3cyBhIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuICBcbiAgLnRoZW1lMyAuc21hcnRpY2tlci1jYXRzIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB9XG4gIFxuICAudGhlbWUzIC5zbWFydGlja2VyLWNhdHMgLiN7JGRlZmF1bHQtZGlyZWN0aW9ufSwgLnRoZW1lMyAuc21hcnRpY2tlci1jYXRzIC4jeyRvcHBvc2l0ZS1kaXJlY3Rpb259IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIFxuICAudGhlbWUzIC5zbWFydGlja2VyLWNhdHMgYSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG4gIFxuICAudGhlbWUzIC5zbWFydGlja2VyLWNhdGVnb3J5IGEge1xuICAgIGNvbG9yOiAjY2NjO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICBcbiAgLnRoZW1lMyAuZmxhc2hlciB7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbiAgXG4gIC50aGVtZTMgLnRpY2tlcnRpdGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2QwMDc0O1xuICB9XG4gIFxuICAvKiAtLS0tLS0tLS0tLS0tIFRoZW1lIDQgLS0tLS0tLS0tLS0tICovXG4gIC50aGVtZTQge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gIH1cbiAgXG4gIC50aGVtZTQgLnNtYXJ0aWNrZXItbmV3cyBhIHtcbiAgICBjb2xvcjogIzY2NjtcbiAgfVxuICBcbiAgLnRoZW1lNCAuc21hcnRpY2tlci1jYXRzIHtcbiAgICBiYWNrZ3JvdW5kOiAjOTk5O1xuICB9XG4gIFxuICAudGhlbWU0IC5zbWFydGlja2VyLWNhdHMgLiN7JGRlZmF1bHQtZGlyZWN0aW9ufSwgLnRoZW1lNCAuc21hcnRpY2tlci1jYXRzIC4jeyRvcHBvc2l0ZS1kaXJlY3Rpb259IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIFxuICAudGhlbWU0IC5zbWFydGlja2VyLWNhdHMgYSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG4gIFxuICAudGhlbWU0IC5zbWFydGlja2VyLWNhdGVnb3J5IGEge1xuICAgIGNvbG9yOiAjOTk5O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICBcbiAgLnRoZW1lNCAuZmxhc2hlciB7XG4gICAgY29sb3I6ICM2NjY7XG4gIH1cbiAgXG4gIC50aGVtZTQgLnRpY2tlcnRpdGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBiNjRmO1xuICB9XG4gIFxuICAvKiAtLS0tLS0tLS0tLSBUZXh0IENvbnRyb2xsZXIgLS0tLS0tLS0tLS0tICovXG4gIC5jMSAuc21hcnQtY29udHJvbGxlciBzcGFuIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBjb2xvcjogI2NjYztcbiAgICBmb250LXNpemU6IDExcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMHB4IDlweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgZmxvYXQ6ICN7JGRlZmF1bHQtZGlyZWN0aW9ufTtcbiAgICBib3JkZXItI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxcHggc29saWQgI2VlZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzO1xuICAgIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzO1xuICB9XG4gIFxuICAuYzEgLnNtYXJ0LWNvbnRyb2xsZXIgc3Bhbjpob3ZlciB7XG4gICAgY29sb3I6ICNiYmI7XG4gICAgYmFja2dyb3VuZDogI2VmZWZlZjtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgMHM7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgMHM7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgMHM7XG4gIH1cbiAgXG4gIC5jMSAuc21hcnQtY29udHJvbGxlciBzcGFuOmFjdGl2ZSB7XG4gICAgY29sb3I6ICM5OTk7XG4gICAgYmFja2dyb3VuZDogI2RmZGZkZjtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW4tb3V0IDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQgMHM7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQgMHM7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQgMHM7XG4gIH1cbiAgXG4gIC8qIC0tLS0tLS0tLS0tIEMyIENvbnRyb2xsZXIgPSBJY29ucyAtLS0tLS0tLS0tLS0gKi9cbiAgLmMyIC5zbWFydC1jb250cm9sbGVyIHNwYW4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8vYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAjOTk5OTk5O1xuICAgIHRleHQtaW5kZW50OiAtMTAwMDAwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiA1cHg7XG4gICAgZmxvYXQ6ICN7JGRlZmF1bHQtZGlyZWN0aW9ufTtcbiAgICBib3JkZXItI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0IDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgMHM7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgMHM7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgMHM7XG4gIH1cbiAgXG4gIC5zLXJ0bC5jMiAuc21hcnQtY29udHJvbGxlciBzcGFuIHtcbiAgICBib3JkZXItI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcHggc29saWQgI2VlZTtcbiAgICBkaXJlY3Rpb246IGx0cjtcbiAgfVxuICBcbiAgLnRoZW1lMy5jMiAuc21hcnQtY29udHJvbGxlciBzcGFuLCAudGhlbWUyLmMyIC5zbWFydC1jb250cm9sbGVyIHNwYW4ge1xuICAgIGJvcmRlci0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgLy9wYWRkaW5nLXRvcDogMDtcbiAgICAvL3BhZGRpbmctYm90dG9tOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA0cHg7XG4gICAgfVxuICB9XG4gIFxuICAudGhlbWUxLmMyIC5zbWFydC1jb250cm9sbGVyIHNwYW4sIC50aGVtZTQuYzIgLnNtYXJ0LWNvbnRyb2xsZXIgc3BhbiB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIC8vcGFkZGluZy10b3A6IDA7XG4gICAgLy9wYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuICBcbiAgLmMyIC5zbWFydC1jb250cm9sbGVyIHNwYW46aG92ZXIge1xuICAgIGNvbG9yOiAjYmJiO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgMHM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAwcztcbiAgfVxuICBcbiAgLmMyIC5zbWFydC1jb250cm9sbGVyIHNwYW46YWN0aXZlIHtcbiAgICBjb2xvcjogIzk5OTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2UtaW4tb3V0IDBzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQgMHM7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQgMHM7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZS1pbi1vdXQgMHM7XG4gIH1cbiAgXG4gIC5jMiAubmV4dC1uZXdzLCAuYzIgLm5leHQtbmV3czphY3RpdmUsIC5jMiAubmV4dC1uZXdzOmhvdmVyIHtcbiAgICAvKmJhY2tncm91bmQtcG9zaXRpb246ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn0gY2VudGVyO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL3NtYXJ0aWNrZXIvY29udHJvbGxlci5wbmcnKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyovXG4gIH1cbiAgXG4gIC5jMiAucHJldi1uZXdzLCAuYzIgLnByZXYtbmV3czphY3RpdmUsIC5jMiAucHJldi1uZXdzOmhvdmVyIHtcbiAgICAvL2JhY2tncm91bmQtcG9zaXRpb246ICN7JGRlZmF1bHQtZGlyZWN0aW9ufSBjZW50ZXI7XG4gICAgLy9iYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9zbWFydGlja2VyL2NvbnRyb2xsZXIucG5nJyk7XG4gICAgLy9iYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBcbiAgfVxuICBcbiAgLmMyIC5wYXVzZS1uZXdzLCAuYzIgLnBhdXNlLW5ld3M6YWN0aXZlLCAuYzIgLnBhdXNlLW5ld3M6aG92ZXIge1xuICAgIC8qYmFja2dyb3VuZC1wb3NpdGlvbjogI3skZGVmYXVsdC1kaXJlY3Rpb259IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9zbWFydGlja2VyL2NvbnRyb2xsZXIxLnBuZycpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7Ki9cbiAgfVxuICBcbiAgLmMyIC5wbGF5LW5ld3MsIC5jMiAucGxheS1uZXdzOmFjdGl2ZSwgLmMyIC5wbGF5LW5ld3M6aG92ZXIge1xuICAgIC8qYmFja2dyb3VuZC1wb3NpdGlvbjogI3skb3Bwb3NpdGUtZGlyZWN0aW9ufSBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvc21hcnRpY2tlci9jb250cm9sbGVyMS5wbmcnKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyovXG4gIH1cbiAgXG4gIC5jMiAucGF1c2UtbmV3cyB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ3x8JztcbiAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgZmxvYXQ6ICN7JGRlZmF1bHQtZGlyZWN0aW9ufTtcbiAgICB9XG4gIH1cbiAgXG4gIC5jMiAucGxheS1uZXdzIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFxlOTFhJztcbiAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgZmxvYXQ6ICN7JGRlZmF1bHQtZGlyZWN0aW9ufTtcbiAgICB9XG4gIH1cbiAgXG4gIC5jMiAucHJldi1uZXdzIHtcbiAgICAvL2JhY2tncm91bmQtcG9zaXRpb246ICN7JGRlZmF1bHQtZGlyZWN0aW9ufSBjZW50ZXI7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcZTkxNyc7XG4gICAgICB0ZXh0LWluZGVudDogMDtcbiAgICAgIGZsb2F0OiAjeyRkZWZhdWx0LWRpcmVjdGlvbn07XG4gICAgfVxuICB9XG4gIFxuICAuYzIgLm5leHQtbmV3cyB7XG4gICAgLy9iYWNrZ3JvdW5kLXBvc2l0aW9uOiAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259IGNlbnRlcjtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFxlOTE2JztcbiAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgZmxvYXQ6ICN7JGRlZmF1bHQtZGlyZWN0aW9ufTtcbiAgICB9XG4gIH1cbiAgXG4gIC5wcm9ncmVzcy1iYXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMHB4O1xuICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMHB4O1xuICAgIHotaW5kZXg6IDM7XG4gIH1cbiAgXG4gIC5uby1zdWJjYXRlZ29yeSAuc21hcnRpY2tlci1jYXRlZ29yeSB7XG4gICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFweCBzb2xpZCAjY2NjO1xuICAgIGJhY2tncm91bmQ6ICNlZWU7XG4gIH1cbiAgXG4gIC50aWNrZXJ0aXRsZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTIwMDQ4O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuICBcbiAgLnRoZW1lMi5jMiAuc21hcnQtY29udHJvbGxlciBzcGFuOmhvdmVyLCAudGhlbWUzLmMyIC5zbWFydC1jb250cm9sbGVyIHNwYW46aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1NTU7XG4gIH1cbiAgXG4gIC50aGVtZTIuYzIgLnNtYXJ0LWNvbnRyb2xsZXIgc3BhbjphY3RpdmUsIC50aGVtZTMuYzIgLnNtYXJ0LWNvbnRyb2xsZXIgc3BhbjphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3Nzc7XG4gIH1cbiAgXG4gIC5zbWFydGlja2VyIC5pdGVtLWRhdGUge1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBtYXJnaW46IDAgNXB4O1xuICAgIGNvbG9yOiAjOTk5O1xuICB9XG4gIFxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgLyotLS0tLS0tLS0tLSAgUlRMIFN1cHBvcnQgLS0tLS0tLS0tLSovXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAucy1ydGwge1xuICAgIGRpcmVjdGlvbjogcnRsO1xuICB9XG4gIFxuICAucy1ydGwgLnNlYzEsIC5zLXJ0bCAuc2VjMS0yLCAucy1ydGwgLnNlYzIsIC5zLXJ0bCAuc2VjMywgLnMtcnRsIC5zZWM0LCAucy1ydGwgLnNlYzUsIC5zLXJ0bCAuc2VjNiwgLnMtcnRsIC5zZWM3IHtcbiAgICBmbG9hdDogI3skZGVmYXVsdC1kaXJlY3Rpb259O1xuICB9XG4gIFxuICAucy1ydGwgLnNtYXJ0aWNrZXItbmV3cyB1bCB7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMTVweDtcbiAgfVxuICBcbiAgLnMtcnRsIC5zbWFydGlja2VyLWNhdHMgYSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cbiAgXG4gIC5zLXJ0bCAuc21hcnRpY2tlci1jYXRlZ29yeSBhIHtcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgIGZvbnQtc2l6ZTogMTZweDsgXG4gICAgcGFkZGluZzogMCA1cHg7XG4gICAgY29sb3I6ICMyNTNDM0E7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gIH1cbiAgXG4gIC5zLXJ0bCAuc21hcnRpY2tlci1uZXdzIGEge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICB9XG4gIFxuICAucy1ydGwudGhlbWUyIC5zbWFydGlja2VyLWNhdHMgLiN7JG9wcG9zaXRlLWRpcmVjdGlvbn0ge1xuICAgIC8vYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvc21hcnRpY2tlci8jeyRkZWZhdWx0LWRpcmVjdGlvbn0tZmxjLWItcnRsLnBuZycpIG5vLXJlcGVhdCAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259IGNlbnRlcjtcbiAgfVxuICBcbiAgLnMtcnRsLnRoZW1lMiAuc21hcnRpY2tlci1jYXRzIC4jeyRkZWZhdWx0LWRpcmVjdGlvbn0ge1xuICAgIC8vYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvc21hcnRpY2tlci8jeyRvcHBvc2l0ZS1kaXJlY3Rpb259LWZsYy1iLXJ0bC5wbmcnKSBuby1yZXBlYXQgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufSBjZW50ZXI7XG4gIH1cbiAgXG4gIC5zLXJ0bC50aGVtZTEgLnNtYXJ0aWNrZXItY2F0cyAuI3skb3Bwb3NpdGUtZGlyZWN0aW9ufSB7XG4gICAgLy9iYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9zbWFydGlja2VyLyN7JGRlZmF1bHQtZGlyZWN0aW9ufS1mbGMtdy1ydGwucG5nJykgbm8tcmVwZWF0ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn0gY2VudGVyO1xuICB9XG4gIFxuICAucy1ydGwudGhlbWUxIC5zbWFydGlja2VyLWNhdHMgLiN7JGRlZmF1bHQtZGlyZWN0aW9ufSB7XG4gICAgLy9iYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9zbWFydGlja2VyLyN7JG9wcG9zaXRlLWRpcmVjdGlvbn0tZmxjLXctcnRsLnBuZycpIG5vLXJlcGVhdCAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259IGNlbnRlcjtcbiAgfVxuICBcbiAgXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAvKi0tLS0tLS0tICBSZXNwb25zaXZlIFN1cHBvcnQgLS0tLS0tKi9cbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg1MHB4KSB7XG4gICAgLiN7JG9wcG9zaXRlLWRpcmVjdGlvbn0sIC4jeyRkZWZhdWx0LWRpcmVjdGlvbn0ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH0iLCIvKiAtLS0tLS0gbmF2aWdhdGlvbiwgcGFuZWwgYW5kIHN0aWNreSBoZWFkZXIgLS0tLS0tIFNUQVJUIC0tLS0tLSAqL1xuXG5oZWFkZXIge1xuICAgIC5zb2NpYWxzLWFyZWEge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIG1hcmdpbjogMC41cmVtIDAgMDtcbiAgICB9XG4gICAgI3N0aWNreS1oZWFkZXIge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIG1hcmdpbjogMC41cmVtIDAgMS41cmVtO1xuICAgIH1cbn1cblxuLm5hdi1jb250YWluZXIge1xuICAgIC8vIFtkaXI9bHRyXSAme1xuICAgIC8vICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAvLyB9XG4gICAgPiB1bCB7XG4gICAgICAgID4gbGkge1xuICAgICAgICAgICAgcGFkZGluZzogMCAwLjYyNXJlbTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgxMDYwKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAwLjg1cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KDExNTApIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAuOHJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjhyZW0gMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcblxuICAgICAgICAgICAgICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID4gLnN1Ym1lbnUge1xuICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zdWJtZW51IHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAyMHB4IC0xcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCAwcHggMjBweCAtMXB4IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgICAgICAgLW1vei1ib3gtc2hhZG93OiAwcHggMHB4IDIwcHggLTFweCByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDQ7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIC8vI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgcGFkZGluZzogMzVweCA1MHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgIC5zdWJtZW51LWxpc3Qge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIG1hcmdpbjogMS41cmVtIGF1dG8gMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgQGluY2x1ZGUgZm91ci1pdGVtLWNvbHVtbjtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTQwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGY3ZjY7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNzVyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1kYXJrO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAgICAgICAmLmFjdGl2ZSA+IGEge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgY29sb3I6IHJnYmEoIzFhMWExYSwgMC44KTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNHB4IDIwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubWVudSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgIC5zdGlja3kgJiB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6ICN7JGRlZmF1bHQtZGlyZWN0aW9ufTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnN1Ym1lbnUge1xuICAgICYuc3R5bGUtMSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IC01cHg7XG4gICAgICAgICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDJyZW07XG4gICAgICAgICAgICBib3JkZXItI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRlci1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAycmVtKTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgICAgIHRvcDogMnJlbTtcbiAgICAgICAgICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAtNDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1lbnUtY2F0ZWdvcnkge1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMDBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5tZW51LWhpZ2hsaWdodHMge1xuICAgIC5tZWRpYS1vYmplY3QtaW1nIHtcbiAgICAgICAgd2lkdGg6IDM2cHg7XG4gICAgICAgIGhlaWdodDogMzZweDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGg2IHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG5cbiAgICAgICAgW2Rpcj1cImx0clwiXSAmIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5vYmplY3RzLWxpc3Qge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgQGluY2x1ZGUgZm91ci1pdGVtLWNvbHVtbjtcbiAgICB9XG5cbiAgICAub2JqZWN0LWl0ZW0ge1xuICAgICAgICBtaW4td2lkdGg6IDExMHB4O1xuICAgICAgICAvL21hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAuN3JlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLm9iamVjdHMtbGlzdC5oYXMtc2VwYXJhdG9yIHtcbiAgICAgICAgLm9iamVjdC1pdGVtIHtcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5oaWdobGlnaHRzLXRpdGxlIHtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgZm9udC1zaXplOiAkaGlnaGxpZ2h0cy10aXRsZS1zaXplO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ubWFpbi1oZWFkZXItYmVmb3JlIHtcbiAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1kYXJrO1xuICAgIC8vIGNvbG9yOiAkd2hpdGU7XG4gICAgZm9udC1zaXplOiAkbWFpbi1oZWFkZXItYmVmb3JlLXNpemU7XG4gICAgLy9wYWRkaW5nOiAyLjVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLy9vdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkaGVhZGVyLWJvcmRlci1jb2xvcjtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgei1pbmRleDogOTk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWRhcms7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICB9XG5cbiAgICBbbGFuZz1cImVuXCJdICYge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIH1cblxuICAgIC50b3AtbGFuZ3VhZ2VzIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWZvbnQtbWVkaXVtO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICBtYXJnaW46IDAuNXJlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICAgQGluY2x1ZGUgbmJvb2sge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogN3B4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmFjdGl2ZSxcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLXJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS1sZWZ0IHtcbiAgICAgICAgdGV4dC1hbGlnbjogI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi53ZWF0aGVyLWFyZWEge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1mb250LW1lZGl1bTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICAgIHBhZGRpbmc6IDAgM3B4O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAzcHg7XG4gICAgICAgIH1cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgID4gc3BhbiB7XG4gICAgICAgIC8vYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAud2VhdGhlciB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi53dGVtcCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBjb2xvcjogIzc5YmZiOTtcbiAgICB9XG59XG5cbi5tYWluLWhlYWRlci1hZnRlcixcbi5tYWluLWhlYWRlci1pbm5lciB7XG4gICAgLy9tYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRoZWFkZXItYm9yZGVyLWNvbG9yO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAuZGFyay10aGVtZSAmIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG5cbi5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5IHtcbiAgICAvL2JhY2tncm91bmQtY29sb3I6ICNGN0ZBRkE7XG4gICAgei1pbmRleDogOTtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0O1xuXG4gICAgLyogTW9iaWxlIFBvcnRyYXRlIC0gTGFuZHNjYXBlICovXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aDogMzIwcHgpIGFuZCAobWF4LWRldmljZS13aWR0aDogODk2cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSB7XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgICAgYm9yZGVyOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAgICAgcGFkZGluZzogMXJlbSAwO1xuICAgIH1cblxuICAgIC5sb2dvLXdoaXRlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAubG9nbyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZm9yLXN0aWNreSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBkaXYgPiBhIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGlja3kge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGJvcmRlci10b3A6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItYm90dG9tOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAubG9nbyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgJjpub3QoLmxvZ28tLWRhcmstbW9kZSkge1xuICAgICAgICAgICAgICAgIC5hdXRvLWRhcmstdGhlbWUgJiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgICAgICYtLWRhcmstbW9kZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAuYXV0by1kYXJrLXRoZW1lICYge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvLXNlYXJjaCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubG9nby13aGl0ZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZvci1zdGlja3kge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgfVxuXG4gICAgICAgID4gYSB7XG4gICAgICAgICAgICAvL2NvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktZGFyaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNlYXJjaC1idG4ge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgIH1cbn1cblxuLmhvbGRlci13cmFwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuaWNvLXVzZXIge1xuICAgICAgICAvLyAuc3RpY2t5ICZ7XG4gICAgICAgIC8vICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAvLyB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5oZWFkZXIjbWFpbi1oZWFkZXIge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgei1pbmRleDogOTk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIC8vbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgLmZyb250ICYsXG4gICAgICAgIC5kYXJrLXRoZW1lICYge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxvZ28sXG4ubG9nby13aGl0ZSB7XG4gICAgLy9wYWRkaW5nOiAxcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAvL3otaW5kZXg6IDk5O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgfVxuXG4gICAgLm1haW4taGVhZGVyLWlubmVyICYge1xuICAgICAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICAvLyBpbWd7XG4gICAgICAgIC8vICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIC8vICAgICB3aWR0aDogMTcwcHg7XG4gICAgICAgIC8vICAgICB9XG4gICAgICAgIC8vIH1cbiAgICB9XG5cbiAgICAvLyAjYXJlYS10by1zdGljayAmLCAuaGVhZGVyLXN0aWNreSAmXG4gICAgLnN0aWNreSAmIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICAvLyBtYXgtd2lkdGg6IDEyNXB4O1xuICAgICAgICAgICAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApe1xuICAgICAgICAgICAgd2lkdGg6IDEzNHB4O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZTtcbiAgICAgICAgICAgIC8vfVxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuXG4ubG9nbyB7XG4gICAgaW1nIHtcbiAgICAgICAgY29sb3Itc2NoZW1lOiBvbmx5IGxpZ2h0O1xuICAgICAgICB3aWR0aDogMTY2cHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMnB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMXMgZWFzZTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDogMjkwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAvLyAuYXV0by1kYXJrLXRoZW1lICYge1xuICAgICAgICAvLyAgICAgZmlsdGVyOiBpbnZlcnQoMSkgY29udHJhc3QoMik7XG4gICAgICAgIC8vIH1cbiAgICB9IFxuXG4gICAgJjpub3QoLmxvZ28tLWRhcmstbW9kZSkge1xuICAgICAgICAuYXV0by1kYXJrLXRoZW1lICYge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWRhcmstbW9kZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIC5hdXRvLWRhcmstdGhlbWUgJiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmhvbGRlci1hcmVhIHtcbiAgICAvLyBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIC8vIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIH1cblxuICAgIGhlYWRlciAmLFxuICAgICNzdGlja3ktYXJlYSAmLFxuICAgIC5oZWFkZXItc3RpY2t5IHtcbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucGRmLWJ0biB7XG4gICAgc3BhbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDIwMCUpIGNvbnRyYXN0KDE0MCUpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubG9naW4tYnRuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMDtcblxuICAgIEBpbmNsdWRlIG5ib29rIHtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWRhcms7XG4gICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICBAaW5jbHVkZSBuYm9vayB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDFyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWRhcms7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaSB7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMHB4O1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblxuICAgICAgICBAaW5jbHVkZSBuYm9vayB7XG4gICAgICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1haW4taGVhZGVyLWFmdGVyIC5zaG93LXN1Ym1lbnUge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG5cbiAgICBsaS5hY3RpdmUge1xuICAgICAgICAuc3VibWVudSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCRkdXN0eS1ncmF5LCAwLjIpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubWVudS1wYW5lbCB7XG4gICAgdWwge1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMC4ycmVtIDFyZW07XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC43NXJlbSAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICA+IGEsXG4gICAgICAgICAgICBzcGFuIGEge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnRbYXJpYS1leHBhbmRlZD1cInRydWVcIl0gPiBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjg1cmVtIDAgMXJlbSAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwLjYyNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnBhbmVsLWxhbmd1YWdlcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICB9XG59XG5cbi5tZW51LXBhbmVsIC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQge1xuICAgID4gYTphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgPiBhIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTE2XCI7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzOHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn07XG4gICAgICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgICAgICA+IGEge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTE3XCI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAa2V5ZnJhbWVzIGZhZGVvdXQge1xuICAgICAgICAwJSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgNDAlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgfVxuXG4gICAgICAgIDEwMCUge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEAtd2Via2l0LWtleWZyYW1lcyBmYWRlb3V0IHtcbiAgICAgICAgMCUge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuXG4gICAgICAgIDQwJSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgIH1cblxuICAgICAgICAxMDAlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc3VibWVudSB7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG5cbiAgICAgICAgJlthcmlhLWhpZGRlbj1cInRydWVcIl0ge1xuICAgICAgICAgICAgYW5pbWF0aW9uOiAwLjVzIGVhc2Utb3V0IG5vcm1hbCBmb3J3YXJkcyAxIGZhZGVvdXQ7XG4gICAgICAgIH1cblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2IzYzdjNTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnN1Ym1lbnUge1xuICAgICAgICAgICAgcGFkZGluZzogMCAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1lbnUuc3VibWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50IGE6OmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgfVxufVxuXG4uc3RpY2t5LWhlYWRlci1zcGFjZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmxvZ28td2hpdGUsXG4uaWNvLXBkZixcbi5pY28tc2VhcmNoIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4jYXJlYS10by1zdGljayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDk5OTk5OTk7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgLmdyaWQteCB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5vcGVuZWQge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcblxuICAgICNhcmVhLXRvLXN0aWNrLFxuICAgIC5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHotaW5kZXg6IDk5OTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogM3JlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLmxvZ28ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICY6bm90KC5sb2dvLS1kYXJrLW1vZGUpIHtcbiAgICAgICAgICAgICAgICAuYXV0by1kYXJrLXRoZW1lICYge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICAgICAmLS1kYXJrLW1vZGUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgLmF1dG8tZGFyay10aGVtZSAmIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmxvZ28td2hpdGUge1xuICAgICAgICAgICAgLy90ZXh0LWFsaWduOiAjeyRkZWZhdWx0LWRpcmVjdGlvbn07XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZSAwcztcbiAgICAgICAgICAgIHdpZHRoOiAxNDBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxvZ28td2hpdGUsXG4gICAgICAgIC5pY28tcGRmIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgLmljby1wZGYge1xuICAgICAgICAgICAgLy9tYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMi41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRvZ2dsZS1uYXYtcGFuZWwge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pY28tdXNlcixcbiAgICAgICAgLmFjY291bnQtbWVudSxcbiAgICAgICAgLmljby1zZWFyY2gge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tYWluLWhlYWRlci1pbm5lci5oZWFkZXItc3RpY2t5IHtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDNyZW0gMC41cmVtO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzY0N2U3YztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdnBhbmVsLWNvbG9yO1xuICAgIH1cbn1cblxuaHRtbC5vcGVuZWQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi50b2dnbGUtbmF2LXBhbmVsLFxuLnRvZ2dsZS1zZWFyY2gtcGFuZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIC8vdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6ICRibGFjaztcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIH1cblxuICAgIC5zdHVjay1oZWFkZXIgJiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4udG9nZ2xlLW5hdi1wYW5lbCB7XG4gICAgW2Rpcj1cImx0clwiXSAmIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgIH1cbn1cblxuLmNhbnZhcy1wYW5lbCB7XG4gICAgcGFkZGluZzogNTBweCA2MHB4O1xuICAgIHRvcDogNTBweDtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgJi5zZWFyY2gtY2FudmFzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5zb2NpYWxzLWFyZWEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMS4yNXJlbSAwIDJyZW07XG4gICAgfVxufVxuXG4uY2xvc2UtcGFuZWwge1xuICAgIGhlaWdodDogNHJlbTtcblxuICAgIHNwYW4ge1xuICAgICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICBmb250LXNpemU6IDIuMjVyZW07XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wcmludC1lZGl0aW9uLWFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgcGFkZGluZzogMnJlbSAwO1xuICAgIGJvcmRlci1ib3R0b206IDNweCBkb3VibGUgI2Q2ZDZkNjtcblxuICAgIGg2IHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICM0NjQ2NDY7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIGNvbG9yOiAjYWJhYmFiO1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jc2Nyb2xsLWNhdCB7XG4gICAgb3ZlcmZsb3c6IHNjcm9sbDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gICAgLyogSW50ZXJuZXQgRXhwbG9yZXIgMTArICovXG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAgIC8qIEZpcmVmb3ggKi9cbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIH1cblxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgLyogU2FmYXJpIGFuZCBDaHJvbWUgKi9cbiAgICB9XG5cbiAgICAubUN1c3RvbVNjcm9sbEJveCB7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgICYuaGVhZGVyLXRhZy13cmFwIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaGVhZGVyLXRhZy13cmFwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgbWFyZ2luLWJvdHRvbTogMC44cmVtO1xufVxuXG4uaGVhZGVyLXRhZyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICM3MTcxNzE7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDAuOHJlbTtcblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG5cbiAgICAgICAgICAgIC5kYXJrLXRoZW1lICYge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kYXJrLXRoZW1lICYge1xuICAgICAgICAgICAgY29sb3I6ICM3MTcxNzE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBNb2JpbGUgUG9ydHJhdGUgLSBMYW5kc2NhcGUgKi9cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA4OTZweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIHtcbiAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLm5hdnBhbmVsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZwYW5lbC1jb2xvcjtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDk5O1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cblxuICAgICZfX3dyYXAge1xuICAgICAgICAvLyBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIC8vIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIC8vIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuXG4gICAgJl9fZm9vdGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICB9XG59XG5cbi50b2dnbGUtbWVnYS1tZW51IHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbn1cblxuLm1lZ2EtbWVudSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTcyZjJmO1xuICAgIHBhZGRpbmc6IDE1cHggMTVweCA2OHB4O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDk7XG4gICAgLy8gQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDYwMXB4KSBhbmQgKG1pbi1oZWlnaHQ6IDYwMHB4KSB7XG4gICAgLy8gICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIC8vICAgICBoZWlnaHQ6IDQ1MHB4O1xuICAgIC8vIH1cbiAgICBAbWVkaWEgKG1heC1oZWlnaHQ6IDgwMHB4KSB7XG4gICAgICAgIC5zdGlja3kgJiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7IFxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOyBcbiAgICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jbG9zZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAyM3B4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MnB4O1xuICAgIH1cbiAgICAubWVudSB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGlnaHQtZ3JlZW4xO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5tZW51X19tYWluLWNhdGVnb3J5IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtZ3JlZW4xO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYubWVudV9fc3ViLWNhdGVnb3J5IHtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5tZW51X19jaGlsZC1jYXRlZ29yeSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjZweDtcbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNhZWQ3YzY7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5ncm91cC1tZW51IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcm93LWdhcDogMzBweDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogMCAxLjVyZW07XG4gICAgfVxuICAgICZfX2l0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGdhcDogMzBweDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cblxuICAgIC5tZW51LnZlcnRpY2FsIHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjNweCkgYW5kIChtYXgtd2lkdGg6IDEwMzBweCkge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMzkwcHggLyA1KSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDQ5MHB4IC8gNSk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIC0tLS0tLSBuYXZpZ2F0aW9uLCBwYW5lbCBhbmQgc3RpY2t5IGhlYWRlciAtLS0tLS0gRU5EIC0tLS0tLSAqL1xuIiwiQG1peGluIGZvdXItaXRlbS1jb2x1bW4ge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoNCwgYXV0byk7XG4gICAgZ3JpZC1hdXRvLWNvbHVtbnM6IDFmcjtcbiAgICBncmlkLWF1dG8tZmxvdzogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbkBtaXhpbiB0aHJlZS1pdGVtLWNvbHVtbiB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgzLCBhdXRvKTtcbiAgICBncmlkLWF1dG8tY29sdW1uczogMWZyO1xuICAgIGdyaWQtYXV0by1mbG93OiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuQG1peGluIHR3by1pdGVtLWNvbHVtbiB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgyLCBhdXRvKTtcbiAgICBncmlkLWF1dG8tY29sdW1uczogMWZyO1xuICAgIGdyaWQtYXV0by1mbG93OiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuQG1peGluIGxlZnRUaHVtYkltZyB7IFxuICAgIGZsb2F0OiAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259O1xuICAgIHdpZHRoOiA1MCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG5cbiAgICA+IGEgPiBpbWcge1xuICAgICAgICBhc3BlY3QtcmF0aW86IDQvMztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIH1cbn1cblxuQG1peGluIHNtYWxsVGh1bWJJbWcge1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICAvLyBoZWlnaHQ6IDc1cHg7XG4gICAgbWFyZ2luOiAwLjI1cmVtIDFyZW0gMCAwO1xuICAgIGZsb2F0OiAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259O1xuXG4gICAgPiBhID4gaW1nIHtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiA0LzM7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB9XG59XG4iLCIvKiBGb290ZXIgQXJlYSBTdHlsZXMgLS0tLS0tLSBTVEFSVCAtLS0tLSAqL1xuI21haW4tZm9vdGVyIHtcbiAgICBwYWRkaW5nOiAxLjI1cmVtIDAgMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogMi41cmVtIDAgMDtcbiAgICB9XG5cbiAgICAuYWJvdXQtcGFnZSAmIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxuICAgIC5ub3QtZm91bmQgJixcbiAgICAucGF0aC1qb3VybmV5ICYge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG4gICAgLm11bHRpbWVkaWEtZ2FsbGVyeSAmIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgLnNvY2lhbC1sYmwge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBbZGlyPVwibHRyXCJdICYge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmRhcmstdGhlbWUgJiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbn1cblxuLm1haW4tZm9vdGVyLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgIH1cbn1cbi5tYWluLWZvb3Rlci1jb250ZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTAxZjFkO1xuICAgIHBhZGRpbmc6IDQwcHggMCAyMHB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG4gICAgaHIge1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkZm9vdGVyLWJvcmRlci1jb2xvcjtcbiAgICB9XG59XG5cbi5tYWluLWZvb3Rlci1iZWZvcmUge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRmb290ZXItYm9yZGVyLWNvbG9yO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICB9XG59XG5cbi5tYWluLWZvb3Rlci1hZnRlci1pbm5lciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGZvb3Rlci1ib3JkZXItY29sb3I7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGZvb3Rlci1ib3JkZXItY29sb3I7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgfVxuXG4gICAgLm1lbnUge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgd2lkdGg6IDM4MHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM3YzlhOTQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ubWFpbi1mb290ZXItaW5uZXIge1xuICAgIHBhZGRpbmc6IDAgMi41cmVtIDA7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgb3JkZXI6IDM7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICAgIC5zb2NpYWwtbGJsIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXJlbTtcbiAgICB9XG59XG5cbi5tYWluLWZvb3Rlci1hZnRlciB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTAxZjFkO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAtNXB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1kYXJrO1xuICAgIH1cbiAgICAmLnN0eWxlLXYyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHNlcGFyYXRvci1jb2xvcjtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICAgICAgICAgICAgLmdyaWQteCB7XG4gICAgICAgICAgICAgICAgLmNlbGw6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jb3B5cmlnaHQge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWRhcms7XG4gICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLm1lbnUge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5sb2dvLWZvb3RlciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIG1heC13aWR0aDogMTkwcHg7XG4gICAgICAgIGNvbG9yLXNjaGVtZTogb25seSBsaWdodDtcbiAgICB9XG59XG5cbi5jb3B5cmlnaHQge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgIH1cbiAgICAuY2FudmFzLXBhbmVsICYge1xuICAgICAgICBwYWRkaW5nOiAwIDEuNXJlbSAycmVtO1xuICAgIH1cbiAgICAubWFpbi1mb290ZXItYWZ0ZXIgJiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgY29sb3I6ICM4MDkwOGU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG4uZm9vdGVyLW1lbnUge1xuICAgIC5tZW51IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICB9XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBbZGlyPVwibHRyXCJdICYge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgW2xhbmc9XCJ0clwiXSAmIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC41cmVtIDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICA+IC5ncmlkLXgge1xuICAgICAgICAvKiBuZXRib29rIG9ubHkgKi9cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgICAgICBnYXA6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBnYXA6IDIwcHg7XG4gICAgICAgICAgICA+IC5jZWxse1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmRvd25sb2FkLWFwcCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbjogMS41cmVtIC0wLjVyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktZGFyaztcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICB9XG4gICAgYSB7XG4gICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDFyZW07XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAuMnJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTMwcHg7XG4gICAgICAgIGNvbG9yLXNjaGVtZTogb25seSBsaWdodDtcbiAgICB9XG59XG5cbi5mb290ZXItc29jaWFscyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIC5zb2NpYWxzLWJ0bnMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIH1cbn1cblxuLyogRm9vdGVyIEFyZWEgU3R5bGVzIC0tLS0tLS0gRU5EIC0tLS0tICovXG4iLCIvKioqXG4qaHR0cHM6Ly93d3cuanF1ZXJ5c2NyaXB0Lm5ldC9hbmltYXRpb24vbmV3cy10aWNrZXItY29udHJvbHMtYWNtZS5odG1sXG4qaHR0cHM6Ly93d3cuanF1ZXJ5c2NyaXB0Lm5ldC9kZW1vL25ld3MtdGlja2VyLWNvbnRyb2xzLWFjbWUvXG4qKi9cblxuLypFRElURUQgVE8gRklUIEFBV1NBVCBMQVlPVVQqL1xuXG4qIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbiosXG46OmFmdGVyLFxuOjpiZWZvcmUge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG5hIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0IDBzO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLWluLW91dCAwcztcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQgMHM7IH1cbiAgYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0TmV3cyBUaWNrZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uYWNtZS1uZXdzLXRpY2tlciB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiA0NXB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTk3NGQyO1xuICBtYXJnaW4tdG9wOiA0NXB4OyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5hY21lLW5ld3MtdGlja2VyIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICAuYWNtZS1uZXdzLXRpY2tlci1sYWJlbCB7XG4gICAgYmFja2dyb3VuZDogIzE5NzRkMjtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGZsb2F0OiAjeyRkZWZhdWx0LWRpcmVjdGlvbn07XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDE1cHg7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgICAgIC5hY21lLW5ld3MtdGlja2VyLWxhYmVsIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC00NXB4OyB9IH1cbiAgLmFjbWUtbmV3cy10aWNrZXItYm94IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAgICAgLmFjbWUtbmV3cy10aWNrZXItYm94IHtcbiAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDEwcHg7XG4gICAgICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTIwcHg7IH0gfVxuICAgIC5hY21lLW5ld3MtdGlja2VyLWJveCB1bCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgLmFjbWUtbmV3cy10aWNrZXItYm94IHVsIGxpIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgLmFjbWUtbmV3cy10aWNrZXItY29udHJvbHMge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgIHRvcDogMDsgfVxuICAgIC5hY21lLW5ld3MtdGlja2VyLWNvbnRyb2xzIGJ1dHRvbiB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAjZjZmNmY2O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjZWVlZWVlO1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci13aWR0aDogMCAwIDAgMXB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAuYWNtZS1uZXdzLXRpY2tlci1jb250cm9scyBidXR0b246aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZWVlZWVlOyB9XG4gICAgICAuYWNtZS1uZXdzLXRpY2tlci1jb250cm9scyBidXR0b24uYWNtZS1uZXdzLXRpY2tlci1hcnJvdyB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgLmFjbWUtbmV3cy10aWNrZXItY29udHJvbHMgYnV0dG9uLmFjbWUtbmV3cy10aWNrZXItYXJyb3c6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogIzk5OTtcbiAgICAgICAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XG4gICAgICAgICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn0tc3R5bGU6IHNvbGlkO1xuICAgICAgICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259LXdpZHRoOiAycHg7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIGhlaWdodDogOHB4O1xuICAgICAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogNTAlO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICB3aWR0aDogOHB4OyB9XG4gICAgICAuYWNtZS1uZXdzLXRpY2tlci1jb250cm9scyBidXR0b24uYWNtZS1uZXdzLXRpY2tlci1wYXVzZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAgIC5hY21lLW5ld3MtdGlja2VyLWNvbnRyb2xzIGJ1dHRvbi5hY21lLW5ld3MtdGlja2VyLXBhdXNlOmJlZm9yZSB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogIzk5OTtcbiAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICAgIGJvcmRlci13aWR0aDogMCAycHggMDtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDUwJTtcbiAgICAgICAgICB0b3A6IDUwJTsgfVxuICAgIC5hY21lLW5ld3MtdGlja2VyLWNvbnRyb2xzLmFjbWUtbmV3cy10aWNrZXItaG9yaXpvbnRhbC1jb250cm9scyBidXR0b24uYWNtZS1uZXdzLXRpY2tlci1wcmV2OmFmdGVyIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDEzNWRlZyk7XG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgxMzVkZWcpO1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMTM1ZGVnKTsgfVxuICAgIC5hY21lLW5ld3MtdGlja2VyLWNvbnRyb2xzLmFjbWUtbmV3cy10aWNrZXItaG9yaXpvbnRhbC1jb250cm9scyBidXR0b24uYWNtZS1uZXdzLXRpY2tlci1uZXh0OmFmdGVyIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDMxNWRlZyk7XG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgzMTVkZWcpO1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMzE1ZGVnKTsgfVxuICAgIC5hY21lLW5ld3MtdGlja2VyLWNvbnRyb2xzLmFjbWUtbmV3cy10aWNrZXItdmVydGljYWwtY29udHJvbHMgYnV0dG9uLmFjbWUtbmV3cy10aWNrZXItcHJldjphZnRlciB7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgyMjVkZWcpO1xuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMjI1ZGVnKTtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDIyNWRlZyk7IH1cbiAgICAuYWNtZS1uZXdzLXRpY2tlci1jb250cm9scy5hY21lLW5ld3MtdGlja2VyLXZlcnRpY2FsLWNvbnRyb2xzIGJ1dHRvbi5hY21lLW5ld3MtdGlja2VyLW5leHQ6YWZ0ZXIge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoNDA1ZGVnKTtcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDQwNWRlZyk7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSg0MDVkZWcpOyB9XG5cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPXN0eWxlLmNzcy5tYXAgKi8iLCIvKiAtLS0tLS0tIEFVRElPIFBMQVlFUiBXSURHRVQgLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuLmF1ZGlvLXBsYXllciB7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAub3Bpbmlvbi1hdXRob3JzLWxpc3QgJiB7XG4gICAgICAgICAgICAucG9kY2FzdC1sYWJlbCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuanctcmlnaHRjbGljayB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm9waW5pb24tYXV0aG9ycy1saXN0ICYsXG4gICAgLm9waW5pb24td3JhcCAmIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAuYmxvY2std3JhcHBlciAmIHtcbiAgICAgICAgLnBvZGNhc3QtbGFiZWwge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuanctd3JhcHBlci5qdy1yZXNldCxcbiAgICAuanctY29udHJvbHMuanctcmVzZXQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgLm9waW5pb24tYXV0aG9ycy1saXN0ICYsXG4gICAgICAgIC5vcGluaW9uLXdyYXAgJiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5qd3BsYXllci5qdy1zdGF0ZS1jb21wbGV0ZSAuanctY29udHJvbHMuanctcmVzZXQge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAuanctY29udHJvbHMtYmFja2Ryb3AuanctcmVzZXQge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAuandwbGF5ZXIuanctcmVzZXQge1xuICAgICAgICAvL3dpZHRoOiAxNTAlICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogMzVweCAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAub3Bpbmlvbi1hdXRob3JzLWxpc3QgJixcbiAgICAgICAgLm9waW5pb24td3JhcCAmIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvZGNhc3QtZmxvYXRlciAmIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmp3LWNvbnRyb2xzLmp3LWJ1ZmZlci5qdy1yZXNldCxcbiAgICAuanctY29udHJvbHMuanctcmVzZXQge1xuICAgICAgICAucG9kY2FzdC1mbG9hdGVyICYge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuanctc2xpZGVyLXRpbWUuanctcmVzZXQge1xuICAgICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgLy9kaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmp3LWNvbnRyb2xiYXIuanctcmVzZXQgLmp3LXJlc2V0Lmp3LWljb24tdm9sdW1lIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLy8gLmp3cGxheWVyOm5vdCguanctZmxhZy1hZHMpOm5vdCguanctZmxhZy1saXZlKS5qdy1icmVha3BvaW50LTAgLmp3LXRleHQtY291bnRkb3duLmp3LXJlc2V0e31cbiAgICAuanctZmxhZy1hdWRpby1wbGF5ZXIgLmp3LWNvbnRyb2xiYXIgLmp3LWljb24taW5saW5lLmp3LXRleHQtY291bnRkb3duLmp3LXJlc2V0IHtcbiAgICAgICAgY29sb3I6ICM5Mjk4OTg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDFlbTtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwcHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5wb2RjYXN0LWZsb2F0ZXIgJiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtNHJlbTtcbiAgICAgICAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYXVkaW8tcG9kY2FzdC0tbm8tYmFyICYge1xuICAgICAgICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmp3LWljb24uanctaWNvbi1pbmxpbmUuanctYnV0dG9uLWNvbG9yLmp3LXJlc2V0Lmp3LWljb24tcmV3aW5kIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmp3LWljb24uanctaWNvbi10b29sdGlwLmp3LWljb24tdm9sdW1lLmp3LWJ1dHRvbi1jb2xvci5qdy1yZXNldC5qdy1mbGFnLWhvcml6b250YWwtc2xpZGVyLmp3LWZ1bGwge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuanctaWNvbi5qdy1pY29uLXRvb2x0aXAuanctaWNvbi12b2x1bWUuanctYnV0dG9uLWNvbG9yLmp3LXJlc2V0Lmp3LWZsYWctaG9yaXpvbnRhbC1zbGlkZXIuanctb2ZmIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmp3LWljb24uanctaWNvbi1pbmxpbmUuanctdGV4dC5qdy1yZXNldC5qdy10ZXh0LWVsYXBzZWQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuanctaWNvbi5qdy1pY29uLWlubGluZS5qdy10ZXh0Lmp3LXJlc2V0Lmp3LXRleHQtZHVyYXRpb24ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5qd3BsYXllcjpub3QoLmp3LWJyZWFrcG9pbnQtLTEpIC5qdy10ZXh0LWR1cmF0aW9uOmJlZm9yZSxcbiAgICAuandwbGF5ZXI6bm90KC5qdy1icmVha3BvaW50LTApIC5qdy10ZXh0LWR1cmF0aW9uOmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmp3LXN2Zy1pY29uLmp3LXN2Zy1pY29uLXBsYXkge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuICAgIC5qdy1idWZmZXIuanctcmVzZXQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gICAgLmp3LWljb24uanctaWNvbi1pbmxpbmUuanctYnV0dG9uLWNvbG9yLmp3LXJlc2V0Lmp3LWljb24tcGxheWJhY2sge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlY2Y0ZjM7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgICAgICAub3Bpbmlvbi1hdXRob3JzLWxpc3QgJixcbiAgICAgICAgLm9waW5pb24td3JhcCAmIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlY2Y0ZjM7XG4gICAgICAgIH1cblxuICAgICAgICAuYXVkaW8tcG9kY2FzdC0tbm8tYmFyICYge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5qdy1wcm9ncmVzcy5qdy1yZXNldCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICAgIH1cbiAgICAuanctc2xpZGVyLWNvbnRhaW5lci5qdy1yZXNldCB7XG4gICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICNlY2Y0ZjM7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMy41cHg7XG4gICAgfVxuXG4gICAgLmp3LXNsaWRlci1ob3Jpem9udGFsLmp3LWNoYXB0ZXItc2xpZGVyLXRpbWUgLmp3LXNsaWRlci1jb250YWluZXIgLmp3LXRpbWVzZWdtZW50Lmp3LXJlc2V0IHtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgIH0gXG5cbiAgICAuanctdGltZXNlZ21lbnQtYmFyLmp3LXJhaWwuanctdGltZXNlZ21lbnQtYmFja2dyb3VuZC5qdy1yZXNldCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYWVmZWUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuanctdGltZXNlZ21lbnQtYmFyLmp3LXByb2dyZXNzLmp3LXRpbWVzZWdtZW50LXByb2dyZXNzLmp3LXJlc2V0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJjODk4MTtcbiAgICB9XG4gICAgLmp3LXJlc2V0Lmp3LWJ1dHRvbi1jb250YWluZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAub3Bpbmlvbi1hdXRob3JzLWxpc3QgJixcbiAgICAgICAgLm9waW5pb24td3JhcCAmIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmp3LWtub2IuanctcmVzZXQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgc2NhbGUoMC44KTtcbiAgICAgICAgYm94LXNoYWRvdzogaW5oZXJpdDtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgLnBvZGNhc3QtZmxvYXRlciAmIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmp3LWhvcml6b250YWwtdm9sdW1lLWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuYmxvY2std3JhcHBlciAmIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucG9kY2FzdC1mbG9hdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgei1pbmRleDogOTtcbiAgICBwYWRkaW5nOiAwIDAgMi4xNXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLyogTW9iaWxlIExhbmRzY2FwZSAqL1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDMyMHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDg5NnB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMikgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMCAycmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gNHJlbTtcbiAgICB9XG4gICAgLmJ0bi1zaGFyZS13cmFwIHtcbiAgICAgICAgLmJ0bi1zaGFyZSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMTBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuandwbGF5ZXIuanctcmVzZXQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIGhlaWdodDogNzBweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5jbG9zZS1idG4ge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgICAgICAgICAgY29sb3I6ICM5MGEzYTI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmp3LXNsaWRlci10aW1lLmp3LXJlc2V0IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgICAgICB6LWluZGV4OiA5OTk5OTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IC00Ljg1cmVtO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmp3cGxheWVyOm5vdCguanctZmxhZy1hZHMpOm5vdCguanctZmxhZy1saXZlKS5qdy1icmVha3BvaW50LTAgLmp3LXRleHQtY291bnRkb3duLmp3LXJlc2V0IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgICAgICBsZWZ0OiAtNHJlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuanctZmxhZy1hdWRpby1wbGF5ZXIuanctZmxhZy1zbWFsbC1wbGF5ZXIgLmp3LXJlc2V0Lmp3LXRleHQtZHVyYXRpb24ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjb2xvcjogIzkyOTg5ODtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgICAgICAgICByaWdodDogLTIwcmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5qdy1pY29uLmp3LWljb24taW5saW5lLmp3LWJ1dHRvbi1jb2xvci5qdy1yZXNldC5qdy1pY29uLXBsYXliYWNrIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDIuMnJlbTtcbiAgICAgICAgICAgIGxlZnQ6IC0xLjNyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnBvZGNhc3QtZmxvYXRlci1pdGVtIHtcbiAgICBpbWcge1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB9XG4gICAgaDYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbn1cblxuLnBsYXllciB7XG4gICAgI3BvZGNhc3RUb2RheSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMi4zcmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5wbGF5ZXItc29uZyB7XG4gICAgICAgIC50aW1lc3RhbXBzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICBjb2xvcjogI2JmYmZiZjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBkaXJlY3Rpb246IGx0cjtcbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJyYW5nZVwiXSB7XG4gICAgICAgICAgICAgICAgLy9tYXJnaW46IDAgMTBweDtcblxuICAgICAgICAgICAgICAgIC5wb2RjYXN0LWZsb2F0ZXIgJiB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogOTk5OTk7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnBvZGNhc3QtZmxvYXRlciAmIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogN3B4IDFyZW0gMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50aW1lLW5vdyB7XG4gICAgICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxcmVtO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1NXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRpbWUtZmluaXNoIHtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmFjdGlvbnMge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgICAgICAgICAgJi5pY29uLXBhdXNlIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubmV4dCxcbiAgICAgICAgICAgIC5wcmV2IHtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wbGF5IHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMXJlbTtcbiAgICAgICAgICAgICAgICAucG9kY2FzdC1mbG9hdGVyICYge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAtMC41cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmF1ZGlvLXBsYXllci1mbG9hdGVyLmF1ZGlvLXBsYXllciB7XG4gICAgLyogTW9iaWxlIExhbmRzY2FwZSAqL1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDMyMHB4KSBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDg5NnB4KSBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMikgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgICAgIHdpZHRoOiAzNDBweDtcbiAgICB9XG4gICAgaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICMyYzhhODIgMCUsICNkY2ViZTkgMCUpO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgIGJvdHRvbTogdW5zZXQ7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcCAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJyYW5nZVwiXTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgIGN1cnNvcjogZXctcmVzaXplO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgLnBvZGNhc3QtZmxvYXRlciAmIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5ub3QtcGxheWluZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbi5hdWRpby1wbGF5ZXItcGxheSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmF1ZGlvLXBsYXllci10aW1lIHtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxNXB4O1xuXG4gICAgLmljb24tcGxheS1ncmVlbiB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxMHB4O1xuICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAucGxheWluZyAmIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTIzXCI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgdGltZSB7XG4gICAgICAgIGNvbG9yOiAjOTI5ODk4O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIC5hdWRpby1wb2RjYXN0LS1uby1iYXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXVkaW8tcG9kY2FzdC0tbm8tYmFyIHtcbiAgICAuYXVkaW8tcGxheWVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICAgICAgaGVpZ2h0OiAyOHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmp3cGxheWVyLmp3LXJlc2V0IHtcbiAgICAgICAgICAgIHdpZHRoOiA2NXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5qdy13cmFwcGVyLmp3LXJlc2V0IHtcbiAgICAgICAgICAgIHdpZHRoOiA4NXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5hdWRpby1wbGF5ZXIgLmp3LXNsaWRlci10aW1lLmp3LXJlc2V0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmJsb2NrLXdyYXBwZXIgJiB7XG4gICAgICAgIC5wb2RjYXN0LWxhYmVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5hdXRob3ItbmFtZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogIzk2OTY5NjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGg0IHtcbiAgICAgICAgW2xhbmc9XCJhclwiXSAmLFxuICAgICAgICBbZGlyPVwibHRyXCJdICYge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpY2stZG90cyB7XG4gICAgICAgIGJvdHRvbTogLTM1cHg7XG4gICAgfVxuXG4gICAgJi5vYmplY3RzLWxpc3Qge1xuICAgICAgICAmLmhhcy1zZXBhcmF0b3Ige1xuICAgICAgICAgICAgLm9iamVjdC1pdGVtIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5ibG9jay13cmFwcGVyICYge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXVkaW8tcG9kY2FzdCB7XG4gICAgJHNlbGY6ICY7XG4gICAgLnJvdW5kIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiA3OXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA3OXB4O1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICBjb2xvci1zY2hlbWU6IG9ubHkgbGlnaHQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi0tbm8tYmFyIHtcbiAgICAgICAgLnJvdW5kIHtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDU4LjMzcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1OC4zM3B4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYtLWJvdHRvbSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAgICAgICAgIGhlaWdodDogMjhweDtcbiAgICAgICAgfVxuICAgICAgICAuYXVkaW8tcG9kY2FzdC0tbm8tYmFyICYge1xuICAgICAgICAgICAgLmF1ZGlvLXBsYXllciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIC0tLS0tLS0gQVVESU8gUExBWUVSIFdJREdFVCAtLS0tLS0tIEVORCAtLS0tLS0tLSAqL1xuIiwiLnRvdGFsLWl0ZW1zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4udG90YWwtaXRlbSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogMjBweDtcbiAgICB9XG4gICAgcCB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG4udG90YWwtY291bnQge1xuICAgIGZvbnQtc2l6ZTogMzkuMDZweDtcbiAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICBmb250LXNpemU6IDYxLjA0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA2NnB4O1xuICAgIH1cbn1cblxuLmZpZ3VyZXMtY29udGVudCB7XG4gICAgdWwge1xuICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZmFjdHMge1xuICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgLmZhY3QtbGJsIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTIwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5maWVsZHMge1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMjtcbiAgICAtbW96LWNvbHVtbi1jb3VudDogMjtcbiAgICBjb2x1bW4tY291bnQ6IDI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMztcbiAgICAgICAgLW1vei1jb2x1bW4tY291bnQ6IDM7XG4gICAgICAgIGNvbHVtbi1jb3VudDogMztcbiAgICB9XG4gICAgbGkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxLjVyZW07XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMjByZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5oZXJvLWFib3V0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWJvdXQxO1xuICAgIHBhZGRpbmc6IDM5cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYWJvdXQtZW50cnkge1xuICAgIG1hcmdpbi10b3A6IDUzcHg7XG4gICAgJl9fc2VjdGlvbiB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGdhcDogMjNweDtcbiAgICAgICAgfVxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRBMzAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1wYXJ0bmVycyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLS1tYWluIHtcbiAgICAgICAgICAgIC5hYm91dC1lbnRyeV9fdGl0bGUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICAgICAgd2lkdGg6IDIzMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHdpZHRoOiAzMzBweDtcbiAgICAgICAgfVxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzEuMjVweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDNweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIH1cbiAgICAgICAgJi1pbm5lciB7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMzVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFib3V0LXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDYwcHggMDtcbiAgICAmLmFib3V0LWVkaXRvcnMge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhYm91dDI7XG4gICAgfVxuXG4gICAgJi5hYm91dC1zaXRlcyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmLmFib3V0LXByb2R1Y3RzLFxuICAgICYuYWJvdXQtYWRzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFib3V0MjtcbiAgICB9XG5cbiAgICAmX190aXRsZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzEuMjVweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzN3B4O1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDQ4LjgzcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDUzcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4OTBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fZGVzYyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHdpZHRoOiA4OTBweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2hpZWYtaXRlbXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAyMHB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAgIGdhcDogNDVweDsgXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBmbGV4LWZsb3c6IG5vd3JhcDtcbiAgICAgICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICAgICAgICBzY3JvbGwtc25hcC10eXBlOiB4IG1hbmRhdG9yeTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7IFxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMTBweDtcbiAgICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAyMHB4O1xuXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gICAgICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTtcblxuICAgICAgICA+IC5jaGllZi1pdGVtIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMjhweDtcbiAgICAgICAgICAgIHNjcm9sbC1zbmFwLWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgfVxuICAgIH0gXG59XG5cbi5jaGllZi1pdGVtIHtcbiAgICAmX19pbWcge1xuICAgICAgICB3aWR0aDogMTkwcHg7XG4gICAgICAgIGhlaWdodDogMTkwcHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgd2lkdGg6IDEyOHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMjhweDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICB9XG4gICAgfSBcbn1cblxuLmFib3V0LXByb2R1Y3RzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgfVxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGdhcDogMjZweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMTE4cHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2Rlc2Mge1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICByb3ctZ2FwOiAyMHB4O1xuICAgICAgICAgICAgICAgIGNvbHVtbi1nYXA6IDQwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzM3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFib3V0LXBhcnRuZXJzIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiA1MnB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxufVxuXG4uYWJvdXQtYWRzIHtcbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBnYXA6IDgycHg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW1nIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICAgICAgZmxleDogMSAwIDUwJTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2Rlc2Mge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgLmljb21vb24taWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRBMzAwO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRBODAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzNnB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDM2cHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBnYXA6IDMwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLndyaXRlcnMtbGlzdC5zbGlkZXItdjEge1xuICAgIC5tZWRpYS1vYmplY3QtaW1nIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiA1OC4zM3B4O1xuICAgICAgICAgICAgaGVpZ2h0OiA1OC4zM3B4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ud3JpdGVycy1saXN0cyB7XG4gICAgLndyaXRlcnMtbGlzdCB7XG4gICAgICAgICZfX2l0ZW0ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcblxuICAgICAgICAgICAgLm1lZGlhLW9iamVjdCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgICAgICYtaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA3NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA3NXB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKG1heC13aWR0aDogMTE4MXB4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDU1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDU1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIucGF0aC1wZXJzb25hbGl6ZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnBhdGgtam91cm5leSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJEE1MDsgXG5cbiAgICAvL2JhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWxpZ2h0O1xuICAgICNtYWluLXdyYXAgLmNvbnRhaW5lciB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byAxZnIgYXV0bztcbiAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICAgIFwiaGVhZGVyXCJcbiAgICAgICAgXCJtYWluXCJcbiAgICAgICAgXCJmb290ZXJcIjtcblxuICAgICAgPiBoZWFkZXIge1xuICAgICAgICBncmlkLWFyZWE6IGhlYWRlcjtcbiAgICAgIH1cbiAgICAgID4gbWFpbixcbiAgICAgID4gLmRpYWxvZy1vZmYtY2FudmFzLW1haW4tY2FudmFzIHtcbiAgICAgICAgZ3JpZC1hcmVhOiBtYWluO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICA+IG1haW4ge1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICA+ICNyb290IHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICA+IGZvb3RlciB7XG4gICAgICAgIGdyaWQtYXJlYTogZm9vdGVyO1xuICAgICAgfVxuICAgIH1cblxuXG4gICAgLy8gJi50b29sYmFyLXRyYXktb3BlbiB7XG4gICAgLy8gICAjbWFpbi13cmFwIC5jb250YWluZXIge1xuICAgIC8vICAgICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgIC8vICAgICAgIFwiaGVhZGVyXCJcbiAgICAvLyAgICAgICBcInRvb2xiYXJcIlxuICAgIC8vICAgICAgIFwiZGlhbG9nXCJcbiAgICAvLyAgICAgICBcIm1haW5cIlxuICAgIC8vICAgICAgIFwiZm9vdGVyXCI7XG5cbiAgICAvLyAgICAgPiAjdG9vbGJhci1hZG1pbmlzdHJhdGlvbiB7XG4gICAgLy8gICAgICAgZ3JpZC1hcmVhOiB0b29sYmFyO1xuICAgIC8vICAgICB9XG5cbiAgICAvLyAgICAgPiAuZGlhbG9nLW9mZi1jYW52YXMtbWFpbi1jYW52YXMge1xuICAgIC8vICAgICAgIGdyaWQtYXJlYTogZGlhbG9nO1xuICAgIC8vICAgICB9XG4gICAgLy8gICB9XG4gICAgLy8gfVxufVxuXG4ucGF0aC1qb3VybmV5IHtcbiAgICAubWFpbi1oZWFkZXItYmVmb3JlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxuXG4gICAgLm1haW4taGVhZGVyLWlubmVyIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5tYWluLWhlYWRlci1iZWZvcmUtLWxlZnR7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgIC5tYWluLWhlYWRlci1iZWZvcmUtY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICAubG9nbyB7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIC8vIHBhZGRpbmc6IDM3cHggMCAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNraXAtYnRuIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAxcHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnJldHVybi1idG4ge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wZXJzb25hbC13cmFwIHtcbiAgICAgICAgLnBlcnNvbmFsLW1lc3NhZ2Uge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA1MTBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDJweDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5hY3Rpb24tYnRuIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGF1dG87XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNjNweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9ncmVzcy1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLnByb2dyZXNzLWNvbnRhaW5lcjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzA3MDcwO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgIH1cblxuICAgIC5wcm9ncmVzcyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpbmUtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1OCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgdHJhbnNpdGlvbjogMC40cyBlYXNlO1xuICAgICAgICB3aWR0aDogMCU7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgIH1cblxuICAgIC5wcm9ncmVzcy1jaXJjbGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzNjM2MzO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IDAuNHMgZWFzZTtcbiAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgfVxuXG4gICAgLnByb2dyZXNzLWNpcmNsZS5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICB9XG5cbiAgICAuZnVuY3Rpb24taW5mbyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICBjb2xvcjogIzRkNGQ0ZDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5jb29raWUtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkQTMwMDsgXG4gICAgJi0tc21hbGwge1xuICAgICAgICB3aWR0aDogMzk2cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHggMjBweCAwcHggMHB4O1xuICAgICAgICBwYWRkaW5nOiAyNHB4O1xuICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAyOXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tbGFyZ2Uge1xuICAgICAgICB6LWluZGV4OiA5OTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwOyBcbiAgICAgICAgcGFkZGluZzogMjRweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4IDIwcHggMHB4IDBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHg7IFxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvb2tpZS1jbG9zZSB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMjBweDtcbiAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNXB4OyBcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYWN0aW9ucyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgLmNvb2tpZS1vdmVybGF5LS1zbWFsbCAmIHtcbiAgICAgICAgICAgIGdhcDogMTZweDtcbiAgICAgICAgfVxuICAgICAgICAuY29va2llLW92ZXJsYXktLWxhcmdlICYge1xuICAgICAgICAgICAgZ2FwOiAxNnB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgICAgICAgICBnYXA6IDIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDsgXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICB3aWR0aDogMTYycHg7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG5cbiAgICAgICAgICAgICYuYnRuLWRpc2FncmVlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIC0tLS0tIExpdmUgYmxvZyBsaXN0IHN0eWxlcyAtLS0tLS0gU1RBUlQgLS0tLS0tICovXG4ubGl2ZS10aWNrZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIzcHg7XG4gICAgfVxuICAgIC5saXZlLXRpY2tlci10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxNXB4O1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTVweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgdG9wOiA4cHg7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgIGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmxpdmUtdGlja2VyLXRpbWUge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA1cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4ubGl2ZS1ibG9nIHtcbiAgICAuQ2FwdGlvbixcbiAgICAuY29udGVudCB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgLlZvdGUge1xuICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2NyYmJsLXNpdGVQcmV2aWV3IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgIH1cblxuICAgIC5sYWJlbC5icmVha2luZy1uZXdzIHtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogNC8zO1xuICAgICAgICAgICAgLW8tb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hcnRpY2xlLWl0ZW0tdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICBoMSxcbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzMCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzOCk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmFydGljbGUtaXRlbS1jb250ZW50IHAge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgfVxuXG4gICAgLmVudHJ5LWhpZ2hsaWdodCB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGNkZmRmO1xuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDE1cHg7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgICAgIHRvcDogOXB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVyby10b3Age1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmFydGljbGUtaXRlbSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYXJ0aWNsZS1pdGVtLWluZm8ge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuYXJ0aWNsZS1pdGVtLXRpdGxlIHtcbiAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMyKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNDgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi5saXZlLWFydGljbGUtbWV0YSB7XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIC5hcnRpY2xlLWl0ZW0tbWV0YSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuLmxpdmVibG9nLWNhcHN1bGUge1xuICAgIC8vbWFyZ2luOiAwIGF1dG8gMC41cmVtO1xuICAgIC8vcGFkZGluZzogMCAxcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXIoKTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59XG5cbi5saXZlYmxvZy1jYXBzdWxlIC5pbm5lciB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMjBweCAxNnB4O1xuICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG59XG5cbi5saXZlYmxvZy1jYXBzdWxlLmFjdGl2ZSAuaW5uZXIge1xuICAgIGJhY2tncm91bmQ6ICNmZmZkMzg7XG59XG5cbi5saXZlYmxvZy1jYXBzdWxlIHNwYW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogOHB4O1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxNnB4O1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9pY29uLWxpdmUtYmxvZy5wbmcpIG5vLXJlcGVhdCA1MCU7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA4cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmJvZHkuYXJ0aWNsZS1saXZlYmxvZyB7XG4gICAgLmVudHJ5LWFydGljbGUtbGl2ZWJsb2cge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2RhZGZlMTtcbiAgICAgICAgcGFkZGluZy10b3A6IDE4cHg7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDEycHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5saXZlYmxvZyAuY29udGVudCB7XG4gICAgcGFkZGluZzogMjBweCAxLjhyZW0gMjBweCAyMHB4O1xuICAgIGJvcmRlci0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDRyZW0gMjBweCAyMHB4O1xuICAgIH1cblxuICAgIGRpdiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpOm5vdCg6b25seS1jaGlsZCk6bm90KDplbXB0eSk6bm90KC5MaW5rSW1hZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgPiBpbWcge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICB9XG5cbiAgICAudHdpdHRlci13aWRnZXQge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gICAgaDEsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5MaW5rRGVzY3JpcHRpb24ge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgfVxuXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZzogMi4yNXJlbSAzLjVyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwi4oCcXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IDEwcHg7XG4gICAgICAgICAgICBsZWZ0OiA1cHg7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDY2KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb250ZW50OiBcIuKAnFwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDY2KTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAucm93IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBoMiB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xcmVtO1xuICAgICAgICB9XG4gICAgICAgIC5jb2wtbWQtMyB7XG4gICAgICAgICAgICB3aWR0aDogMjAlO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgLmNvbC1tZC05IHtcbiAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnlvdXR1YmUtcG9zdCB7XG4gICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMzgwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaWZyYW1lLFxuICAgIG9iamVjdCxcbiAgICBlbWJlZCB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuandwbGF5ZXIge1xuICAgICAgICBoZWlnaHQ6IDE3M3B4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICAgICAgaGVpZ2h0OiAzODBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxpdmVibG9nIC5saXZlYmxvZy1jb250ZW50IC5jb250ZW50LFxuLmxiLWl0ZW1zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5sYi1pdGVtcyB7XG4gICAgdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxufVxuXG4ubGItaXRlbSB7XG4gICAgY29sb3I6ICRibGFjaztcbn1cblxuLlJlY2VudFBvc3RzV2lkZ2V0IHtcbiAgICBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIC5wb3N0LWRhdGUge1xuICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4IDAgMDtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5saXZlYmxvZyAubGl2ZWJsb2ctY29udGVudDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogNjhweDtcbiAgICBtYXJnaW46IDA7XG59XG5cbi5saXZlYmxvZyAucG9zdC1kYXRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMjBweCAyMHB4IDE1cHggMDtcbiAgICBjb2xvcjogIzg4ODtcbn1cblxuLmxpdmVibG9nIC5wb3N0LWRhdGU6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMjVweDtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAtMS41cmVtO1xuICAgIHdpZHRoOiAxMHB4O1xuICAgIGhlaWdodDogMTBweDtcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbn1cblxuLmxpdmVibG9nIC5wb3N0LWRhdGUgdGltZSB7XG4gICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDhweDtcbn1cblxuLmxpdmVibG9nIC5wb3N0LWZvb3RlciB7XG4gICAgcGFkZGluZzogMTZweCAyMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDFweCAxcHg7XG59XG5cbi5saXZlYmxvZyAucG9zdC1mb290ZXIgdWwge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4ubGl2ZWJsb2cgLnBvc3QtZm9vdGVyIHVsIGxpLmF1dGhvci1uYW1lIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5saXZlYmxvZyAucG9zdC1mb290ZXIgdWwgbGk6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xufVxuXG4ubGl2ZWJsb2cgLnBvc3QtZm9vdGVyIHVsIGxpIHtcbiAgICBwYWRkaW5nOiAwIDhweDtcblxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cblxuLmxpdmVibG9nIC5wb3N0LWZvb3RlciB1bCBsaTpsYXN0LWNoaWxkIHtcbiAgICBjb2xvcjogIzg4ODtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5saXZlYmxvZyAucG9zdC1mb290ZXIgdWwgbGk6bGFzdC1jaGlsZDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwifFwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IC0xcHg7XG59XG5cbiNsaXZlLWxpc3QtdXBkYXRlLWJ1dHRvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAyMHB4IGF1dG87XG4gICAgYmFja2dyb3VuZDogI2ZmY2Q1MDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZzogM3B4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiA1MThweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTE5NTtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuXG4gICAgI2xpdmUtbGlzdC11cGRhdGUtYnV0dG9uIC51cGRhdGUtdGV4dCB7XG4gICAgICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxuXG4gICAgLmljb24tcmVmcmVzaCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMHB4O1xuICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIGZpbGw6ICRibGFjaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxpdmVibG9nIC5wYWdpbmF0aW9uLXdyYXBwZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICAucGFnaW5hdGlvbiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIG1hcmdpbjogMzBweCAwIDA7XG4gICAgICAgIC8vIGJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLnByZXYge1xuICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAubmV4dCB7XG4gICAgICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNob3J0Y3V0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgICAgID4gKiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNzdGFydC1saXZlIHtcbiAgICBvdmVyZmxvdzogY2xpcDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXRvcDogM3JlbTtcbn1cblxuI2hlcm8tc2lkZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgIHRvcDogNTBweDtcbiAgICB9XG4gICAgLmFydGljbGUtaXRlbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuICAgIC5hcnRpY2xlLWl0ZW0tdGl0bGUge1xuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmFydGljbGUtaXRlbS1jb250ZW50IHtcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiAtLS0tLSBMaXZlIGJsb2cgbGlzdCBzdHlsZXMgLS0tLS0tIEVORCAtLS0tLS0gKi9cbiIsIi8qIC0tLS0tLS0gR0FNRVMgLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuLmdhbWUtcGFnZSB7XG4gICAgaGVhZGVyLFxuICAgIGZvb3RlcixcbiAgICAuaGVhZGVyLXRhZy13cmFwLFxuICAgIC5wYWdlLWluZGljYXRvcixcbiAgICAuZ2FtZS1iYW5uZXIge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5nYW1lcy1lbnRyaWVzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgIH0gXG59XG5cbi5nYW1lcy1wbGF5IHtcbiAgICBpZnJhbWV7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNThweCk7XG4gICAgICAgIH1cbiAgICB9XG4gICBcbn1cbi5nYW1lcy1pdGVtIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgLy8gJjphZnRlciB7XG4gICAgICAgIC8vICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAvLyAgIGJvdHRvbTogMDtcbiAgICAgICAgLy8gICBsZWZ0OiAwO1xuICAgICAgICAvLyAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIC8vICAgYmFja2dyb3VuZC1jb2xvcjogJHNlcGFyYXRvci1jb2xvcjtcbiAgICAgICAgLy8gICBoZWlnaHQ6IDFweDtcbiAgICAgICAgLy8gICB3aWR0aDogMTAwJTtcbiAgICAgICAgLy8gICAudmVydGljYWwtc2VwYXJhdG9yICYge1xuICAgICAgICAvLyAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIC8vICAgfVxuICAgICAgICAvLyB9XG4gICAgfVxuICAgIC5nYW1lcy1ncmlkICYge1xuICAgICAgICBwYWRkaW5nOiAyLjVyZW07XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbiAgICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZzogM3JlbSAxMHJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAucGF0aC1mcm9udHBhZ2UgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbiAgICAgICAgcGFkZGluZzogMnJlbTtcbiAgICB9XG59XG5cbi5nYW1lcy1ncmlkIHtcbiAgICAuYXJ0aWNsZS1pdGVtLW1ldGEge1xuICAgICAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgIH1cbiAgICAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTRweDtcbiAgICB9XG4gICAgLmdhbWUtaW1nIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMjhweDtcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmdhbWUtaW1nIHtcbiAgICA+IGE6aG92ZXI6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5nYW1lcy1ncmlkICYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0NHB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmdhbWUtYmFubmVyICYge1xuICAgIH1cbiAgICAvLyAmLmFydGljbGUtaXRlbS1pbWd7XG4gICAgLy8gICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuICAgIC8vICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1MSwgMjUzLCAyNTMsIC40MCk7XG4gICAgLy8gICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAvLyAgICAgcGFkZGluZzogMnJlbTtcbiAgICAvLyAgICAgd2lkdGg6IDEwMCU7XG4gICAgLy8gICB9XG4gICAgLy8gfVxufVxuLmdhbWUtYmFubmVyIHtcbiAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBoZWlnaHQ6IDI2NXB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgICAmLnN0eWxlLTEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjA2NTJlO1xuICAgICAgICAvLyBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAvLyBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAvLyBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDJyZW07XG4gICAgICAgICAgICAvL3BhZGRpbmc6IDEuNXJlbSA1cmVtIDEuNXJlbSAxLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5zdHlsZS0yIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTEsIDI1MywgMjUzLCAwLjQpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAycmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmdhbWUtaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDJyZW07XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMjdweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5nYW1lLXRpdGxlIHtcbiAgICBoMSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LXNpemU6IDU1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIC5sZXZlbCB7XG4gICAgICAgIGNvbG9yOiAkZXJyb3I7XG4gICAgfVxuXG4gICAgLy8gICAuZ2FtZS1iYW5uZXIuc3R5bGUtMSAme1xuICAgIC8vICAgICBtYXJnaW4tcmlnaHQ6IC01cmVtO1xuICAgIC8vICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIC8vICAgICBoMntcbiAgICAvLyAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcbiAgICAvLyAgICAgICAgIGZvbnQtc2l6ZTogNDhweDtcbiAgICAvLyAgICAgICB9XG4gICAgLy8gICAgIH1cbiAgICAvLyAgIH1cbiAgICAvLyAgIC5nYW1lLWJhbm5lci5zdHlsZS0yICZ7XG4gICAgLy8gICAgIGgye1xuICAgIC8vICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgIC8vICAgICAgICAgZm9udC1zaXplOiAzM3B4O1xuICAgIC8vICAgICAgIH1cbiAgICAvLyAgICAgfVxuICAgIC8vICAgfVxuICAgIC8vICAgc3BhbntcbiAgICAvLyAgICAgY29sb3I6ICNGMjdGNUQ7XG4gICAgLy8gICB9XG59XG4uZ2FtZXMtbGlzdCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgIH1cbn1cblxuLmdhbWVzLWVudHJpZXMge1xuICAgIC5wYWdlLWNhdGVnb3J5IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG59XG5cbi5nYW1lLXBsYXkge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBoMSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI3cHg7XG4gICAgICAgIH1cbiAgICAgICAgLmdhbWUtaW1nIHtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xuICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3MnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgIH1cbiAgICAgICAgLmdhbWUtdGl0bGUge1xuICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5nYW1lcy1iYW5uZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmdhbWUtYXV0aG9yLWluZm8ge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG59XG4uZ2FtZS1saXN0LWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMi41cmVtIDFyZW0gMDtcbiAgICB9XG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZXBhcmF0b3ItY29sb3I7XG4gICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxufVxuLmdhbWVsaXN0LWl0ZW0taW5mbyB7XG4gICAgaDIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICB9XG59XG4uZ2FtZWxpc3QtaXRlbS1pbWcge1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xufVxuLmdhbWUtZ290byB7XG4gICAgcGFkZGluZzogMnJlbSAzcmVtO1xuICAgIGNvbG9yOiAkZ3JheTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi8vZ2FtZXMgbW9iaWxlIG9ubHkgbW9kYWxcblxuLmdhbWUtcG9wdXAtbW9kYWwge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iYWNrZ3JvdW5kLWNvbG9yO1xuICAgIC5nYW1lLW1vZGFsLWJvZHkge1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgIGlmcmFtZSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNTdweCkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi5nYW1lLW1vZGFsLWhlYWRlcixcbi5nYW1lLWhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIHBhZGRpbmc6IDE2cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAucmV0dXJuLWJ0biB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgXG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nOiAwLjhlbTtcbiAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuLmdhbWUtbW9kYWwtdGl0bGUsXG4uZ2FtZS1oZWFkZXIge1xuICAgIGgzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG5cbi5nYW1lLW1vZGFsLXdyYXAge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMDtcbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgICAubW9kYWwtdHJhbnNpdGlvbiB7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIC0tLS0tLS0gR0FNRVMgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cbiIsIi5mbGV4LWVxdWFsIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIC5oZXJvLW1haW4gJiB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAmLmFydGljbGVzLWdyaWQge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgICAgICAgLy8gZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIC8vIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIC8vIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIC8vIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICAuaGVyby1tYWluICYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmFydGljbGUtaXRlbS1jb250ZW50IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICAuYXJ0aWNsZS1pdGVtLWluZm8ge1xuICAgICAgICAgICAgLy8gZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIC8vIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIC8vIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAvLyBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAvLyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgLmFydGljbGUtaXRlbS1tZXRhIHtcbiAgICAgICAgICAgICAgICAvL21hcmdpbi10b3A6IGF1dG87XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5hcnRpY2xlLWl0ZW0tdGl0bGUge1xuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vbGFyZ2UgaXRlbSB3aXRoIGdyaWRzXG4ubGctdy1ncmlkLWJvcmRlciB7XG4gICAgPiBkaXYge1xuICAgICAgICAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkMWQ1ZDU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZ3JpZC1pdGVtcyB7XG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZDFkNWQ1O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgICAgICAgICAmOm50aC1sYXN0LWNoaWxkKDIpIC5hcnRpY2xlLWl0ZW0sXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyB2ZXJ0aWNhbCBsaW5lIG9uIGl0ZW1zXG4gICAgICAgICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjYWNhO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMSU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxLjNweDtcbiAgICAgICAgICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogLTIwLjVweDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hcnRpY2xlcy1pdGVtLWxpc3Qge1xuICAgID4gZGl2IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIC8vZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBsZWZ0VGh1bWJJbWc7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmxvY2std3JhcHBlciAmIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICAgICAgLmFydGljbGUtaXRlbSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG5cbiAgICAgICAgICAgICAgICAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubGFiZWwge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaGFzLXNlcGFyYXRvci1ncmlkIHtcbiAgICAmLmdyaWQtaXRlbXMge1xuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gZGl2IC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAgICAgICA+IGRpdjpudGgtbGFzdC1jaGlsZCgyKSAuYXJ0aWNsZS1pdGVtLFxuICAgICAgICAgICAgPiBkaXY6bGFzdC1jaGlsZCAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi52ZXJ0aWNhbC1zZXBhcmF0b3Ige1xuICAgID4gZGl2IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjYWNhO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IC0yMC41cHg7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuXG4gICAgICAgICAgICAgICAgLm1haW4tY29udGFpbmVyID4gJiB7XG4gICAgICAgICAgICAgICAgICAgIC8vIHRvcDogM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuc21hbGwtZ3JpZC1jb2xsYXBzZSA+ICYge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaGFzLXNlcGFyYXRvci1ncmlkIHtcbiAgICAgICAgPiBkaXY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5ncmlkLWNvbHVtbi0yIHtcbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuZ3JpZC1jb2x1bW4tNCB7XG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDRuKSB7XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaGVyby13cmFwLFxuICAgICYuZ3JpZC1jb2x1bW4sXG4gICAgJi52aWRlby1zZWN0aW9uLFxuICAgICYubWFpbixcbiAgICAmLmxnLXctZ3JpZC1ib3JkZXIge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIGFydGljbGUgZ3JpZCBzdWNoIGFzIGNhdGVnb3J5Lmh0bWxcbiAgICAmLmFydGljbGVzLWdyaWQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICAgICAgLy8gJjpudGgtY2hpbGQoZXZlbil7XG4gICAgICAgICAgICAgICAgLy8gICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICAgICAgLy8gICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAvLyAgICAgfVxuICAgICAgICAgICAgICAgIC8vIH1cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259IGlzIG9uZSBhcnRpY2xlIGl0ZW0gd2hpbGUgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufSBpcyBsaXN0IG9mIGFydGljbGUgaXRlbSB0aXRsZVxuLmdyaWQtc3R5bGUtdjIge1xuICAgID4gZGl2IHtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NhY2FjYTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEuM3B4O1xuICAgICAgICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IC0xcmVtO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmdyaWQtaXRlbXMge1xuICAgICAgICA+IC5jZWxsOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZ3JpZC1pdGVtcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICAgICAvLyBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgICAgICAgICAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuMjVyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMS41cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgZmxvYXQ6ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn07XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZ3JpZC1jb2x1bW4ge1xuICAgID4gLmNlbGw6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1haW4taXRlbSB7XG4gICAgICAgIC5hcnRpY2xlLWl0ZW0tY29udGVudCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5ncmlkLWNvbHVtbi0yIHtcbiAgICAvLyAuc2VjdGlvbi13cmFwcGVyIHtcbiAgICAvLyAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgLy8gICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgLy8gICAgIH1cbiAgICAvLyB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZ2FwOiAxLjVyZW07XG4gICAgfVxuXG4gICAgPiAuY2VsbDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgLnNlY3Rpb24td3JhcHBlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHNlcGFyYXRvci1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tZWRpYS1hcnRpY2xlLWxpc3Qge1xuICAgICAgICA+IC5hcnRpY2xlLWxpc3QtaXRlbTpudGgtY2hpbGQoMSkgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkLFxuICAgICAgICA+IC5hcnRpY2xlLWxpc3QtaXRlbTpudGgtY2hpbGQoMikgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIC8vbWluLWhlaWdodDogMTA5cHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNtLXNlcGFyYXRvciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgIH1cbn1cblxuLmFydGljbGVzLWdyaWQge1xuICAgIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaGFzLXNlcGFyYXRvciB7XG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuXG4gICAgICAgICAgICAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHNlcGFyYXRvci1jb2xvcjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgICAgICAgICAgICAgICRjb2x1bW5zOiAxO1xuICAgICAgICAgICAgICAgICRmaXJzdC1jaGlsZC1pbi1hbnktcm93OiBcIjpudGgtY2hpbGQoI3skY29sdW1uc31uICsgMSlcIjtcblxuICAgICAgICAgICAgICAgICRhbnktY2hpbGQtaW4tdGhlLWxhc3Qtcm93OiBcIjpudGgtbGFzdC1jaGlsZCgtbiArICN7JGNvbHVtbnN9KVwiO1xuXG4gICAgICAgICAgICAgICAgJGZpcnN0LWNoaWxkLWluLWxhc3Qtcm93OiBcIiYjeyRmaXJzdC1jaGlsZC1pbi1hbnktcm93fSN7JGFueS1jaGlsZC1pbi10aGUtbGFzdC1yb3d9XCI7XG5cbiAgICAgICAgICAgICAgICAjeyRmaXJzdC1jaGlsZC1pbi1sYXN0LXJvd306bm90KC5oaWRlLWZvci1sYXJnZSksXG4gICAgICAgICAgICAgICAgI3skZmlyc3QtY2hpbGQtaW4tbGFzdC1yb3d9Om5vdCguaGlkZS1mb3ItbGFyZ2UpIH4gLmNlbGwge1xuICAgICAgICAgICAgICAgICAgICAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICRjb2x1bW5zOiAyO1xuICAgICAgICAgICAgICAgICRmaXJzdC1jaGlsZC1pbi1hbnktcm93OiBcIjpudGgtY2hpbGQoI3skY29sdW1uc31uICsgMSlcIjtcblxuICAgICAgICAgICAgICAgICRhbnktY2hpbGQtaW4tdGhlLWxhc3Qtcm93OiBcIjpudGgtbGFzdC1jaGlsZCgtbiArICN7JGNvbHVtbnN9KVwiO1xuXG4gICAgICAgICAgICAgICAgJGZpcnN0LWNoaWxkLWluLWxhc3Qtcm93OiBcIiYjeyRmaXJzdC1jaGlsZC1pbi1hbnktcm93fSN7JGFueS1jaGlsZC1pbi10aGUtbGFzdC1yb3d9XCI7XG5cbiAgICAgICAgICAgICAgICAjeyRmaXJzdC1jaGlsZC1pbi1sYXN0LXJvd306bm90KC5oaWRlLWZvci1sYXJnZSksXG4gICAgICAgICAgICAgICAgI3skZmlyc3QtY2hpbGQtaW4tbGFzdC1yb3d9Om5vdCguaGlkZS1mb3ItbGFyZ2UpIH4gLmNlbGwge1xuICAgICAgICAgICAgICAgICAgICAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgJGNvbHVtbnM6IDM7XG4gICAgICAgICAgICAgICAgJGZpcnN0LWNoaWxkLWluLWFueS1yb3c6IFwiOm50aC1jaGlsZCgjeyRjb2x1bW5zfW4gKyAxKVwiO1xuXG4gICAgICAgICAgICAgICAgJGFueS1jaGlsZC1pbi10aGUtbGFzdC1yb3c6IFwiOm50aC1sYXN0LWNoaWxkKC1uICsgI3skY29sdW1uc30pXCI7XG5cbiAgICAgICAgICAgICAgICAkZmlyc3QtY2hpbGQtaW4tbGFzdC1yb3c6IFwiJiN7JGZpcnN0LWNoaWxkLWluLWFueS1yb3d9I3skYW55LWNoaWxkLWluLXRoZS1sYXN0LXJvd31cIjtcblxuICAgICAgICAgICAgICAgICN7JGZpcnN0LWNoaWxkLWluLWxhc3Qtcm93fTpub3QoLmhpZGUtZm9yLWxhcmdlKSxcbiAgICAgICAgICAgICAgICAjeyRmaXJzdC1jaGlsZC1pbi1sYXN0LXJvd306bm90KC5oaWRlLWZvci1sYXJnZSkgfiAuY2VsbCB7XG4gICAgICAgICAgICAgICAgICAgIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vaWYgYXJ0aWNsZXMtZ3JpZCBoYXMgNCBjb2x1bW5zIGluIGEgcm93XG4uYXJ0aWNsZXMtZ3JpZC5sYXJnZS11cC00IHtcbiAgICAmLmhhcy1zZXBhcmF0b3Ige1xuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgJGNvbHVtbnM6IDQ7XG4gICAgICAgICAgICAgICAgJGZpcnN0LWNoaWxkLWluLWFueS1yb3c6IFwiOm50aC1jaGlsZCgjeyRjb2x1bW5zfW4gKyAxKVwiO1xuXG4gICAgICAgICAgICAgICAgJGFueS1jaGlsZC1pbi10aGUtbGFzdC1yb3c6IFwiOm50aC1sYXN0LWNoaWxkKC1uICsgI3skY29sdW1uc30pXCI7XG5cbiAgICAgICAgICAgICAgICAkZmlyc3QtY2hpbGQtaW4tbGFzdC1yb3c6IFwiJiN7JGZpcnN0LWNoaWxkLWluLWFueS1yb3d9I3skYW55LWNoaWxkLWluLXRoZS1sYXN0LXJvd31cIjtcblxuICAgICAgICAgICAgICAgICN7JGZpcnN0LWNoaWxkLWluLWxhc3Qtcm93fTpub3QoLmhpZGUtZm9yLWxhcmdlKSxcbiAgICAgICAgICAgICAgICAjeyRmaXJzdC1jaGlsZC1pbi1sYXN0LXJvd306bm90KC5oaWRlLWZvci1sYXJnZSkgfiAuY2VsbCB7XG4gICAgICAgICAgICAgICAgICAgIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5oYXMtdG9wLXNlcGFyYXRvciB7XG4gICAgPiAuY2VsbCB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICB9XG59XG5cbi8vYWxsIGdyaWQgaXRlbXMgd2l0aCBib3JkZXItYm90dG9tXG4uYm90dG9tLWJvcmRlciB7XG4gICAgJi5ncmlkLWl0ZW1zIHtcbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgPiAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnRvcC1ib3JkZXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG59XG4iLCIvKiBEcnVwYWwgYWRtaW4gc3R5bGVzIC0tLS0tIFNUQVJUIC0tLS0tKi9cblxuYm9keSB7XG4gICAgJi51c2VyLWxvZ2dlZC1pbiB7XG4gICAgICAgIHVsLnRhYnMucHJpbWFyeSB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCA1cHggOHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxNXB4O1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYudXNlci1vcGVuIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbjtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbiAwLjJzO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi5hamF4LXByb2dyZXNzLWZ1bGxzY3JlZW4ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvbG9hZGluZy5zdmcpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5cbi8qIERydXBhbCBhZG1pbiBzdHlsZXMgLS0tLS0gRU5EIC0tLS0tKi9cblxuLmFqYXgtcHJvZ3Jlc3Mge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIG1hcmdpbjogMTBweCBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbioge1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG46Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG59XG46Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlcjogMDtcbn1cblxuLnNob3ctZm9yLXByaW50YWJsZS1hcmVhIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG5pbnB1dCB7XG4gICAgJi5yYWRpdXMsXG4gICAgLmlucHV0LWdyb3VwID4gJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICB9XG5cbiAgICAuc2VhcmNoLWZvcm0gJiB7XG4gICAgICAgICYuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbnRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IDEwcmVtO1xufVxuXG5hIHtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyBlYXNlIDBzLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2UgMHMsIG9wYWNpdHkgMC4yNXMgZWFzZSAwcztcblxuICAgICYuaG92ZXJlZCB7XG4gICAgICAgIGNvbG9yOiAkbmV2YWRhO1xuICAgIH1cblxuICAgICYuY2xhc3NpYyB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5vZmYtY2FudmFzIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG59XG5cbmJ1dHRvbixcbi5idXR0b24ge1xuICAgICYuZ3JheS5ob2xsb3cge1xuICAgICAgICBjb2xvcjogJGdyYXk7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubGlnaHQtZ3JlZW4ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNmNGYzO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5yYWRpdXMge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgfVxuICAgICYucHJpbWFyeSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxufVxuXG4uYnV0dG9uLnByaW1hcnk6aG92ZXIsXG4uYnV0dG9uLnByaW1hcnk6Zm9jdXMge1xuICAgIGNvbG9yOiAkd2hpdGU7XG59XG5cbi5idXR0b24ucHJpbWFyeS1saWdodCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktbGlnaHQ7XG4gICAgY29sb3I6ICM0ZDhhODg7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxufVxuXG4vKklDT05TKi9cblxuLmljb24tdXNlci1jaXJjbGUtbzpiZWZvcmUsXG4uaWNvbi1jaGVjay1ncmVlbjpiZWZvcmUsXG4uaWNvbi1uZXdzOmJlZm9yZSxcbi5pY29uLWVudmVsb3AxOmJlZm9yZSxcbi5pY29uLXBsdXMtZ3JlZW46YmVmb3JlLFxuLmljb24tYm9va21hcmstb3V0bGluZTpiZWZvcmUsXG4uaWNvbi10ZWxlZ3JhbTpiZWZvcmUsXG4uaWNvbi1zaGFyZTpiZWZvcmUsXG4uaWNvbi1lbnZlbG9wMjpiZWZvcmUsXG4uaWNvbi1wbGF5LWdyZWVuOmJlZm9yZSxcbi5pY29uLWNhbGVuZGFyOmJlZm9yZSxcbi5pY29uLWxpdmU6YmVmb3JlLFxuLmljb24tc2hhcmUyOmJlZm9yZSxcbi5pY29uLW1lbnU6YmVmb3JlIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLm1ldGEtaWNvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwcHg7XG5cbiAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgIH1cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yZWQtYnVsbGV0cyB7XG4gICAgbGkge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXJlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTkxNFwiOyAvKiBBZGQgY29udGVudDogXFwyMDIyIGlzIHRoZSBDU1MgQ29kZS91bmljb2RlIGZvciBhIGJ1bGxldCAqL1xuICAgICAgICAgICAgY29sb3I6ICNjZTQyNDI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogOHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICAgICAgICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgICAgICAgICAgICAgdG9wOiA3cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5kYXJrLXRoZW1lIHtcbiAgICBtYWluIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBociB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICMzODM4Mzg7XG4gICAgfVxufVxuXG4vKiBTZWFyY2ggQXJlYSBTdHlsZXMgLS0tLS0gU1RBUlQgLS0tLS0gKi9cblxuLnNlYXJjaC1mcmFtZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgfVxuICAgIGlmcmFtZSB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQwMHB4O1xuICAgIH1cbn1cbi5zZWFyY2gtYXJlYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIC5zZWFyY2gtaW5wdXQge1xuICAgICAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEuNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci10b3A6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItI3skZGVmYXVsdC1kaXJlY3Rpb259OiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk1OTU5NTtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgNXB4IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIGkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcGFkZGluZzogMC43cmVtIDA7XG4gICAgfVxuICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCIgIWltcG9ydGFudDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAuY2FudmFzLXBhbmVsICYge1xuICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICAgICAgLnNlYXJjaC1hcmVhLS1pbnB1dCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzY0N2U3YztcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNjQ3ZTdjO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbiAgICAgICAgLnNlYXJjaC1hcmVhLS1zdWJtaXQge1xuICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFyZW07XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgcGFkZGluZzogN3B4IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zZWFyY2gtYXJlYS0taW5wdXQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAyLjczNzVyZW07XG4gICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOTU5MjkyO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgY29sb3I6ICM2NDdlN2M7XG59XG5cbi5zZWFyY2gtYXJlYS0tc3VibWl0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDIycHg7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiB0cmFuc3BhcmVudDtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uc2VhcmNoLWhlYWRpbmcge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbn1cbi5zZWFyY2gtc2VjdGlvbiB7XG4gICAgY29sb3I6ICM1NTU1NTU7XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICB1bCB7XG4gICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICAgICAgICYuaG90IHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTIwXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCIgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogLTEuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjY2U0MjQyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2VhcmNoLWJ0biB7XG4gICAgLm1haW4taGVhZGVyLWlubmVyICYge1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWRhcms7XG4gICAgICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNlYXJjaC1yZXN1bHRzIHtcbiAgICAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuYXJ0aWNsZS1pdGVtLWluZm8ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5yZXN1bHQtY291bnQge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29sb3I6ICM5Mjk4OTg7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgbWFyZ2luLXRvcDogMC4zcmVtO1xufVxuXG4vKiBTZWFyY2ggQXJlYSBTdHlsZXMgLS0tLS0gRU5EIC0tLS0tICovXG5cbi5jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG5cbiAgICAvLyBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAvLyBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgLmxpdmUtbmV3czEgJiB7XG4gICAgICAgIG92ZXJmbG93LXg6IGNsaXA7XG4gICAgfVxufVxuXG5tYWluLFxuaGVhZGVyLFxuZm9vdGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbmh0bWwge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbn1cblxubWFpbiB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICAvLyAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAvLyBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTI2cHggLSA1NHB4KTtcbiAgICB9XG5cbiAgICAuZ3JpZC1jb250YWluZXIge1xuICAgICAgICAvL3BhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICAvL3BhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgLy9tYXgtd2lkdGg6IDgxcmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgLy9wYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMS41cmVtO1xuICAgICAgICAgICAgLy9wYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAvL3BhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxcmVtO1xuICAgICAgICAgICAgLy9wYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgxNDQwKSB7XG4gICAgICAgICAgICAvL3BhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxLjVyZW07XG4gICAgICAgICAgICAvL3BhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMS41cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIC8vIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgICAgICAvLyAucGF0aC1mcm9udHBhZ2UgJixcbiAgICAgICAgLy8gLm15LXByb2ZpbGUgJixcbiAgICAgICAgLy8gLnBhdGgtam91cm5leSAmLFxuICAgICAgICAvLyAudmlkZW8tZG9jdW1lbnRhcnkgJixcbiAgICAgICAgLy8gLmRhcmstdGhlbWUgJixcbiAgICAgICAgLy8gLnBhdGgtZmF2b3JpdGV0YWdzcGFnZSAmLFxuICAgICAgICAvLyAuYWJvdXQtcGFnZSAmIHtcbiAgICAgICAgLy8gICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAvLyB9XG4gICAgICAgIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAvL21heC13aWR0aDogNDgwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFyZW07XG4gICAgICAgICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG4gICAgICAgIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgICAgICAgICAvL3BhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMC43NXJlbTtcbiAgICAgICAgICAgIC8vcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDAuNzVyZW07XG4gICAgICAgICAgICAvL21heC13aWR0aDogNzAwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgYm9keTpub3QoLmFib3V0LXVzKTpub3QoLmFib3V0LXBhZ2UpOm5vdCguZGFyay10aGVtZSk6bm90KC5wYXRoLWpvdXJuZXkpOm5vdCgucGFnZS1ub2RlLXR5cGUtcG9kY2FzdCkgJiB7XG4gICAgICAgID4gZGl2OmZpcnN0LWNoaWxkOm5vdCgubmV3cy10aWNrZXItYXJlYSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb250ZW50LXdyYXAge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIH1cbn1cblxuLmRhcmstYmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgICYuZnVsbCB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHJpZ2h0OiA1MCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNTB2dztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtNTB2dztcbiAgICB9XG4gICAgLmVudHJ5LWNvbnRlbnQge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cblxuICAgIC5lbnRyeS1kYXRlIHtcbiAgICAgICAgY29sb3I6ICNkZmRmZGY7XG4gICAgfVxufVxuXG4uc2lkZWJhci13cmFwLFxuLnN0YXRpYy1jb2x1bW4td3JhcCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtYXgtd2lkdGg6IDEwMzBweCkge1xuICAgICAgICB3aWR0aDogMjUwcHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiAzMDlweDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIC5ibG9jay13cmFwcGVyIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgICAgICAgLmhlcm8tbWFpbiAmIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJsb2NrLXdyYXBwZXI6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIC8vIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICAvLyBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICB9XG59XG5cbi5zdGF0aWMtY29sdW1uLXdyYXAge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHNlcGFyYXRvci1jb2xvcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG59XG5cbi5ibG9jay13cmFwcGVyIHtcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMnB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhlcm8tbWFpbiAmIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgLy9wYWRkaW5nOiAxLjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgJiNzdGlja3ktYmxvY2sge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLWJvcmRlci10b3Age1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHNlcGFyYXRvci1jb2xvcjtcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgfVxufVxuXG4uaGVyby1tYWluIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICAubWVkaXVtLTEyLnNtYWxsLW9yZGVyLTMge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubWFpbi1pdGVtIHtcbiAgICAgICAgLmFydGljbGUtaXRlbS1pbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xcmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTFyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyOTJweDtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hcnRpY2xlLWl0ZW0tdGl0bGUge1xuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNik7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzUpO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzYpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5lbnRyeS1oaWdodGxpZ2h0IHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIH1cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgW2Rpcj1cImx0clwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGltZSB7XG4gICAgICAgICAgICBjb2xvcjogIzkyOTg5ODtcbiAgICAgICAgICAgIC8vIGJvcmRlci0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDFweCBzb2xpZCAjOTI5ODk4O1xuICAgICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogNXB4O1xuICAgICAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5Mjk4OTg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogLTFweDtcbiAgICAgICAgICAgICAgICB0b3A6IDNweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5oZXJvLWFmdGVyIHtcbiAgICBtYXJnaW4tdG9wOiAyLjVyZW07XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG59XG5cbi5zZWN0aW9uLXdyYXBwZXIge1xuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxufVxuXG4uYmxvY2stdGl0bGUsXG4uc2VjdGlvbi10aXRsZSxcbi5wYWdlLXRpdGxlLFxuLnRpdGxlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblxuICAgICYudGl0bGUtaXRhbGljIGEge1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuXG4gICAgaDEsXG4gICAgaDIsXG4gICAgaDMsXG4gICAgaDQge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNlcGFyYXRvci1jZW50ZXItYWJvdmUge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgICAgLXdlYmtpdC1mbGV4LWJhc2lzOiAwO1xuICAgICAgICAgICAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6IDA7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICAgICAgLXdlYmtpdC1ib3gtb3JkaW5hbC1ncm91cDogMjtcbiAgICAgICAgICAgIC13ZWJraXQtb3JkZXI6IDE7XG4gICAgICAgICAgICAtbXMtZmxleC1vcmRlcjogMTtcbiAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0b3A6IC0xMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDVyZW07XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwLjEyNXJlbSBzb2xpZCAkYmxhY2s7XG4gICAgICAgICAgICBtYXJnaW46IDFyZW0gYXV0byAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5zZXBhcmF0b3ItI3skb3Bwb3NpdGUtZGlyZWN0aW9ufS1hYm92ZSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgICAtd2Via2l0LWZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogMDtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgICAgICAtd2Via2l0LWJveC1vcmRpbmFsLWdyb3VwOiAyO1xuICAgICAgICAgICAgLXdlYmtpdC1vcmRlcjogMTtcbiAgICAgICAgICAgIC1tcy1mbGV4LW9yZGVyOiAxO1xuICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHRvcDogLTEwcHg7XG4gICAgICAgICAgICB3aWR0aDogOHJlbTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmxhY2s7XG4gICAgICAgICAgICBtYXJnaW46IDFyZW0gMCAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5zdHlsZS12MiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmLnN0eWxlLXYzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgIC5oZWFkLXRhYnMge1xuICAgICAgICAgICAgLnRhYnMge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnRhYnMtdGl0bGUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmF5O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXB4IHNvbGlkICRncmF5O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmF5O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFweCBzb2xpZCAkZ3JheTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmF5O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDExKTtcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgICAgICAgICAgICAgJlthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSxcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5zdHlsZS12NCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZmUzZTM7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMXJlbSAwLjVyZW07XG4gICAgfVxufVxuXG4uZWRpdG9yLWVudHJpZXMge1xuICAgIC5tYWluLWVkaXRvcnMge1xuICAgICAgICAuc2VjdGlvbi10aXRsZSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICAgICAgICB9XG4gICAgfVxuICAgIC50aXRsZSxcbiAgICAuc2VjdGlvbi10aXRsZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG59XG5cbi5zZWN0aW9uLXRpdGxlLFxuLnBhZ2UtdGl0bGUge1xuICAgICYuc3R5bGUtdjMge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDJweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGgxLFxuICAgICAgICBoMixcbiAgICAgICAgaDMsXG4gICAgICAgIGg0LFxuICAgICAgICBoNSxcbiAgICAgICAgaDYge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgLy90ZXh0LWFsaWduOiAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259O1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8qc3BhbiB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH0qL1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2VjdGlvbi10aXRsZSxcbi5ibG9jay10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyAmLmhjLXN0aWNreSB7XG4gICAgLy8gICB6LWluZGV4OiAyO1xuICAgIC8vICAgYmFja2dyb3VuZDogI2VjZjBlNztcbiAgICAvLyAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuICAgIC8vICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAvLyAgIGJveC1zaGFkb3c6IDBweCA0cHggMnB4IC0ycHggJGdyYXk7XG4gICAgLy8gfVxuXG4gICAgLmluLWZvY3VzICYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI2KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5ibG9jay10aXRsZSB7XG4gICAgaS5pY29uLWFyY2hpdmUge1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTBweDtcbiAgICB9XG59XG5cbi5wYWdlLXRpdGxlIHtcbiAgICBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICB9XG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDVweDtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjY2QyYzI0O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuc3ViaGVhZGVyIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgIH1cbn1cblxuLnNlY3Rpb24tY29udGVudCB7XG4gICAgLmMtdGFiLWNvbnRlbnRfanMgJiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5vYmplY3RzLWxpc3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAuYmxvY2std3JhcHBlciAmIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgLyoub2JqZWN0LWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgLm1lZGlhLW9iamVjdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfSovXG4gICAgfVxuXG4gICAgJi5wYWRkaW5nLWhvcml6b250YWwtMSB7XG4gICAgICAgIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogcmVtLWNhbGMoMTApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5oYXMtc2VwYXJhdG9yIHtcbiAgICAgICAgLm1lZGlhLW9iamVjdCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9iamVjdC1pdGVtIHtcbiAgICAgICAgICAgIC8vJjpub3QoOmZpcnN0LWNoaWxkKXtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICAgICAgICAgIC8vfVxuXG4gICAgICAgICAgICAmLmluY3JlYXNlZC1zcGFjZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMS41cmVtIDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIC8vcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuaW5jcmVhc2VkLXNwYWNlIHtcbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgICY6b25seS1jaGlsZDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgIH1cbn1cblxuLnNsaWNrLWRvdHMge1xuICAgIGJvdHRvbTogLTIwcHg7XG4gICAgbGkge1xuICAgICAgICB3aWR0aDogNDdweDtcbiAgICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICB3aWR0aDogNDdweDtcbiAgICAgICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ3cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VjZjRmMztcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuc2xpY2stYWN0aXZlIHtcbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNsaWRlci12MSB7XG4gICAgbWFyZ2luLXRvcDogLTEuNXJlbTtcbiAgICAuc2xpY2stbGlzdCB7XG4gICAgICAgIC8vIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgfVxuICAgIC8vIEBpbmNsdWRlIGN1c3RvbS1kb3RzO1xufVxuXG4ubWVkaWEtYXJ0aWNsZS1saXN0IHtcbiAgICBoMyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBbbGFuZz1cImZhXCJdICYsXG4gICAgICAgIFtsYW5nPVwidXJcIl0gJiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGg0IHtcbiAgICAgICAgW2xhbmc9XCJmYVwiXSAmLFxuICAgICAgICBbbGFuZz1cInVyXCJdICYge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubWVkaWEtb2JqZWN0LWltZyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBmbG9hdDogI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTtcbiAgICAgICAgICAgID4gYSA+IGltZyB7XG4gICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiA0LzM7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICAgICAgQGluY2x1ZGUgc21hbGxUaHVtYkltZztcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEyNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tZWRpYS1vYmplY3Qge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIGdhcDogMjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpub3QoOm9ubHktY2hpbGQpIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1lZGlhLW9iamVjdC1zZWN0aW9uOm9ubHktY2hpbGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgfVxuXG4gICAgLmFydGljbGUtbGlzdC1pdGVtLmhpZGUtaW1nIHtcbiAgICAgICAgLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXJ0aWNsZXMtbGlzdCB7XG4gICAgJi5oYXMtc2VwYXJhdG9yIHtcbiAgICAgICAgLm1lZGlhLW9iamVjdCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmFydGljbGUtaXRlbSxcbiAgICAgICAgICAgIC5hcnRpY2xlLWxpc3QtaXRlbSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgICAgICAgICAgIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmFydGljbGUtaXRlbS1pbmZvIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgLy9qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNtLXNob3ctb25lLmhhcy1zZXBhcmF0b3Ige1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNtLWhhcy1zZXBhcmF0b3Ige1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXJ0aWNsZS1saXN0LWl0ZW0ge1xuICAgIGg2IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxufVxuXG4uYXV0aG9yLW5hbWUsXG4uYXJ0aWNsZS1lcGlzb2RlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuXG4gICAgLm9iamVjdC1pdGVtLmluY3JlYXNlZC1zcGFjZSAmIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblxuICAgICAgICAuYmxvY2std3JhcHBlci12MiAmIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNWU5MDk2O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNhdGVnb3J5LWZpZWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG5cbiAgICBhIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgcGFkZGluZzogNXB4IDA7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktZGFyaztcbiAgICAgICAgfVxuICAgIH1cbiAgICBzcGFuIHtcbiAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXJlbTtcbiAgICB9XG59XG5cbi5tZXRhLWFyZWEge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xufVxuXG4ubGluay1ob2xkZXIge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgIG1hcmdpbjogMCAwIDAuNXJlbTtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIGEge1xuICAgICAgICBjb2xvcjogJGdyYXk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cblxuICAgIGkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDgpO1xuICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxMHB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcbiAgICB9XG5cbiAgICAmLnByaW1hcnktY29sb3Ige1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hcnRpY2xlLWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICB9XG5cbiAgICAvLyBoaWRlIGltZyBvbiBsYXJnZSAsIHNob3cgaW1nIG9uIG1vYmlsZVxuICAgICYuc3R5bGUtdjIge1xuICAgICAgICAuYXJ0aWNsZS1pdGVtLWltZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn07XG4gICAgICAgICAgICAgICAgLy8gbWFyZ2luOiAwLjI1cmVtIDFyZW0gMCAxLjJyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiA0LzM7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAtby1vYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5oZXJvLXdyYXAge1xuICAgICAgICAvLyAmLmhlcm8tbWFpbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxuXG4gICAgJi52aWRlby1pdGVtIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyAuaGVyby1tYWluICYge1xuICAgIC8vICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIC8vICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAvLyAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIC8vICAgICB9XG4gICAgLy8gICAgID4gLmNlbGwge1xuICAgIC8vICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgLy8gICAgIH1cbiAgICAvLyB9XG5cbiAgICAuZ3JpZC1jb2x1bW4tMiAmIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAuZWRpdG9yaWFsLWxpc3QgJiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbiAgICB9XG5cbiAgICAuZ3JpZC1pdGVtcyAmIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgLy8gbWF4LXdpZHRoOiAzNjBweDtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hcnRpY2xlcy1saXN0ICYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgLy8gbWF4LXdpZHRoOiAzNjBweDtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFydGljbGUtaXRlbS1hdWRpbyB7XG4gICAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgLy8gICAgIG9yZGVyOiAzO1xuICAgIC8vIH1cblxuICAgIC5hcnRpY2xlLWl0ZW0tdGl0bGUge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDcwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFydGljbGUtaXRlbS1jb250ZW50IHtcbiAgICBwIHtcbiAgICAgICAgY29sb3I6ICM0ZDRkNGQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG4uYXJ0aWNsZS1pdGVtLWRlc2Mge1xuICAgIHAge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICB9XG59XG5cbi5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgIGltZyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgPiBhIHtcbiAgICAgICAgPiBpbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiA0LzM7XG4gICAgICAgICAgICAgICAgLW8tb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyBlYXNlIDBzLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2UgMHMsIG9wYWNpdHkgMC4yNXMgZWFzZSAwcztcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXI6YWZ0ZXIsXG4gICAgICAgICYuaG92ZXJlZC1pbWc6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNpZ24taWNvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogLTBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTIwcHg7XG4gICAgfVxuXG4gICAgLmVxdWFsaXplLWNvbHVtbnMgJiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gICAgfVxuXG4gICAgLmJsb2NrLXdyYXBwZXIgJiB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZ2FtZXMtaXRlbSAmIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5oYXMtb3ZlcmxheSAmIHtcbiAgICAgICAgYTphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3ZDcwO1xuICAgICAgICAgICAgb3BhY2l0eTogMC4zO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgZmlsdGVyOiBncmF5OyAvKiBJRTYtOSAqL1xuICAgICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGdyYXlzY2FsZSgxKTsgLyogR29vZ2xlIENocm9tZSwgU2FmYXJpIDYrICYgT3BlcmEgMTUrICovXG4gICAgICAgICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgxKTsgLyogTWljcm9zb2Z0IEVkZ2UgYW5kIEZpcmVmb3ggMzUrICovXG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIC5tYWluLWl0ZW0ge1xuLy8gICAgIC5hcnRpY2xlLWl0ZW0taW1nIHtcbi8vICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4vLyAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTFyZW07XG4vLyAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtO1xuLy8gICAgICAgICAgICAgLmhlcm8tbWFpbiAmIHtcbi8vICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI5MnB4O1xuLy8gICAgICAgICAgICAgICAgIGltZyB7XG4vLyAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbi8vICAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4vLyAgICAgICAgICAgICAgICAgfVxuLy8gICAgICAgICAgICAgfVxuLy8gICAgICAgICB9XG4vLyAgICAgfVxuLy8gfVxuXG4uYXJ0aWNsZS1pdGVtLWF1dGhvciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGltZyB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAyMnB4O1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAzNHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXJ0aWNsZS1pdGVtLXRpdGxlIHtcbiAgICAvL21hcmdpbi1ib3R0b206IDAuNzVyZW07XG5cbiAgICAvLyAubWFpbkNvbnRhaW5lcjQ1ICYge1xuICAgIC8vICAgbWluLWhlaWdodDogMjVweDtcbiAgICAvLyB9XG5cbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCxcbiAgICBoNSxcbiAgICBoNiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBbZGlyPVwibHRyXCJdICYge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50aXRsZS1ub3JtYWwgJiB7XG4gICAgICAgIGgyLFxuICAgICAgICBoMyxcbiAgICAgICAgaDQsXG4gICAgICAgIGg1LFxuICAgICAgICBoNiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICAvLyAuaGVyby1tYWluICYge1xuICAgICAgICAvLyAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgLy8gICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjYpO1xuICAgICAgICAvLyAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIC8vICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgLy8gICAgIH1cbiAgICAgICAgLy8gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgLy8gICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDM1KTtcbiAgICAgICAgLy8gICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgICAvLyAgICAgfVxuXG4gICAgICAgIC8vICAgICBbZGlyPVwibHRyXCJdICYge1xuICAgICAgICAvLyAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIC8vICAgICAgICAgbGluZS1oZWlnaHQ6IGluaXRpYWw7XG4gICAgICAgIC8vICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAvLyAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDM2KTtcbiAgICAgICAgLy8gICAgICAgICB9XG4gICAgICAgIC8vICAgICB9XG4gICAgICAgIC8vIH1cblxuICAgICAgICAuaGVyby1zbGlkZXIgJiB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQ0KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNTApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDUge1xuICAgICAgICBsaW5lLWhlaWdodDogMS42O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS43O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICYuaG92ZXJlZCB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5zdHlsZS12MiB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgICAgIGg2IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZ2FtZS1pdGVtLWluZm8gJiB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMzKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5wYXRoLWZyb250cGFnZSAmIHtcbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZGNlYmQ4O1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNXJlbTtcbiAgICAgICAgY29sb3I6ICMwYTFhMGY7XG4gICAgfVxuXG4gICAgLmdyaWQtY29sdW1uLTIgJiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDU1cHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgW2Rpcj1cImx0clwiXSAmIHtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYW5jaG9yIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgIGkge1xuICAgICAgICBmb250LXNpemU6IDlweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxufVxuXG4uYXJ0aWNsZS1pdGVtLWNhdGVnb3J5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbjogMDtcbiAgICAuYXJ0aWNsZS1pdGVtLXRpdGxlICYge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNHJlbTtcbiAgICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjRyZW07XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgd2lkdGg6IDEuNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxM3B4O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA2cHg7XG4gICAgICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuYXJ0aWNsZXMtbGlzdCAmIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFydGljbGUtaXRlbS1oaWdobGlnaHQge1xuICAgIHVsIHtcbiAgICAgICAgLy9saXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgICAgIGNvbG9yOiAkZW1wZXJvcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hcnRpY2xlLWl0ZW0tZm9vdGVyICYge1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hcnRpY2xlcy1saXN0ICYge1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXJ0aWNsZS1pdGVtLW1ldGEge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgIGNvbG9yOiAjM2IzYjNiO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAuZ3JpZC1pdGVtcyAmIHtcbiAgICAgICAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIC8vICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgICAgIC8vICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAvLyB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgICB9XG4gICAgaSB7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjVyZW07XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmID4gc3Bhbjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFweCBzb2xpZCAjOTI5ODk4O1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMC41cmVtO1xuICAgICAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNXJlbTtcbiAgICB9XG5cbiAgICAubWV0YS1hdXRob3Ige1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG5cbiAgICAubWV0YS12aWV3cyB7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNlYXJjaC1yZXN1bHRzICYge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5kYXJrLXRoZW1lICYge1xuICAgICAgICBjb2xvcjogI2FmYWZhZjtcbiAgICB9XG4gICAgJi5icmVha2luZyB7XG4gICAgICAgIHRpbWUge1xuICAgICAgICAgICAgY29sb3I6ICNjZTQyNDI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi52aWV3cy1jb3VudC1wbGFjZWhvbGRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYuc2hvd3ZpZXdzIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbn1cblxuLnZpZXdzLWNvdW50LFxuLnZpZGVvLXN0YW1wIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTApO1xuICAgIGNvbG9yOiAjODk4ZjkzO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyO1xuICAgIH1cbiAgICAmLnZpZXdzLWNvdW50LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAmLnNob3d2aWV3cyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbn1cblxuLnZpZXdzLWNvdW50LmFicy1lbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogNXB4O1xuICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMTBweDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHotaW5kZXg6IDE7XG59XG5cbi52aWRlby1zdGFtcC5hYnMtZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHByaW1hcnktZGFyaywgMC41OSk7XG4gICAgcGFkZGluZzogMnB4IDVweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB6LWluZGV4OiAxO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xufVxuXG4ubWVkaWEtbGFiZWwge1xuICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwLjM1cmVtO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG5cbiAgICAuYXJ0aWNsZS1pdGVtLW1ldGEgJiB7XG4gICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDFyZW07XG4gICAgfVxufVxuXG4ubWVkaWEtbGFiZWwuYWJzLWVsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwLjc1cmVtO1xuICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNzVyZW07XG4gICAgY29sb3I6ICR3aGl0ZTtcblxuICAgIC5ncmlkLWl0ZW1zICYsXG4gICAgLm9iamVjdC1pdGVtICYge1xuICAgICAgICBib3R0b206IDAuNnJlbTtcbiAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMC42cmVtO1xuICAgIH1cblxuICAgIC5vYmplY3QtaXRlbSAmIHtcbiAgICAgICAgcGFkZGluZzogMC4yNXJlbTtcblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hcnRpY2xlLWl0ZW0tb3ZlcmJveC1pbm5lciAmIHtcbiAgICAgICAgYm90dG9tOiAxLjI1cmVtO1xuICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAycmVtO1xuICAgIH1cbn1cbi5wbGF5LWljb24sXG4uYWJzLW92ZXItaWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICB0b3A6IDAuNXJlbTtcbiAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjVyZW07XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgei1pbmRleDogMTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAvL2ZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICB0b3A6IDFyZW07XG4gICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFyZW07XG4gICAgICAgIC8vIHdpZHRoOiA2NXB4O1xuICAgICAgICAvLyBoZWlnaHQ6IDY1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMzVweDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICB9XG5cbiAgICBpOm5vdCguaWNvbi1wbGF5LWFycm93KSB7XG4gICAgICAgIC8vY29sb3I6ICRncmF5O1xuICAgICAgICAvLyBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgIC8vIHBhZGRpbmc6IDEwcHggOXB4IDEwcHggMTJweDtcbiAgICAgICAgLy8gYm9yZGVyLXJhZGl1czogMTAwMHB4O1xuICAgICAgICAvLyBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAvL21hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAycHg7XG4gICAgfVxuICAgIC5lbnRyeS1yZWxhdGVkICYge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQ1KTtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiA1NXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIGkuaWNvbi1wbGF5LWFycm93IHtcbiAgICAgICAgZm9udC1zaXplOiA4cmVtO1xuICAgICAgICBjb2xvcjogcmdiYSgkd2hpdGUsIDAuOCk7XG4gICAgICAgIC5hcnRpY2xlcy1saXN0Lmhhcy1zZXBhcmF0b3IgJiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDMuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICAuZ3JpZC1pdGVtcyAmIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMy41cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNpZGViYXItd3JhcCAmIHtcbiAgICAgICAgLy9mb250LXNpemU6IDJyZW07XG4gICAgICAgIHRvcDogMC41cmVtO1xuICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjVyZW07XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ncmlkLWl0ZW1zICYge1xuICAgICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjc1cmVtO1xuICAgICAgICBib3R0b206IDAuNzVyZW07XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuICAgIC52aWRlby1saXN0ICYge1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIHRvcDogMC41cmVtO1xuICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjVyZW07XG4gICAgICAgIC8vIHdpZHRoOiAzNXB4O1xuICAgICAgICAvLyBoZWlnaHQ6IDM1cHg7XG4gICAgfVxufVxuXG4uYWxidW0taWNvbiB7XG4gICAgQGV4dGVuZCAucGxheS1pY29uO1xuICAgIC5tZWRpYS1hcnRpY2xlLWxpc3QgJixcbiAgICAuc3RhdGljLWNvbHVtbi13cmFwICYge1xuICAgICAgICB0b3A6IDdweDtcbiAgICAgICAgbGVmdDogN3B4O1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4ubGFiZWwtbGl2ZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgYmFja2dyb3VuZDogIzJjOGE4MjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoNDQsIDEzOCwgMTMwKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoNDQsIDEzOCwgMTMwKTtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbn1cbi5sYWJlbCxcbi5sYWJlbC1saXZlIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGEge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgICBpIHtcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDNweDtcbiAgICB9XG4gICAgJi5hYnMtZWwge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBwYWRkaW5nOiA3cHggN3B4IDVweDtcbiAgICB9XG4gICAgJi5sYWJlbC1jZW50ZXIge1xuICAgICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IGluaXRpYWw7XG4gICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDUwJTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgICAgICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDUwJTtcbiAgICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IGluaXRpYWw7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5sYWJlbC1ib3R0b20ge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogYXV0bztcbiAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgIH1cblxuICAgICYubGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGkge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmJyZWFraW5nLW5ld3Mge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuICAgIH1cblxuICAgICYuYW5hbHlzaXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmM4YTgyO1xuICAgIH1cblxuICAgICYuc3BlY2lhbCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwZTQ1NDA7XG4gICAgfVxuXG4gICAgJi5saXZlY292ZXJhZ2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuICAgIH1cblxuICAgICYuYnJlYWtpbmcge1xuICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICNkNTBhMGE7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgfVxuXG4gICAgLmFydGljbGUtaXRlbS10aXRsZSAmLFxuICAgIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiBoMyAmLFxuICAgIC5lbnRyeS1oaWdobGlnaHQgbGkgJiB7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjRyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBwYWRkaW5nOiA2cHggNXB4IDVweDtcblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgICAgfVxuICAgICAgICAubG90dGllLWljbyB7XG4gICAgICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgICAgIC8vIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubWVkaWEtb2JqZWN0LWltZyAmIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBwYWRkaW5nOiA2cHggNXB4IDVweDtcbiAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmxvdHRpZS1pY28ge1xuICAgICAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgICAgICAvL21hcmdpbi10b3A6IC0zcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5sb3R0aWUtaWNvIHtcbiAgICAvLyB3aWR0aDogNDBweDtcbiAgICAvLyBoZWlnaHQ6IDQwcHg7XG4gICAgLy8gZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIC8vIC5sYWJlbC1saXZlICZ7XG4gICAgLy8gICB3aWR0aDogNDBweDtcbiAgICAvLyAgIGhlaWdodDogMjBweDtcbiAgICAvLyAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAvLyAgIG1hcmdpbi1yaWdodDogLTEwcHg7XG4gICAgLy8gICBtYXJnaW4tdG9wOiAtM3B4O1xuICAgIC8vIH1cbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAubGFiZWwtbGl2ZSAmLFxuICAgIC5sYWJlbCAmIHtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA1cHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gICAgLmxpdmUtdGlja2VyLXRpdGxlICYge1xuICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwcHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG59XG5cbi5jYWxsb3V0LmFsZXJ0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjA0LCAwLCAwKTtcbn1cblxuLmJyZWFraW5nLW5ld3MtYXJlYSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBoNixcbiAgICAubGFiZWwge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgfVxuICAgIC5sYWJlbC5saXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEyMGRlZywgI2NjMDAwMCAyNSUsIHdoaXRlIDI1JSk7XG4gICAgICAgIGNvbG9yOiAjY2MwMDAwO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwLjVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gICAgICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMnJlbTtcblxuICAgICAgICBbZGlyPVwibHRyXCJdICYge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDIzOGRlZywgI2NjMDAwMCAyNSUsIHdoaXRlIDI1JSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICAgIHNwYW46bm90KC5sYWJlbCkge1xuICAgICAgICBwYWRkaW5nOiAwIDEuM3JlbTtcbiAgICB9XG4gICAgc3Bhbjpub3QoLmxhYmVsKTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiL1wiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuY2xvc2UtYnV0dG9uIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiBpbmhlcml0O1xuICAgIH1cbn1cblxuLy8gYnJlYWtpbmcgbmV3c1xuLmJyZWFraW5nLWhlcm8ge1xuICAgIGgxIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuaGVyby1pdGVtIHtcbiAgICAgICAgLmFydGljbGUtaXRlbS10aXRsZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzM3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sYWJlbC5hYnMtZWwge1xuICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgfVxufVxuXG4uZW50cnktYXJ0aWNsZS1pbm5lciB7XG4gICAgLy9AaW5jbHVkZSB4eS1ndXR0ZXJzKDMwLCAnbWFyZ2luJywgJG5lZ2F0aXZlOiBmYWxzZSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKDYwLCBcIm1hcmdpblwiLCAkbmVnYXRpdmU6IHRydWUpO1xuICAgICAgICA+IC5jZWxsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoNjAsIFwicGFkZGluZ1wiLCAkbmVnYXRpdmU6IGZhbHNlKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmVudHJ5LW1lZGlhIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxuXG4gICAgLnNsaWNrLWFycm93IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgyKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiA0MnB4O1xuICAgICAgICB3aWR0aDogNDJweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgaGVpZ2h0OiA1OXB4O1xuICAgICAgICAgICAgd2lkdGg6IDU5cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgfVxuICAgICAgICAmLnNsaWNrLW5leHQge1xuICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMC41cmVtO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLnNsaWNrLXByZXYge1xuICAgICAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwLjVyZW07XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxLjVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAmLnNsaWNrLXByZXYge1xuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UgMHM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5zbGljay1uZXh0IHtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UgMHM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZW50cnktdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgaDEge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDM4KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgLy9saW5lLWhlaWdodDogMS41O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICBtYXJnaW46IDAuOHJlbSAwO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgICAgIG1hcmdpbjogMC44cmVtIDAgMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAvL3BhZGRpbmc6IDAgMXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgaDEge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgKyAuZW50cnktZnVsbC1tZXRhIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG59XG5cbi5lbnRyeS1jYXRlZ29yeSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgfVxuICAgIGEge1xuICAgICAgICBjb2xvcjogIzRkNGQ0ZDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogNDBweDtcbiAgICAgICAgZmxvYXQ6ICN7JGRlZmF1bHQtZGlyZWN0aW9ufTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCguc3ViLWNhdGVnb3J5KSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnN1Yi1jYXRlZ29yeSB7XG4gICAgICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMjBweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWRhcms7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDJyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5MDJcIjtcbiAgICAgICAgICAgICAgICAgICAgLy9wb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA5cHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnBhZ2UtaW5kaWNhdG9yIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICB9XG59XG5cbi5wYWdlLWNhdGVnb3J5IHtcbiAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMjBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAycmVtO1xuICAgIH1cbiAgICBhLFxuICAgIGgyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjgpO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAvLyBsaW5lLWhlaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgLy8gJjpmaXJzdC1jaGlsZHtcbiAgICAgICAgLy8gICBmb250LWZhbWlseTogJGZvbnQtcHJpbWFyeTtcbiAgICAgICAgLy8gICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiAgICAgICAgLy8gICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgLy8gICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAvLyAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMjBweDtcbiAgICAgICAgLy8gICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTBweDtcbiAgICAgICAgLy8gICAmOmFmdGVyIHtcbiAgICAgICAgLy8gICAgIGNvbnRlbnQ6IFwiXFxlOTAyXCI7XG4gICAgICAgIC8vICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIC8vICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAvLyAgICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICAgICAgICAvLyAgICAgZm9udC1zaXplOiA5cHg7XG4gICAgICAgIC8vICAgICB0b3A6IDlweDtcbiAgICAgICAgLy8gICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgLy8gICB9XG4gICAgICAgIC8vIH1cbiAgICB9XG59XG5cbi5lbnRyeS1oaWdobGlnaHQge1xuICAgIGNvbG9yOiAjNTU1NTU1O1xuICAgIHVsIHtcbiAgICAgICAgLy9saXN0LXN0eWxlLXBvc2l0aW9uOiBpbnNpZGU7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICAmLnJlZC1idWxsZXRzIHtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgIH1cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcblxuICAgICAgICAgICAgdGltZSB7XG4gICAgICAgICAgICAgICAgLm1haW4taXRlbSAmIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzNiM2IzYjtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmJyZWFraW5nIHtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aW1lIHtcbiAgICAgICAgICAgIGNvbG9yOiAjY2U0MjQyO1xuICAgICAgICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTE0XCI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDRweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgICAgICAgICAgdG9wOiAzcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogLTNweDtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgICAgICAgICAgICAgW2Rpcj1cImx0clwiXSAmIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5icmVha2luZy1oZXJvICYge1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgJjo6bWFya2VyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmdyaWQtaGlnaGxpZ2h0cyB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgIHVsIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgfVxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcHggc29saWQgJHNlcGFyYXRvci1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmVudHJ5LWNvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBjb2xvcjogIzM0MzQzNDtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgIH1cbiAgICA+ICoge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudHdpdHRlci10d2VldCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5wYXJhZ3JhcGgtLXR5cGUtLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgZGl2W2RhdGEtb2VtYmVkLXVybCo9XCJ0d2l0dGVyLmNvbVwiXSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBwIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGhlaWdodDogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGZiIGluc2VydHNcbiAgICAgICAgPiBpZnJhbWUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZGl2W2NvbnRlbnRlZGl0YWJsZT1cImZhbHNlXCJdIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgICBmaWd1cmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcbiAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgIH1cblxuICAgIGJyIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgfVxuXG4gICAgcCBiciB7XG4gICAgICAgIG1hcmdpbjogMCAwIDFyZW07XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IHNjYWxlLWNvbG9yKCRwcmltYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiAtNTAlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGJsb2NrcXVvdGU6bm90KC50aWt0b2stZW1iZWQpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1kYXJrO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZWNmNGYzO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICBwYWRkaW5nOiAycmVtIDNyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBib3JkZXItI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcmVtIDVyZW07XG4gICAgICAgIH1cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwcmVtO1xuICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTVweDtcbiAgICAgICAgICAgIC8vY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgLy9mb250LXNpemU6IDRyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvaWNvbi9sb3dlci1xdW90ZS5wbmdcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDFyZW07XG4gICAgICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogNDBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMHJlbTtcbiAgICAgICAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMjVweDtcbiAgICAgICAgICAgIC8vIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIC8vZm9udC1zaXplOiA0cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcblxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ljb24vdXBwZXItcXVvdGUucG5nXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgdG9wOiAxcmVtO1xuICAgICAgICAgICAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogNDVweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWRhcms7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI3KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50aWt0b2stZW1iZWQge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgaWZyYW1lIHtcbiAgICAgICAgLy8gd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgLy8gYXNwZWN0LXJhdGlvOiAxNiAvIDk7XG5cbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnR3aXR0ZXItdHdlZXQsXG4gICAgLmluc3RhZ3JhbS1tZWRpYSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubXVsdGltZWRpYS1lbnRyaWVzICYge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG4gICAgJi5zdHlsZS12MSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAycmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcCArIGgzLFxuICAgIHAgKyBoMiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gICAgfVxufVxuXG4uZW50cnktYWRkcmVzcyB7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICBoMyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgICB1bCB7XG4gICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5lbnRyeS1zcG90bGlnaHQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAycmVtO1xuICAgICAgICAuc3R5bGUtdjEgJiB7XG4gICAgICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAtMnJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBoMiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZW50cnktc3Vic2NyaWJlIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiA0MDBweDtcbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbn1cblxuLmVudHJ5LXJlbGF0ZWQge1xuICAgIC5zZWN0aW9uLXRpdGxlIGg0IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB9XG59XG5cbi5lbnRyeS10YWdzIHtcbiAgICBtYXJnaW46IDAgMCAyLjVyZW07XG4gICAgcGFkZGluZzogMXJlbSAwIDAuNXJlbTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgjYTFhMTk0LCAwLjQpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCNhMWExOTQsIDAuNCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblxuICAgIHNwYW4ge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyOXB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgZm9udC1zaXplOiAkdGFncy1zcGFuLXNpemU7XG4gICAgfVxuXG4gICAgLmJ1dHRvbiB7XG4gICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICBtYXJnaW46IDAgMCAwLjVyZW0gMC41cmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogaW5pdGlhbDtcbiAgICAgICAgZm9udC1zaXplOiAkdGFncy1idXR0b24tc2l6ZTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgJi5ncmF5LmhvbGxvdzpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNmNGYzO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZWNmNGYzO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmVudHJ5LWFydGljbGUtaW5uZXIgJiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG4uZW50cnktc2hhcmVzLXdyYXBwZXIge1xuICAgIG1hcmdpbjogMCAwIDFyZW07XG5cbiAgICBhIHtcbiAgICAgICAgdGV4dC1hbGlnbjogI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTtcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNXJlbTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIH1cblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5lbnRyeS1tZXRhLWZvb3RlciAmIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259O1xuICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNzVyZW07XG4gICAgICAgICAgICBjb2xvcjogIzg5OGY5MztcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmVudHJ5LW1ldGEtZm9vdGVyIHtcbiAgICAuZW50cnktbWV0YSAmIHtcbiAgICAgICAgcGFkZGluZzogMC43NXJlbSAwO1xuICAgIH1cbn1cblxuLmVudHJ5LXNoYXJlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIGEge1xuICAgICAgICB0ZXh0LWFsaWduOiAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259O1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMC41cmVtO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICAgIH1cblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxLjI1cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZW50cnktYXNpZGUtaW5mbyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB3aWR0aDogMzEwcHg7XG4gICAgICAgICYuY2FydG9vbi1hdXRob3Ige1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNzBweDtcbiAgICAgICAgICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNjVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgIH1cbn1cblxuLmVudHJ5LWZ1bGwtbWV0YSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIH1cbn1cblxuLmVudHJ5LWF1dGhvciB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAvLyBzcGFue1xuICAgIC8vICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIC8vICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMHB4O1xuICAgIC8vICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwcHg7XG4gICAgLy8gICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLy8gICAmOmFmdGVye1xuICAgIC8vICAgICBjb250ZW50OiAnJztcbiAgICAvLyAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgLy8gICAgIHdpZHRoOiAxcHg7XG4gICAgLy8gICAgIGhlaWdodDogMTAwJTtcbiAgICAvLyAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8vICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgIC8vICAgICB0b3A6IDUwJTtcbiAgICAvLyAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIC8vICAgfVxuICAgIC8vIH1cbiAgICBpbWcge1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTBweDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogNHB4O1xuICAgICAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNXJlbTtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiLFwiO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHVsIHtcbiAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNXJlbTtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyAuZW50cnktbWV0YSAmIHtcbiAgICAvLyAgIHBhZGRpbmc6IDA7XG4gICAgLy8gICBib3JkZXI6IDA7XG4gICAgLy8gfVxufVxuXG4uZW50cnktYXV0aG9yLWltZyB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRibGFjaztcbn1cblxuLmVudHJ5LWxhYmVsIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgfVxuICAgIHVsIHtcbiAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIH1cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYWYzZjI7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICBzcGFuOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZW50cnktYXNpZGUtbWV0YSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuZW50cnktZnVsbC1tZXRhICYge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHNlcGFyYXRvci1jb2xvcjtcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxufVxuXG4uZW50cnktZGF0ZS1pdGVtcyB7XG4gICAgLmVudHJ5LWRhdGU6bm90KDpvbmx5LWNoaWxkKTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTtcbiAgICB9XG59XG5cbi5lbnRyeS1kYXRlIHtcbiAgICBjb2xvcjogJGdyYXk7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGNvbG9yOiAjOTI5ODk4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXJlbTtcbiAgICB9XG4gICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5lbnRyeS1hc2lkZS1tZXRhICYge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDExKTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgcGFkZGluZy10b3A6IDAuMnJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZW50cnktbWV0YSAmIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDAuMjVyZW07XG4gICAgICAgIGNvbG9yOiAjOTk5OTk5O1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5lbnRyeS1mdWxsLW1ldGEgJiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbn1cblxuLmVudHJ5LWFzaWRlLXNoYXJlcyB7XG4gICAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bil7XG4gICAgLy8gICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgLy8gICB3aWR0aDogMTAwJTtcbiAgICAvLyAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIC8vICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgLy8gICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAvLyAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgLy8gICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIC8vICAgLnNoYXJlLWljb25zLXdyYXB7XG4gICAgLy8gICAgLy8gbWFyZ2luLXRvcDogMXJlbTtcbiAgICAvLyAgIH1cbiAgICAvLyB9XG5cbiAgICAuZW50cnktc2hhcmUtcm93Om5vdCguZW50cnktYm9va21hcmspIHtcbiAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMC41cmVtO1xuICAgIH1cblxuICAgIC5lbnRyeS1ib29rbWFyayB7XG4gICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IGF1dG87XG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmVlbjE7XG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICRpY29uLWJvb2ttYXJrLWdyZWVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tdWx0aW1lZGlhLWVudHJpZXMgJiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZW50cnktc2hhcmVzIHtcbiAgICAuZW50cnktYm9va21hcmsge1xuICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAycmVtO1xuICAgIH1cbn1cblxuLmhlcm8tc2xpZGVyIHtcbiAgICAuc2xpY2stZG90cyBsaSB7XG4gICAgICAgIG1hcmdpbjogMCA4cHg7XG4gICAgfVxufVxuXG4uc2hhcmUtaWNvbnMtd3JhcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgLnNvY2lhbC1sYmwge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjVyZW07XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmVudHJ5LXNoYXJlcy13cmFwcGVyICYge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxuXG4gICAgLmVudHJ5LWFzaWRlLWluZm8gJiB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAvLyBib3JkZXItdG9wLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tdWx0aW1lZGlhLWVudHJpZXMgJiB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgICAgICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICAgIH1cblxuICAgIC52aWRlby1hc2lkZS1tZXRhICYge1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgLmVudHJ5LXNoYXJlLXJvdyB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFkZHRoaXNfdG9vbGJveCB7XG4gICAgICAgIC5hdGNsZWFyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIG11bHRpbWVkaWEgZ2FsbGVyeSBwYWdlXG4ubXVsdGltZWRpYS1lbnRyaWVzIHtcbiAgICBwYWRkaW5nOiAycmVtIDFyZW0gMXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDNyZW07XG4gICAgfVxufVxuXG4uYnRuLXNoYXJlLXdyYXAge1xuICAgIC5lbnRyeS1tZXRhICYge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICAgICAgICAgIC5idG4tc2hhcmUtc29jaWFsIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwLjVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmVudHJ5LWFzaWRlLW1ldGEgJiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB9XG4gICAgfVxufVxuLmVudHJ5LXNoYXJlLXJvdyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjVyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmN2Y2O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGhlaWdodDogMzhweDtcbiAgICAgICAgd2lkdGg6IDM4cHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyZWVuMTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kYXJrLXRoZW1lICYge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvZGNhc3Qtc2NyZWVuICYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyZWVuMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5saXZlLXNoYXJlcy13cmFwcGVyICYge1xuICAgICAgICB9XG4gICAgfVxuICAgIC5pY29uLXNoYXJlIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbn1cblxuZmlnY2FwdGlvbiB7XG4gICAgLmVudHJ5LWNvbnRlbnQgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG59XG5cbi5pbWctY2FwdGlvbiB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMSk7XG4gICAgY29sb3I6ICRncmF5O1xuICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgIG1pbi1oZWlnaHQ6IDAuMXJlbTtcbiAgICAuZW50cnktbWVkaWEgJixcbiAgICAmLnN0eWxlZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICAmLmRhcmsge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWRlZGVkO1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbSAwLjJyZW07XG4gICAgfVxuICAgIC5saXZlLWJsb2cgJiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxufVxuXG4uaW5qZWN0ZWQtYmxvY2sge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG5cbiAgICAuYmxvY2stY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogMS41cmVtO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBoNSB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJsb2NrLXRpdGxlIHtcbiAgICAgICAgd2lkdGg6IDEzNXB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxLjVyZW07XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjdweDtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLml0ZW0tYXJlYS10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgfVxuXG4gICAgLml0ZW0tYXJlYSB7XG4gICAgICAgIGgyLml0ZW0tYXJlYS10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI3KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDUuaXRlbS1hcmVhLXRpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5pbmplY3RlZC1vcGluaW9uIHtcbiAgICAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFweCBzb2xpZCAkcHJpbWFyeS1saWdodDtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgLm1lZGlhLW9iamVjdC1pbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA3NXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNzVweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5saW5rLWhvbGRlciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgICB9XG4gICAgLmF1dGhvci1uYW1lIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgIH1cbiAgICBoNSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICB9XG59XG5cbi53aXRoLXNlcGFyYXRvciB7XG4gICAgLm1lZGlhLW9iamVjdDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgICBwIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLml0ZW0tYXJlYSB7XG4gICAgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxufVxuXG4uaXRlbS1hcmVhLWltZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgIGJ1dHRvbiB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLml0ZW0tYXJlYS10aXRsZSB7XG4gICAgc3BhbiB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLml0ZW0tYXJlYS1tZXRhIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG5cbiAgICB0aW1lIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgY29sb3I6ICRuZXZhZGE7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDAuMjVyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hdXRob3ItbWV0YS1hcmVhIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmxhY2s7XG4gICAgcGFkZGluZzogMCAwIDAuNXJlbTtcblxuICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogNTBweDtcbiAgICB9XG59XG5cbnVsLmhhcy1zZXBhcmF0b3IgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG59XG5cbi5vcGluaW9uLWF1dGhvciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbSAxcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgfVxuICAgIC5hdXRob3ItbmFtZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuYXV0aG9yLWRlc2Mge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICB9XG4gICAgLmF1dGhvci1tZXRhIHtcbiAgICAgICAgcGFkZGluZzogMXJlbSAxcmVtIDA7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5zaW5nbGUge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICN7JGRlZmF1bHQtZGlyZWN0aW9ufTtcbiAgICAgICAgfVxuICAgICAgICAuYXV0aG9yLWdyaWQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiA5MnB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDk1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLndyaXRlci1jaGVjayB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMC41cmVtO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYXV0aG9yLW1ldGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc29jaWFscy1ibG9jayB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogN3B4O1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmF1dGhvci1pbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB3aWR0aDogOTJweDtcbiAgICBoZWlnaHQ6IDkycHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAtd2Via2l0LW1hc2staW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KHdoaXRlLCBibGFjayk7XG5cbiAgICBpbWcge1xuICAgICAgICAvL2ZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlLCB0cmFuc2Zvcm0gMC4yczsgLyogQW5pbWF0aW9uICovXG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIH1cbiAgICBhIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIC8vZmlsdGVyOiBncmF5c2NhbGUoMCk7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgICAgICAgICAgIC5hdXRob3ItaXRlbSAmIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm9waW5pb24tYXV0aG9yICYge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gICAgLmZsZXgtZXF1YWwgJiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS10YWJsZTtcbiAgICB9XG4gICAgLm9waW5pb24tYXV0aG9yLWxpc3QgJiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICAgICAgICAgIGZsb2F0OiAjeyRkZWZhdWx0LWRpcmVjdGlvbn07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucmVsYXRlZC1vcGluaW9ucyAmIHtcbiAgICAgICAgd2lkdGg6IDc1cHg7XG4gICAgICAgIGhlaWdodDogNzVweDtcbiAgICB9XG5cbiAgICAuZ2FtZS1hdXRob3ItaW5mbyAmIHtcbiAgICAgICAgd2lkdGg6IDYzcHg7XG4gICAgICAgIGhlaWdodDogNjNweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgwKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnJlbGF0ZWQtb3BpbmlvbnMge1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtO1xuXG4gICAgPiBkaXYge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICRjb2x1bW5zOiAxO1xuICAgICAgICAgICAgJGZpcnN0LWNoaWxkLWluLWFueS1yb3c6IFwiOm50aC1jaGlsZCgjeyRjb2x1bW5zfW4gKyAxKVwiO1xuXG4gICAgICAgICAgICAkYW55LWNoaWxkLWluLXRoZS1sYXN0LXJvdzogXCI6bnRoLWxhc3QtY2hpbGQoLW4gKyAjeyRjb2x1bW5zfSlcIjtcblxuICAgICAgICAgICAgJGZpcnN0LWNoaWxkLWluLWxhc3Qtcm93OiBcIiYjeyRmaXJzdC1jaGlsZC1pbi1hbnktcm93fSN7JGFueS1jaGlsZC1pbi10aGUtbGFzdC1yb3d9XCI7XG5cbiAgICAgICAgICAgICN7JGZpcnN0LWNoaWxkLWluLWxhc3Qtcm93fTpub3QoLmhpZGUtZm9yLWxhcmdlKSxcbiAgICAgICAgICAgICN7JGZpcnN0LWNoaWxkLWluLWxhc3Qtcm93fTpub3QoLmhpZGUtZm9yLWxhcmdlKSB+IC5jZWxsIHtcbiAgICAgICAgICAgICAgICAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAgICAgICAgICRjb2x1bW5zOiAyO1xuICAgICAgICAgICAgJGZpcnN0LWNoaWxkLWluLWFueS1yb3c6IFwiOm50aC1jaGlsZCgjeyRjb2x1bW5zfW4gKyAxKVwiO1xuXG4gICAgICAgICAgICAkYW55LWNoaWxkLWluLXRoZS1sYXN0LXJvdzogXCI6bnRoLWxhc3QtY2hpbGQoLW4gKyAjeyRjb2x1bW5zfSlcIjtcblxuICAgICAgICAgICAgJGZpcnN0LWNoaWxkLWluLWxhc3Qtcm93OiBcIiYjeyRmaXJzdC1jaGlsZC1pbi1hbnktcm93fSN7JGFueS1jaGlsZC1pbi10aGUtbGFzdC1yb3d9XCI7XG5cbiAgICAgICAgICAgICN7JGZpcnN0LWNoaWxkLWluLWxhc3Qtcm93fTpub3QoLmhpZGUtZm9yLWxhcmdlKSxcbiAgICAgICAgICAgICN7JGZpcnN0LWNoaWxkLWluLWxhc3Qtcm93fTpub3QoLmhpZGUtZm9yLWxhcmdlKSB+IC5jZWxsIHtcbiAgICAgICAgICAgICAgICAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgICAgICAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgIH1cbn1cblxuLy8gZm9udCBjb250cm9sbGVyIGFydGljbGUgcGFnZXNcbi5mb250LWNvbnRyb2wge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNmNGYzO1xuICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgIC8vbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIC5mbnRDaGFuZ2UtYnRuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgZmxvYXQ6ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIC8vbWFyZ2luLXRvcDogLjVyZW07XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDAgM3B4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB0YWhvbWE7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIC5mb250LXNpemUge1xuICAgICAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgIH1cblxuICAgIC5pY28tZHJhZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgfVxuXG4gICAgLmVudHJ5LWZ1bGwtbWV0YSAmIHtcbiAgICAgICAgd2lkdGg6IDIyMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICAgIC5lbnRyeS1hc2lkZS1pbmZvICYge1xuICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdG9wOiAtMS41cmVtO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2xpZGVyLWNvbnRyb2wge1xuICAgIGlucHV0W3R5cGU9XCJyYW5nZVwiXSB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvICN7JG9wcG9zaXRlLWRpcmVjdGlvbn0sICMwMDAwMDAgMCUsICNkY2ViZTkgMCUpO1xuICAgICAgICBbZGlyPVwibHRyXCJdICYge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvICN7JG9wcG9zaXRlLWRpcmVjdGlvbn0sICMwMDAwMDAgMCUsICNkY2ViZTkgMCUpO1xuICAgICAgICB9XG4gICAgICAgIHdpZHRoOiAxNzRweDtcbiAgICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgICAgIGJvdHRvbTogdW5zZXQ7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46ICN7JGRlZmF1bHQtZGlyZWN0aW9ufSB0b3AgMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgLmVudHJ5LW1ldGEgJiB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgNTAlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBbZGlyPVwibHRyXCJdICYge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5lbnRyeS1mdWxsLW1ldGEgJiB7XG4gICAgICAgICAgICB3aWR0aDogMTE2cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwicmFuZ2VcIl06Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICBjdXJzb3I6IGV3LXJlc2l6ZTtcbiAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgLmVudHJ5LW1ldGEgJiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDQ1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZWNmNGYzO1xuICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIH1cblxuICAgICAgICAmLmNsb3NlIHtcbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJyYW5nZVwiXSB7XG4gICAgICAgICAgICAgICAgYW5pbWF0aW9uOiAxcyBlYXNlLW91dCBub3JtYWwgZm9yd2FyZHMgMiBmYWRlb3V0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiAtLS0tLS0tIFNlY3Rpb24gTWVudSAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG5cbi5zZWN0aW9uLW1lbnUtd3JhcHBlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xufVxuXG4uc2VjdGlvbi1tZW51IHtcbiAgICB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgICAvL3BhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgY29sb3I6ICNhZGFkYWQ7XG4gICAgICAgICAgICAuc3R5bGUtdjEgJiB7XG4gICAgICAgICAgICAgICAgLy8gY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgIC8vIGJvcmRlci10b3A6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIC8vIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAvLyBib3JkZXItI3skZGVmYXVsdC1kaXJlY3Rpb259OnRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIC8vIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjZTllOWU5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2VjdGlvbi1tZW51LWRyb3Bkb3duLFxuLnNlY3Rpb24tbWVudS13cmFwcGVyIHtcbiAgICB1bCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICAvLyBwYWRkaW5nLWJvdHRvbTogMC43NXJlbTtcbiAgICAgICAgW2Rpcj1cImx0clwiXSAmIHtcbiAgICAgICAgICAgIC8vICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgbGkge1xuICAgICAgICAvLyAmLmFjdGl2ZSwgJjpob3ZlcntcbiAgICAgICAgLy8gICBhe1xuICAgICAgICAvLyAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgLy8gICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGFhODg7XG4gICAgICAgIC8vICAgICBib3JkZXItY29sb3I6ICMwMGFhODg7XG4gICAgICAgIC8vICAgfVxuICAgICAgICAvLyB9XG4gICAgfVxuICAgICYuc3R5bGUtdjEge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICAgICAgICAgICAgJi5hY3RpdmUsXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5kcm9wZG93bi13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDMwMHB4O1xuICAgIG1hcmdpbjogMnJlbSBhdXRvO1xuXG4gICAgLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIG1pbi13aWR0aDogOTVweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgIGNvbG9yOiAjODk4ZjkzO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMC41cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgbGluZS1oZWlnaHQ6IDM4cHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgcGFkZGluZzogMCAxcmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI7XG4gICAgfVxuXG4gICAgaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxufVxuXG4uZHJvcGRvd24tbWVudSB7XG4gICAgdGV4dC1hbGlnbjogI3skZGVmYXVsdC1kaXJlY3Rpb259O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgcGFkZGluZzogMC4yNXJlbSAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgIHotaW5kZXg6IDI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICB0b3A6IGNhbGMoMTAwJSArIDAuMjVyZW0pO1xuXG4gICAgbGkge1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1cHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjYyNXJlbSAxLjVyZW07XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmV4cGFuZCB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxufVxuLyogLS0tLS0tLSBTZWN0aW9uIE1lbnUgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLSBNWSBQUk9GSUxFIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cbi51c2VyLXByb2ZpbGUge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIHBhZGRpbmc6IDAgMC43cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAuaWNvbi1hcnJvdy1kb3duIHtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gICAgJi5ob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWRhcms7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIC5pY29uLWFycm93LWRvd24ge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTE3XCI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblt0eXBlPVwiY2hlY2tib3hcIl0gKyAudXNlci1wcm9maWxlLFxuW3R5cGU9XCJjaGVja2JveFwiXSArIC51c2VyLXByb2ZpbGUtaW1nIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbjogMDtcbn1cblxuLnVzZXItcHJvZmlsZS1pbWcge1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA1cHg7XG4gICAgaW1nIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBtYXgtd2lkdGg6IDIycHg7XG4gICAgICAgIG1heC1oZWlndGg6IDIycHg7XG4gICAgfVxufVxuXG4udXNlci1kcm9wZG93biB7XG4gICAgJjpjaGVja2VkIH4ge1xuICAgICAgICAuYWNjb3VudC1tZW51LWxpc3Qge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDI7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgICAgIH1cbiAgICAgICAgLnVzZXItcHJvZmlsZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2cGFuZWwtY29sb3I7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICAgIC5pY29uLWFycm93LWRvd246YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTkxN1wiO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYWNjb3VudC1tZW51IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXJlbTtcbiAgICAgICAgbWluLXdpZHRoOiAxMzFweDtcbiAgICB9XG5cbiAgICAudXNlciB7XG4gICAgICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTBweDtcbiAgICB9XG5cbiAgICAuc3RpY2t5ICYge1xuICAgICAgICBtaW4td2lkdGg6IGF1dG87XG4gICAgfVxuICAgIC5hY2NvdW50LW1lbnUtbGlzdCB7XG4gICAgICAgIG1pbi13aWR0aDogMTMxcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWRhcms7XG4gICAgICAgIC8vIGJvcmRlcjogMDtcbiAgICAgICAgLy8gdGV4dC1hbGlnbjogI3skZGVmYXVsdC1kaXJlY3Rpb259O1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogOTk7XG4gICAgICAgIHRvcDogNDBweDtcbiAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMHB4O1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAwLjJzIGVhc2UtaW4tb3V0O1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjJzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlY2Y0ZjM7XG4gICAgICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgICAgICAvL3RvcDogMnJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogLTEuMXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDIwcHg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAyMHB4O1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB0b3A6IDU1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuc3RpY2t5ICYge1xuICAgICAgICAgICAgdG9wOiAzNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAwLjJzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4ycyBlYXNlLWluLW91dDtcbiAgICAgICAgfVxuICAgICAgICBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjM2E1NDUyO1xuICAgICAgICAgICAgbWFyZ2luOiAwIC0wLjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYSxcbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgcGFkZGluZzogMC43cmVtIDAuNXJlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAjeyRkZWZhdWx0LWRpcmVjdGlvbn07XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzg0OTU5NDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5pY29uLWVudmVsb3AyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZvcm0tYXJlYS13cmFwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgd2lkdGg6IDM1MHB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgd2lkdGg6IDUyMHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDNyZW0gNnJlbTtcbiAgICAgICAgbWFyZ2luOiAzcmVtIGF1dG87XG4gICAgfVxuICAgIC5zZWN0aW9uLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgaDMge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmN1c3RvbS10eHQtc3R5bGUge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICBtYXJnaW46IDJyZW0gMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBjb2xvcjogI2FjYWNhYztcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgfVxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktZGFyaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXTpub3QoOnBsYWNlaG9sZGVyLXNob3duKSxcbiAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06bm90KDpwbGFjZWhvbGRlci1zaG93bikge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXTpwbGFjZWhvbGRlci1zaG93bixcbiAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06cGxhY2Vob2xkZXItc2hvd24ge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICAgIH1cbn1cblxuLmZvcm0tYXJlYSB7XG4gICAgc2VsZWN0IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAuaW5wdXQtcmFkaW8ge1xuICAgICAgICBib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICAgICAgaGVpZ2h0OiAyLjQzNzVyZW07XG4gICAgICAgIG1hcmdpbjogMCAwIDFyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnN1Ym1pdC1idG4ge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICBwYWRkaW5nOiAwLjhyZW0gMnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuXG4gICAgLmlucHV0LWZpZWxkIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgICAgICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgJjpub3QoLm5vLWljbykge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogM3JlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMTBweCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmlucHV0LWRlZmF1bHQge1xuICAgICAgICAgICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICAgICAgICAgICY6bm90KC5uby1pY28pIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDNyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgbGFiZWwge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICB9XG59XG5cbi5mb3Jnb3QtcGFzc3dvcmQge1xuICAgIGEge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWRhcms7XG4gICAgICAgIH1cbiAgICB9XG4gICAgYnV0dG9uIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWRhcms7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmZvcm0tYXJlYSAmIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG59XG5cbi5mb3JtLXNvY2lhbHMtYnRucyB7XG4gICAgYnV0dG9uLmV4cGFuZGVkIHtcbiAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgY29sb3I6ICRncmF5ICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHggIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkbGlnaHQtZ3JheSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgcGFkZGluZzogMCAxcmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktbGlnaHQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm15LXBhZ2Uge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG4gICAgLm15LWF1dGhvcnMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIC8vd2lkdGg6IDEzMDBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubXktdGFncyB7XG4gICAgICAgIC50YWdzLWxpc3Qge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiA5MDBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNjcm9sbF9qcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAtMS41cmVtO1xuICAgIH1cbn1cblxuLmFzaWRlLWJhciB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbWFyZ2luOiAwIC0xcmVtO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIGFuZCAobWF4LXdpZHRoOiAxMDMwcHgpIHtcbiAgICAgICAgd2lkdGg6IDI1MHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB3aWR0aDogMjY5cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgfVxuICAgIC5tZW51LXRhYnMge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlY2Y0ZjM7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICAudGFicy10aXRsZSA+IGE6Zm9jdXMsXG4gICAgICAgIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSkgPiAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdoaXRlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm5vdCgubG9nb3V0KSB7XG4gICAgICAgICAgICAgICAgPiBhLFxuICAgICAgICAgICAgICAgID4gLmJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAkaWNvbi1hcnJvdy1kb3duO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAkaWNvbi1hcnJvdy1sZWZ0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICRpY29uLWFycm93LXJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICRpY29uLWFycm93LXVwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA+IGEsXG4gICAgICAgICAgICA+IC5idXR0b24ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzk2OTY5NjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcHJpbWFyeS1saWdodDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICYuaWNvbi1lbnZlbG9wMSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgJi5pY29uLXNpZ24tb3V0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA+IC5idXR0b24ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICAmLmljb24tZW52ZWxvcDEge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICYuaWNvbi1zaWduLW91dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlY2Y0ZjM7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4udXBkYXRlLXBhc3N3b3JkIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMTBweDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxufVxuXG4udG9wcGVyLXRpdGxlIHtcbiAgICAmLm1hcmdpbi1ib3R0b20tMyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIGgzIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgICBoMiB7XG4gICAgICAgIC5uZXdzbGV0dGVyLW1vZGFsICYge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNSk7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3JlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuc3R5bGUtMSB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAtMXJlbTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUycHg7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5ub3RpZmljYXRpb24tbW9kYWwgJiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnByb2ZpbGUtYXZhdGFyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDc2cHg7XG4gICAgICAgIGhlaWdodDogNzZweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDNweDtcbiAgICAgICAgICAgIGhlaWdodDogMTAzcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wcm9maWxlLWF2YXRhci1lZGl0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnByb2ZpbGUtZGV0YWlscyB7XG4gICAgaDMge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxufVxuXG4ucHJvZmlsZS1jb250ZW50IHtcbiAgICBtYXJnaW46IDFyZW0gMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlY2Y0ZjM7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgICAgIHBhZGRpbmc6IDNyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgfVxufVxuXG4uYXJyb3ctcG9pbnRlciB7XG4gICAgLy9tYXJnaW4tYm90dG9tOiAtNXJlbTtcbiAgICBsb3R0aWUtcGxheWVyIHtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4ubWVudS1wb2ludGVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNy41cmVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG59XG4vKiAtLS0tLS0tIE1ZIFBST0ZJTEUgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLSBQRVJTT05BTElaRSAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG4uaW5wdXQtZmllbGQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgLmljby1sYWJlbCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTZweDtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGNvbG9yOiAjOWE5YTlhO1xuICAgIH1cbiAgICAuaWNvLXNob3cge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgcGFkZGluZy10b3A6IDAuOHJlbTtcbiAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDEuOHJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgJi5pbnB1dC1kZWZhdWx0IHtcbiAgICAgICAgZGlyZWN0aW9uOiBydGw7XG4gICAgICAgIC5pY28tbGFiZWwge1xuICAgICAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxNnB4O1xuICAgICAgICB9XG4gICAgICAgIC5pY28tc2hvdyB7XG4gICAgICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxLjhyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucmVxdWlyZWQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IC0xcmVtO1xuICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgIH1cbn1cblxuLnJlcXVpcmVkIHtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMTBweDtcbn1cblxuLm1lc3NhZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgJi5hbGVydCB7XG4gICAgICAgIGNvbG9yOiAkZXJyb3I7XG4gICAgfVxufVxuXG4ucGVyc29uYWwtbWVzc2FnZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjUpO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICBjb2xvcjogJHByaW1hcnktZGFyaztcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDUwKTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzgpO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG59XG5cbi5hY3Rpb24tYnRuIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW46IDNyZW0gYXV0byAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gICAgYSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgLmJ1dHRvbiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgICAgIHBhZGRpbmc6IDAuOHJlbSAycmVtO1xuICAgICAgICBtaW4td2lkdGg6IDE2OXB4O1xuICAgICAgICBoZWlnaHQ6IDQ2cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbiAgICAvLyAubmV4dC1idG57XG4gICAgLy8gICAmOmhvdmVye1xuICAgIC8vICAgICAubG9uZy1hcnJvdy1sZWZ0e1xuICAgIC8vICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIC8vICAgICAgIHRyYW5zaXRpb246IGFsbCA0MDBtcyBlYXNlLWluLW91dDtcbiAgICAvLyAgICAgfVxuICAgIC8vICAgfVxuICAgIC8vIH1cbiAgICAuc2tpcC1idG4ge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHByaW1hcnktY29sb3I7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgLy9tYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxLjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIC5wcmV2LWJ0biB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7XG4gICAgICAgIGNvbG9yOiAjOTY5Njk2O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG4gICAgICAgIC8vICAgc3BhbntcbiAgICAgICAgLy8gICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIC8vICAgfVxuICAgICAgICAvLyAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgIC8vICAgd2lkdGg6IDUycHg7XG4gICAgICAgIC8vICAgaGVpZ2h0OiA1MnB4O1xuICAgICAgICAvLyAgIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xuICAgICAgICAvLyB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjBmMDtcbiAgICAgICAgICAgIC8vIC5sb25nLWFycm93LXJpZ2h0e1xuICAgICAgICAgICAgLy8gICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIC8vICAgdHJhbnNpdGlvbjogYWxsIDQwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgLy8gfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5nb3RvLWJ0biB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRBMTAwO1xuICAgICAgICBjb2xvcjogJHByaW1hcnktZGFyaztcbiAgICB9XG59XG5cbi5hY3Rpb24tLWJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIC8vIC5wcmV2LWJ0bntcbiAgICAgICAgLy8gICBvcmRlcjogMTtcbiAgICAgICAgLy8gICBwYWRkaW5nOiAwO1xuICAgICAgICAvLyAgIC5sb25nLWFycm93LXJpZ2h0e1xuICAgICAgICAvLyAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIC8vICAgfVxuICAgICAgICAvLyB9XG4gICAgICAgIC5uZXh0LWJ0biB7XG4gICAgICAgICAgICBvcmRlcjogMjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyB+IC5za2lwLWJ0bntcbiAgICAvLyAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XG4gICAgLy8gICAgIG1hcmdpbi1yaWdodDogNHJlbTtcbiAgICAvLyAgIH1cbiAgICAvLyB9XG59XG5cbi5pbWctY292ZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6IDU0MHB4O1xuICAgIH1cbn1cbi5wZXJzb25hbC1pbm5lciB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogOHJlbTtcbiAgICB9XG59XG5cbi5mdW5jdGlvbi1pbmZvIHtcbiAgICBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZ2V0LXN0YXJ0ZWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIC8vaGVpZ2h0OiA4NHZoO1xuICAgIC8vaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDMwcHggMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgLy8vIGhlaWdodDogNjAwcHg7XG4gICAgfVxuICAgIC5hY3Rpb24tYnRuIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB6LWluZGV4OiA0O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICB9XG59XG5cbi5wZXJzb25hbC13cmFwIHtcbiAgICAvL3BhZGRpbmc6IDMwcHggMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJi1iZWZvcmUge1xuICAgICAgICBoZWlnaHQ6IDgwdmg7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTgwcHgpO1xuICAgICAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lOyAvKiBJRSBhbmQgRWRnZSAqL1xuICAgICAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAgICAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi1hZnRlciB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAvLyBib3R0b206IDA7XG4gICAgICAgIC8vIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgLy9AaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDQ7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICAvL31cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYigyNDcsIDI1MCwgMjUwKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAgICAgICAgIDBkZWcsXG4gICAgICAgICAgICAgICAgcmdiYSgyNDcsIDI1MCwgMjUwLCAxKSAwJSxcbiAgICAgICAgICAgICAgICByZ2JhKDI0NywgMjUwLCAyNTAsIDAuNDgyMjMwMzkyMTU2ODYyNykgODAlLFxuICAgICAgICAgICAgICAgIHJnYmEoMjQ3LCAyNTAsIDI1MCwgMCkgMTAwJVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAgICAgICAgIDBkZWcsXG4gICAgICAgICAgICAgICAgcmdiYSgyNDcsIDI1MCwgMjUwLCAxKSAwJSxcbiAgICAgICAgICAgICAgICByZ2JhKDI0NywgMjUwLCAyNTAsIDAuNDgyMjMwMzkyMTU2ODYyNykgODAlLFxuICAgICAgICAgICAgICAgIHJnYmEoMjQ3LCAyNTAsIDI1MCwgMCkgMTAwJVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgICAgICAgICAwZGVnLFxuICAgICAgICAgICAgICAgIHJnYmEoMjQ3LCAyNTAsIDI1MCwgMSkgMCUsXG4gICAgICAgICAgICAgICAgcmdiYSgyNDcsIDI1MCwgMjUwLCAwLjQ4MjIzMDM5MjE1Njg2MjcpIDgwJSxcbiAgICAgICAgICAgICAgICByZ2JhKDI0NywgMjUwLCAyNTAsIDApIDEwMCVcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPVwiI2Y3ZmFmYVwiLGVuZENvbG9yc3RyPVwiI2Y3ZmFmYVwiLEdyYWRpZW50VHlwZT0xKTtcbiAgICAgICAgfVxuICAgICAgICAuYWN0aW9uLWJ0biB7XG4gICAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi1hdXRob3Ige1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmhvcml6b250YWwtc2Nyb2xsLXdyYXBwZXIge1xuICAgIC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCB7XG4gICAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogaW5oZXJpdDtcbiAgICB9XG59XG5cbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG59XG5cbi5ob3Jpem9udGFsLXNjcm9sbC1pbm5lciB7XG4gICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgIC8vIC5tQ1NCX2hvcml6b250YWwubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXJ7XG4gICAgLy8gICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgLy8gfVxufVxuXG4udi1pbm5lci1zY3JvbGwge1xuICAgICYuYXV0aG9ycy1saXN0IHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgICAgICAgY29sdW1uLWdhcDogMTBweDtcbiAgICAgICAgcm93LWdhcDogMTBweDtcbiAgICAgICAganVzdGlmeS1pdGVtczogY2VudGVyO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIDFmcik7XG4gICAgICAgICAgICBjb2x1bW4tZ2FwOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaW5uZXItc2Nyb2xsIHtcbiAgICAvL3BhZGRpbmctbGVmdDogMnJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDZyZW07XG4gICAgfVxuICAgICYuYXV0aG9ycy1saXN0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYXV0aG9yLW9wdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGFnLW9wdGlvbiB7XG4gICAgICAgIC50YWcge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHggMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zZWxlY3QtbGlzdC1pbm5lciB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmctYm90dG9tOiA2cmVtO1xufVxuXG4udGFncy1saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgJi52LWlubmVyLXNjcm9sbCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnBlcnNvbmFsLXdyYXAgJiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDkzN3B4O1xuICAgICAgICAgICAgbWFyZ2luOiA0cmVtIGF1dG8gMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy9wZXJzb25hbGl6ZWQgYXV0aG9yc1xuLmF1dGhvci1vcHRpb24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDg2cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAgIHdpZHRoOiAxMTVweDtcbiAgICB9XG5cbiAgICAuYXV0aG9yLWltZyB7XG4gICAgICAgIHdpZHRoOiA4NnB4O1xuICAgICAgICBoZWlnaHQ6IDg2cHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDEuNXJlbTtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDgwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTMxXCI7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgICAgIH1cblxuICAgICAgICAmOmNoZWNrZWQge1xuICAgICAgICAgICAgfiAuYXV0aG9yLWltZyB7XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgfiAuYXV0aG9yLW1ldGEge1xuICAgICAgICAgICAgICAgIC5hdXRob3ItbmFtZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTMyXCI7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wZXJzb25hbC13cmFwICYge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW46IDAuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmF1dGhvci1tZXRhIHtcbiAgICAuYXV0aG9yLW9wdGlvbiAmIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgIGNvbG9yOiAjOTI5ODk4O1xuICAgICAgICAuYXV0aG9yLW5hbWUge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIG15LXByb2ZpbGUgYXV0aG9yc1xuLm15LWF1dGhvcnMge1xuICAgIC5hdXRob3JzLWxpc3Qge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgICAgfVxuICAgICAgICAvLyAubUNTQl9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVye1xuICAgICAgICAvLyAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIC8vIH1cbiAgICAgICAgLm1DU0JfY29udGFpbmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmF1dGhvci1vcHRpb24ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXJlbTtcbiAgICB9XG4gICAgLmF1dGhvci1pbWcge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICAgICAgd2lkdGg6IDk5cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDk5cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5tYW5hZ2UtYmxvY2sge1xuICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHNlcGFyYXRvci1jb2xvcjtcbiAgICAgICAgcGFkZGluZy10b3A6IDJyZW07XG4gICAgfVxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHRvcDogOTBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFkZC1tb3JlIHtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDAuNXJlbTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRmMGVmO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZWRlYztcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgICAmLmJpZyB7XG4gICAgICAgICAgICB3aWR0aDogOTlweDtcbiAgICAgICAgICAgIGhlaWdodDogOTlweDtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyOCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5zbWFsbCB7XG4gICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5idXR0b24ge1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICAgICAgbWFyZ2luOiAwLjVyZW07XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDAuNXJlbTtcbiAgICB9XG5cbiAgICAuY2F0ZWdvcnktbWVudSAmIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZjBlZjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlNGVkZWM7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi53cml0ZXItY2hlY2sge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgICBAZXh0ZW5kIC5pbnB1dC1jaGVja2JveDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNmNGYzO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIHdpZHRoOiAyNnB4O1xuICAgICAgICBoZWlnaHQ6IDI2cHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIHBhZGRpbmctdG9wOiA3cHg7XG5cbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDgwcHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyZWVuMTtcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAkaWNvbi1wbHVzLWdyZWVuO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICAgICAgICB9XG4gICAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAkaWNvbi1jaGVjay1ncmVlbjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDhweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gbG90dGllIGNoZWNrYm94XG4ubG90dGllLXdyYXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZmxvYXQ6ICN7JGRlZmF1bHQtZGlyZWN0aW9ufTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgICB9XG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgICAgQGV4dGVuZCAuaW5wdXQtY2hlY2tib3g7XG4gICAgfVxuICAgIC5sb3R0aWUtY2hlY2sge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlY2Y0ZjM7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiAyNnB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBoZWlnaHQ6IDI2cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm11bHRpLWNoZWNrIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgICAgQGV4dGVuZCAuaW5wdXQtY2hlY2tib3g7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5hdXRob3JzLWxpc3QgJiB7XG4gICAgICAgIC8vbWFyZ2luOiAxcmVtIGF1dG8gMXJlbTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4udGFnLW9wdGlvbiB7XG4gICAgbWFyZ2luOiAwLjVyZW07XG4gICAgJjpob3ZlciB7XG4gICAgICAgIC50YWcge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuICAgIC50YWcge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2VkOWQ4O1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMnJlbSAwLjJyZW07XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgLm15LXRhZ3MgJixcbiAgICAgICAgLm1vZGFsLXdyYXAgJiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICB9XG4gICAgfVxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgICAgICB+IC50YWcge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5ld3NsZXR0ZXItaWNvIHtcbiAgICBsb3R0aWUtcGxheWVyIHtcbiAgICAgICAgd2lkdGg6IDE3NnB4O1xuICAgICAgICBoZWlnaHQ6IDE3NnB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gICAgLmVudHJ5LXN1YnNjcmliZSAmIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTNyZW07XG4gICAgfVxufVxuXG4vLyBwZXJzb25hbGl6YXRpb24gbmV3c2xldHRlclxuXG4ubmV3c2xldHRlci1saXN0IHtcbiAgICAvLyBAaW5jbHVkZSB0aHJlZS1pdGVtLWNvbHVtbjtcbiAgICAvLyBjb2x1bW4tZ2FwOiAycmVtO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSB0d28taXRlbS1jb2x1bW47XG4gICAgICAgIHJvdy1nYXA6IDJyZW07XG4gICAgfVxuICAgIC5wZXJzb25hbC13cmFwICYge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGdhcDogNTBweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDRyZW07XG4gICAgICAgICAgICAvLyBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMnJlbTtcbiAgICAgICAgICAgIC8vIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5ld3NsZXR0ZXItaXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNmNGYzO1xuICAgIHdpZHRoOiAzMTVweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtYXgtd2lkdGg6IDExODFweCkge1xuICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6IDI5MnB4O1xuICAgICAgICBwYWRkaW5nOiAycmVtIDFyZW0gMXJlbTtcbiAgICB9XG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgICAgIH4gLmNoZWNrYm94LWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgLmljb24tZW52ZWxvcDIge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTNjXCI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnByb2ZpbGUtbmV3c2xldHRlciAmIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAucGVyc29uYWwtd3JhcC1uZXdzbGV0dGVyICYge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5uZXdzbGV0dGVyLWl0ZW0taW5mbyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgfVxufVxuXG4ubmV3c2xldHRlci1pdGVtLWljb24ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiA0OXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC0ycmVtO1xuICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xuICAgIH1cbn1cblxuLm5ld3NsZXR0ZXItaXRlbS1hY3Rpb24ge1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IGF1dG87XG59XG4ubmV3c2xldHRlci1pdGVtLXRpdGxlIHtcbiAgICBoMyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5uZXdzbGV0dGVyLWl0ZW0tbWV0YSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICBjb2xvcjogIzNiM2IzYjtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG5cbiAgICAvLyAgQGV4dGVuZCAuYXJ0aWNsZS1pdGVtLW1ldGE7XG59XG5cbi5jaGVja2JveC1idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICBwYWRkaW5nOiAwLjNyZW0gMXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogMC44cmVtIDEuNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgfVxuICAgIC5pY29tb29uLWljb24ge1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMTBweDtcbiAgICB9XG59XG5cbi5jc3RtLWlucHQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTVweDtcbiAgICB9XG59XG5cbi5lbmQtbWVzc2FnZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDNyZW0gMDtcblxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxNXJlbSk7XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMXJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgfVxuICAgIC5zdWNjZXNzLWxvdHRpZSB7XG4gICAgICAgIHdpZHRoOiAxMzhweDtcbiAgICAgICAgaGVpZ2h0OiAxMzhweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMS41cmVtO1xuICAgIH1cblxuICAgICYtc3VjY2VzcyB7XG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjgpO1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnZlcnRpY2FsLXNjcm9sbC13cmFwcGVyIHtcbiAgICAucmV2ZWFsICYsXG4gICAgLm1vZGFsLXdyYXAgJiB7XG4gICAgICAgIGhlaWdodDogNDUwcHg7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAgICAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi52ZXJ0aWNhbC1zY3JvbGwtaW5uZXIge1xuICAgIC5yZXZlYWwgJixcbiAgICAubW9kYWwtd3JhcCAmIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbn1cblxuLnJldmVhbC1vdmVybGF5IHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuOTUpO1xufVxuXG4uc3Vic2NyaWJlLWFsbCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxcmVtO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgIH1cbn1cblxuLm5vdGlmLW1lc3NhZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDAuNXJlbTtcbn1cbi8qIC0tLS0tLS0gUEVSU09OQUxJWkUgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0gQ1VTVE9NIE1PREFMIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cbi5tb2RhbC1vcGVuIHtcbiAgICAvLyBwb3NpdGlvbjogZml4ZWQ7XG4gICAgLy8gd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuLm1vZGFsLXRvZ2dsZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuLm1vZGFsLXdyYXAge1xuICAgIHBhZGRpbmc6IDJyZW07XG5cbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogMTAwMDA7IC8qIDEgKi9cbiAgICB0b3A6IDA7XG4gICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIH1cbn1cblxuLm1vZGFsLXdyYXAuaXMtdmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBvcGFjaXR5OiAxO1xufVxuXG4ubW9kYWwtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDk5O1xuICAgIHRvcDogMDtcbiAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLy90cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzIGxpbmVhciAwLjNzLCBvcGFjaXR5IDAuM3M7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW47XG59XG5cbi5tb2RhbC13cmFwLmlzLXZpc2libGUgLm1vZGFsLW92ZXJsYXkge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbn1cblxuLm1vZGFsLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiA5NSU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGJveC1zaGFkb3c6IDAgMCAxLjVlbSBoc2xhKDAsIDAlLCAwJSwgMC4zNSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB3aWR0aDogNjByZW07XG4gICAgICAgIC5ub3RpZmljYXRpb24tbW9kYWwgJiB7XG4gICAgICAgICAgICB3aWR0aDogMzkwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubm90aWZpY2F0aW9uLW1vZGFsICYge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmVlbjtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzZweDtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMDhweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm1vZGFsLXRyYW5zaXRpb24ge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIDAuMTJzO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAlKTtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4ubW9kYWwtd3JhcC5pcy12aXNpYmxlIC5tb2RhbC10cmFuc2l0aW9uIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICAgIHRvcDogMXJlbTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICB9XG59XG5cbi5tb2RhbC1jbG9zZSxcbi5nYW1lLWNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6IDAuOGVtO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC1zaXplOiAyNXB4O1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAubm90aWZpY2F0aW9uLW1vZGFsICYge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICM3Nzc7XG4gICAgfVxufVxuXG4ubW9kYWwtYmVmb3JlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICAuY2xvc2UtYnV0dG9uIHtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB9XG4gICAgLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuLm1vZGFsLWlubmVyIHtcbiAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAwIDNyZW07XG4gICAgfVxuXG4gICAgLm5vdGlmaWNhdGlvbi1tb2RhbCAmIHtcbiAgICAgICAgcGFkZGluZzogMjBweCAyMHB4IDUwcHg7XG4gICAgICAgIC8qIE1vYmlsZSBMYW5kc2NhcGUgKi9cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aDogMzIwcHgpIGFuZCAobWF4LWRldmljZS13aWR0aDogODk2cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAgICAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogc2Nyb2xsO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aDogNDEycHgpIGFuZCAobWF4LWRldmljZS13aWR0aDogOTE2cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAgICAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogc2Nyb2xsO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDYwMXB4KSBhbmQgKG1pbi1oZWlnaHQ6IDYwMHB4KSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDUwMHB4O1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHNjcm9sbDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDM1cHggMXJlbSA3NXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2VsZWN0LWFsbCB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMXJlbTtcbiAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBsaW5lLWhlaWdodDogMC4yO1xuICAgIH1cbiAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOiA3cHg7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA1cHg7XG4gICAgfVxufVxuXG4vLyBuZXdzbGV0dGVyIE1PREFMXG4ubmV3c2xldHRlci1tb2RhbCB7XG4gICAgLm5ld3NsZXR0ZXItaWNvIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTI2cHg7XG4gICAgfVxuXG4gICAgLm1vZGFsLWlubmVyIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQzcHg7XG4gICAgfVxuXG4gICAgZm9ybSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgICA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5tYWlsY2hpbXAtbmV3c2xldHRlci1zdWJzY3JpYmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDFyZW0gYXV0byAwO1xuICAgIH1cblxuICAgIC5uZXdzbGV0dGVyLWNvbnRlbnQgLm1haWxjaGltcC1uZXdzbGV0dGVyLXN1YnNjcmliZSB7XG4gICAgICAgIG1heC13aWR0aDogNTkwcHg7XG4gICAgICAgIG9yZGVyOiAzO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBvdmVyZmxvdzogc2Nyb2xsO1xuICAgIH1cbiAgICAvLyAuc3VjY2VzcyB7XG4gICAgLy8gICAgIC5tYWlsY2hpbXAtbmV3c2xldHRlci1zdWJzY3JpYmUge1xuICAgIC8vICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIC8vICAgICB9XG4gICAgLy8gfVxuXG4gICAgLm1lc3NhZ2VzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG5cbiAgICAubWVzc2FnZXMubWVzc2FnZXMtLXN0YXR1cyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAkaWNvbi1ncmVlbi1jaGVjaztcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubmV3c2xldHRlci1jb250ZW50IHtcbiAgICAubWFpbGNoaW1wLWlubmVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgICAgICAgIGFjY2VudC1jb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5tYWlsY2hpbXAtbmV3c2xldHRlci13cmFwcGVyIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubWFpbGNoaW1wLW5ld3NsZXR0ZXItc3Vic2NyaWJlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAuZm9ybS1yZXF1aXJlZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5qcy1mb3JtLWl0ZW0ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubWFpbGNoaW1wLW5ld3NsZXR0ZXItbWVyZ2VmaWVsZHMge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICBpbnB1dC5mb3JtLWVtYWlsIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjODQ4ZThkO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICAgICAgICAvLyBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMTByZW07XG4gICAgICAgIC8vIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXJlbTtcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICAgIC5mb3JtLXN1Ym1pdCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAvLyAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgIC8vIHRvcDogMDtcbiAgICAgICAgaGVpZ2h0OiAyLjczNzVyZW07XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZzogMC41cmVtIDNyZW07XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmM4YTgyO1xuICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5vdGlmaWNhdGlvbi1tb2RhbCB7XG4gICAgLmJ1dHRvbiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBtYXJnaW46IDAgMC4ycmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMC41cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5idXR0b24uZGFyayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gICAgLmJ1dHRvbi5saWdodCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgaGVpZ2h0OiAyMjlweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxOXB4O1xuICAgICAgICBjb2xvcjogI2VmZWNlMjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgLmNob2ljZXMge1xuICAgICAgICBtYXJnaW4tdG9wOiA0NXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgIH1cbn1cblxuLyogLS0tLS0tLSBDVVNUT00gTU9EQUwgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi8gXG5cbi8qIC0tLS0tLS0gNDA0IE5PVCBGT1VORCAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG5cbi5ub3QtZm91bmQtd3JhcCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAubm90LWZvdW5kLXRleHQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDogMzByZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm5vdC1mb3VuZC1pbm5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgLm5vdC1mb3VuZC1pbWcge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIH1cbiAgICB9XG59XG4ubm90LWZvdW5kLW51bSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYyg5OCk7XG4gICAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFNlcmlmXCIsIHNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1NCk7XG4gICAgfVxufVxuLm5vdC1mb3VuZC10eHQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luOiAxcmVtIDAgNHJlbTtcbiAgICB9XG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMyKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDU0KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBwIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgIGNvbG9yOiAjNGQ0ZDRkO1xuICAgIH1cbn1cbi5ub3QtZm91bmQtYnRuIHtcbiAgICAuYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gM3JlbTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIC0tLS0tLS0gNDA0IE5PVCBGT1VORCAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovIFxuXG4vKiAtLS0tLSBXRUFUSEVSIFdJREdFVCAtLS0tLS0gU1RBUlQgLS0tLS0tICovXG5cbi53ZWF0aGVyLXdpZGdldCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xufVxuXG4jY3VycmVudFdlYXRoZXIge1xuICAgIGhlaWdodDogMTAwJTtcbn1cblxuLndlYXRoZXItb3V0bGluZSB7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAtbW96LWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgLW8tYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgcGFkZGluZzogMXJlbSAycmVtIDFyZW07XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgIH1cblxuICAgIC8qIG5ldGJvb2sgb25seSAqL1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgIH1cbn1cblxuLnJhaW55IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL3dlYXRoZXIvcmFpbnkuanBnKTtcbn1cblxuLmNsb3VkeSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy93ZWF0aGVyL2Nsb3VkeS5qcGcpO1xufVxuLnNhbmRzdG9ybSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy93ZWF0aGVyL3NhbmRzdG9ybS5qcGcpO1xufVxuLmNsZWFyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL3dlYXRoZXIvY2xlYXIuanBnKTtcbn1cbi53ZWF0aGVyLWljbyB7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIC1tb3otYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIC1vLWJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgLy93aWR0aDogMjY0cHg7XG4gICAgaGVpZ2h0OiAyNjRweDtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge1xuICAgICAgICBoZWlnaHQ6IDI0MHB4O1xuICAgIH1cbn1cbi5zdW4taWNvIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb24vd2VhdGhlci9jb25kaXRpb24vc3VuLnN2Zyk7XG59XG4ubW9vbi1pY28ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi93ZWF0aGVyL2NvbmRpdGlvbi9tb29uLnN2Zyk7XG59XG4uc3VuX2Nsb3Vkcy1pY28ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi93ZWF0aGVyL2NvbmRpdGlvbi9zdW5fY2xvdWRzLnN2Zyk7XG59XG4ubW9vbl9jbG91ZHMtaWNvIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb24vd2VhdGhlci9jb25kaXRpb24vbW9vbl9jbG91ZHMuc3ZnKTtcbn1cbi5jbG91ZHMtaWNvIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2ljb24vd2VhdGhlci9jb25kaXRpb24vY2xvdWRzLnN2Zyk7XG59XG4ucmFpbi1pY28ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi93ZWF0aGVyL2NvbmRpdGlvbi9yYWluLnN2Zyk7XG59XG4ubGlnaHRuaW5nLWljbyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29uL3dlYXRoZXIvY29uZGl0aW9uL2xpZ2h0bmlnaHQuc3ZnKTtcbn1cbi5zdW5fcmFpbl9zbm93LWljbyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29uL3dlYXRoZXIvY29uZGl0aW9uL3N1bl9yYWluX3Nub3cuc3ZnKTtcbn1cbi5tb29uX3JhaW5fc25vdy1pY28ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi93ZWF0aGVyL2NvbmRpdGlvbi9tb29uX3JhaW5fc25vdy5zdmcpO1xufVxuLmZvZy1pY28ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvaWNvbi93ZWF0aGVyL2NvbmRpdGlvbi9mb2cuc3ZnKTtcbn1cblxuLndlYXRoZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAtbW96LWJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgLW8tYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMjJweDtcbn1cbi5tb3JuaW5nLWljbyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29uL3dlYXRoZXIvbW9ybmluZy5zdmcpO1xufVxuLm5pZ2h0LWljbyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltZy9pY29uL3dlYXRoZXIvbmlnaHQuc3ZnKTtcbn1cblxuLndlYXRoZXItZGV0YWlscyB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ud2VhdGhlci1vdXRsaW5lLWNpdHkge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNTApO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ud2VhdGhlci1vdXRsaW5lLWNvbmRpdGlvbiB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogNHJlbTtcbiAgICB3aWR0aDogMjM1cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbGVmdDogLTJyZW07XG4gICAgfVxuICAgIC8qIFNtYWxsZXN0IG9ubHkgKi9cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge1xuICAgICAgICB3aWR0aDogMjA1cHg7XG4gICAgfVxuXG4gICAgLyogbmV0Ym9vayBvbmx5ICovXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgbGVmdDogLTFyZW07XG4gICAgfVxufVxuXG4ud2VhdGhlci1vdXRsaW5lLWluZm8ge1xuICAgIG1hcmdpbi10b3A6IGF1dG87XG59XG5cbi53ZWF0aGVyLW91dGxpbmUtc3RhdHVzIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogLTRyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi53ZWF0aGVyLXRvZGF5IHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgIH1cbiAgICB0aW1lIHtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7XG4gICAgfVxufVxuXG4ud2VhdGhlci10ZW1wZXJhdHVyZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMTAwcHg7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogM3JlbTtcbiAgICBkaXJlY3Rpb246IGx0cjtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgIC8qIFNtYWxsIG9ubHkgKi9cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMjBweCkge1xuICAgICAgICBmb250LXNpemU6IDgwcHg7XG4gICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDFyZW07XG4gICAgfVxuXG4gICAgLyogbmV0Ym9vayBvbmx5ICovXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDFyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogODBweDtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogM3JlbTtcbiAgICAgICAgcmlnaHQ6IC0ycmVtO1xuICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJvcmRlcjogNXB4IHNvbGlkICR3aGl0ZTtcblxuICAgICAgICAvKiBTbWFsbCBvbmx5ICovXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDMyMHB4KSB7XG4gICAgICAgICAgICB0b3A6IDJyZW07XG4gICAgICAgICAgICByaWdodDogLTEuNXJlbTtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLyogbmV0Ym9vayBvbmx5ICovXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgICAgICAgICAgdG9wOiAycmVtO1xuICAgICAgICAgICAgcmlnaHQ6IC0xLjVyZW07XG4gICAgICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmRheXBhcnQge1xuICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWZlZmVmO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IDAgMC4ycmVtIDFyZW07XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAmLmFjdGl2ZSxcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZTRmMGVmO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzZlMmRmO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG4uZGF5cGFydC1kYXkge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbn1cblxuLmRheXBhcnQtZGF0ZSB7XG4gICAgY29sb3I6ICNiY2JjYmM7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG59XG5cbi53ZWF0aGVyLWluZm8taXRlbSB7XG4gICAgbWFyZ2luOiAwLjVyZW07XG4gICAgcGFkZGluZzogMC41cmVtO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgIH1cbn1cbi53ZWF0aGVyLWljb24ge1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xufVxuXG4vKiAtLS0tLSBXRUFUSEVSIFdJREdFVCAtLS0tLS0gRU5EIC0tLS0tLSAqL1xuXG4vKiAtLS0tLSBQT0RDQVNUIEJMT0NLLS0tLS0tIFNUQVJUIC0tLS0tLSAqL1xuLnBvZGNhc3QtbGlzdCB7XG4gICAgLnNpZGViYXItd3JhcCAmIHtcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZGF0ZS1maWVsZCxcbiAgICAucG9kY2FzdC10aW1lIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xuICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwcHg7XG4gICAgICAgIH1cbiAgICAgICAgdGltZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDExKTtcbiAgICAgICAgfVxuICAgICAgICBhLFxuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wb2RjYXN0LWJsb2NrIHtcbiAgICBAZXh0ZW5kIC5ibG9jay1jdXN0b20tYmc7XG4gICAgcGFkZGluZzogMTBweCAxcmVtO1xufVxuXG4ucG9kY2FzdC10aW1lIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBpIHtcbiAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXJlbTtcbiAgICAgICAgZmxvYXQ6ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn07XG4gICAgICAgIHBhZGRpbmc6IDAgMTBweCAwIDA7XG4gICAgICAgIC5ibG9jay1jb250ZW50ICYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktbGlnaHQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIGEsXG4gICAgYnV0dG9uIHtcbiAgICAgICAgLm5ld3MtdGlja2VyLWFyZWEgJiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm5ld3MtdGlja2VyLWFyZWEgJiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgcGFkZGluZzogOHB4O1xuICAgICAgICAgICAgd2lkdGg6IDI5cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDI5cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAuaWNvbi1wbGF5LWdyZWVuOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM0ZDhhODg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJFZmZyYVwiO1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA4cHg7XG4gICAgICAgICAgICAgICAgLy8gaGVpZ2h0OiAyOXB4O1xuICAgICAgICAgICAgICAgIC8vIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgLy8gYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucG9kY2FzdC1pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEzKTtcblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE0KTtcbiAgICB9XG4gICAgLm1lZGlhLW9iamVjdCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBjb2xvcjogIzU1NTU1NTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgICAgICB9XG4gICAgICAgIGg2IHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1kYXJrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGY3Zjc7XG4gICAgfVxuICAgID4gYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICB9XG5cbiAgICAucG9kY2FzdC1ncmlkICYge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wb2RjYXN0LWlmcmFtZS1lcGlzb2RlcyB7XG4gICAgbWFyZ2luOiAxcmVtIGF1dG87XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgd2lkdGg6IDgwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB3aWR0aDogNzAlO1xuICAgIH1cbn1cblxuLnBvZGNhc3QtbGFiZWwge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1kYXJrO1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBpIHtcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNXJlbTtcbiAgICB9XG4gICAgbG90dGllLXBsYXllciB7XG4gICAgICAgIHdpZHRoOiAyMnB4O1xuICAgICAgICBoZWlnaHQ6IDE5cHg7XG4gICAgICAgIGZsb2F0OiAjeyRkZWZhdWx0LWRpcmVjdGlvbn07XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xuICAgIH1cbiAgICAub3Bpbmlvbi1hdXRob3JzLWxpc3QgJiB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0IDBzO1xuICAgIH1cblxuICAgIC5hdWRpby1wbGF5ZXItdG9wICYge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gcG9kY2FzdCBwYWdlc1xuXG4ucG9kY2FzdC1ncmlkIHtcbiAgICAuZGF0ZS1maWVsZCB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5wb2RjYXN0LXRpbWUge1xuICAgICAgICBpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgIH1cbiAgICAgICAgdGltZSB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wb2RjYXN0LXNjcmVlbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VjZjRmMztcbiAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgbWFyZ2luLWJvdHRvbTogLTFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLTIuNXJlbTtcbiAgICB9XG59XG5cbi5wb2RjYXN0LXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICAgIGg0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDFyZW07XG4gICAgfVxufVxuXG4ucG9kY2FzdC1lcGlzb2RlLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGgyIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzMyk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wb2RjYXN0LXNwZWFrZXIge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucG9kY2FzdC1lcGlzb2RlLW1ldGEge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgLnBvZGNhc3QtbGVuZ3RoIHtcbiAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMC41cmVtO1xuICAgICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMC41cmVtO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJvcmRlci0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDFweCBzb2xpZCAjOTI5ODk4O1xuICAgIH1cbn1cblxuLnBvZGNhc3QtZXBpc29kZS1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwIDEuNXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiAwIDVyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogMCAxM3JlbTtcbiAgICB9XG4gICAgcCB7XG4gICAgICAgIGNvbG9yOiAjNGQ0ZDRkO1xuICAgIH1cbn1cblxuLnBvZGNhc3QtZXBpc29kZS1pdGVtIHtcbiAgICAuZ3JpZC14IHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gICAgLnBvZGNhc3QtaW1nIHtcbiAgICAgICAgd2lkdGg6IDE0MXB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDogMjM1cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnBvZGNhc3QtdGl0bGUge1xuICAgICAgICBoNCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnBvZGNhc3QtYnRuIHtcbiAgICBtYXJnaW46IDJyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIC5wb2RjYXN0LWVwaXNvZGUtaXRlbSAmIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICB9XG59XG5cbi5wbGF5LXBvZGNhc3QtYnRuIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMnJlbTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHdpZHRoOiAxODBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwcHg7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgfVxufVxuXG4uYXVkaW8tcGxheWVyLXRvcCxcbi5wbGF5LXBvZGNhc3QtYnRuIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgJi5wbGF5aW5nIHtcbiAgICAgICAgLmljb24tcGxheS1ncmVlbiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTkyM1wiO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ucG9kY2FzdC1zb2NpYWxzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gICAgYSB7XG4gICAgICAgIG1hcmdpbjogMXJlbSAxLjVyZW0gMDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAmLmdvb2dsZS1wb2RjYXN0LWJ0biB7XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5hcHBsZS1wb2RjYXN0LWJ0biB7XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDExMnB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgICAgIG1hcmdpbjogMXJlbSAxcmVtIDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi10aXRsZSB7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG59XG5cbi5wb2RjYXN0LWJhbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDM1MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzNmIxOGM7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIHRleHQtYWxpZ246IGluaXRpYWw7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgaGVpZ2h0OiAyMTBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG59XG5cbi5wb2RjYXN0LWltZyB7XG4gICAgLnBvZGNhc3QtYmFubmVyICYge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogaW5pdGlhbDtcbiAgICAgICAgYm90dG9tOiAtNXJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAgICAgICB0b3A6IC02cmVtO1xuICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHdpZHRoOiA0NTBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnBvZGNhc3QtY29udGVudCB7XG4gICAgcGFkZGluZzogMS41cmVtO1xuICAgIHotaW5kZXg6IDE7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgfVxuICAgIGgzIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICAgIHAge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiAgICB9XG59XG5cbi5yZXR1cm4tYnRuIHtcbiAgICBtYXJnaW46IDFyZW0gMDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIGkge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMHB4O1xuICAgIH1cbn1cblxuLm1vcmUtYnRuIHtcbiAgICBtYXJnaW46IDJyZW07XG4gICAgLmJ1dHRvbiB7XG4gICAgICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMnJlbTtcbiAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDJyZW07XG4gICAgfVxufVxuXG4ucGFnZS1idG5zIHtcbiAgICAvL3Bvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIC8vICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgLy8gI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIC5lbnRyeS1zaGFyZS1yb3cuZW50cnktYm9va21hcmsge1xuICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxcmVtO1xuICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICB9XG5cbiAgICAmLmZsZXgtY29udGFpbmVyIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5vcGluaW9uLWF1dGhvcnMtbGlzdCB7XG4gICAgJi5oYXMtc2VwYXJhdG9yIHtcbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgLmFydGljbGUtaXRlbSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hcnRpY2xlLWl0ZW0taW1nIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYXJ0aWNsZS1pdGVtLWluZm8ge1xuICAgICAgICAvLyBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAvLyBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIC8vIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIC8vIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgLy9qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICB9XG5cbiAgICB+IC5vcGluaW9uLWF1dGhvcnMtbGlzdDpsYXN0LWNoaWxkIHtcbiAgICAgICAgJi5oYXMtc2VwYXJhdG9yIHtcbiAgICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQgLmFydGljbGUtaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy9ob21lcGFnZSBwb2RjYXN0IHNpbmdsZSBibG9ja1xuLnBsYXktcG9kY2FzdC1idG4ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgLmxibC1wbGF5aW5nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgJi5wbGF5aW5nIHtcbiAgICAgICAgLmxibC1wYXVzZWQge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAubGJsLXBsYXlpbmcge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgfVxufVxuLnBvZGNhc3Qtc2luZ2xlLWJsb2NrIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzM2YjE4YztcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHBhZGRpbmc6IDNyZW0gMnJlbSAwO1xuICAgIEBleHRlbmQgLmZ1bGwtYmc7XG4gICAgLnBvZGNhc3QtdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI3KTtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogYm9sZDtcbiAgICB9XG4gICAgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIC5wb2RjYXN0LWltZyB7XG4gICAgICAgIHdpZHRoOiAxNjZweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxufVxuXG4vKiAtLS0tLSBQT0RDQVNUIEJMT0NLLS0tLS0tIEVORCAtLS0tLS0gKi9cbi8qIC0tLS0tIENBUklDQVRVUkUgQkxPQ0sgLS0tLS0tIFNUQVJUIC0tLS0tLSAqL1xuXG4uY2FyaWNhdHVyZS1zbGlkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGZsZXgtZmxvdzogbm93cmFwO1xuICAgICAgICBvdmVyZmxvdy14OiBzY3JvbGwgIWltcG9ydGFudDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gICAgICAgIG1hcmdpbjogMCAtMXJlbTtcbiAgICAgICAgZ2FwOiAyMHB4O1xuICAgICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICAgICAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG5cbiAgICAgICAgPiAuY2FyaWNhdHVyZS1zbGlkZSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHNjcm9sbC1zbmFwLWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNhcmljYXR1cmUtc2xpZGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qIC0tLS0tIENBUklDQVRVUkUgQkxPQ0sgLS0tLS0tIEVORCAtLS0tLS0gKi9cblxuLyogLS0tLS0gTkVXU1RJQ0tFUiBXSURHRVQgLS0tLS0tIFNUQVJUIC0tLS0tLSAqL1xuXG4uc21hcnRpY2tlciB7XG4gICAgJi5hbGVydCB7XG4gICAgICAgIC5zbWFydGlja2VyLWNhdGVnb3J5IHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYWxlcnQtY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnNtYXJ0aWNrZXItY2F0czpiZWZvcmUge1xuICAgICAgICAgICAgY29sb3I6ICRhbGVydC1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuc21hcnRpY2tlci1jYXRlZ29yeSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgfVxuICAgICAgICBsaTpub3QoLmFjdGl2ZS1hZykge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5ld3N0aWNrZXItYXJlYS0tdjIge1xuICAgIC5hY21lLW5ld3MtdGlja2VyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgIH1cbiAgICAuYWNtZS1uZXdzLXRpY2tlci1ib3gge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOTtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5hY21lLW5ld3MtdGlja2VyLWxhYmVsIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiAkYWxlcnQtY29sb3I7XG4gICAgICAgIGZsb2F0OiAjeyRkZWZhdWx0LWRpcmVjdGlvbn07XG4gICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxNXB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDEwcHg7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwifFwiO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgY29sb3I6ICNjZTMyMzI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5ld3MtdGlja2VyLWFyZWEge1xuICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJhY2tncm91bmQtY29sb3I7XG59XG5cbiNuZXdzLXRpY2tlciB7XG4gICAgLy8gbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgIC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAvLyAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICAvLyB9XG59XG5cbi8qIC0tLS0tIE5FV1NUSUNLRVIgV0lER0VUIC0tLS0tLSBFTkQgLS0tLS0tICovXG5cbi8qIC0tLS0tLS0gTU9TVCBQQUdFUyAgLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuXG4uYm90dG9tRml4ZWQge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiA5O1xufVxuXG4uYm9va21hcmstY2hlY2sge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgICAgQGV4dGVuZCAuaW5wdXQtY2hlY2tib3g7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgLnBhZ2UtYnRucyAmIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAvLyAmOmhvdmVye1xuICAgICAgICAvLyAgIGJhY2tncm91bmQtY29sb3I6ICNEOUVERUI7XG4gICAgICAgIC8vIH1cblxuICAgICAgICAmOmNoZWNrZWQge1xuICAgICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIH4gaSB7XG4gICAgICAgICAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogI0Q5RURFQjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJGljb24tYm9va21hcmstZ3JlZW47XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGkge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGY3ZjY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgaGVpZ2h0OiAzOHB4O1xuICAgICAgICB3aWR0aDogMzhweDtcbiAgICAgICAgcGFkZGluZzogMTJweCAxMHB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgLnQtaC1jb250ZW50ICYge1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnBvZGNhc3Qtc2NyZWVuICYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JlZW4xO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uZm9sbG93LXRhZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgICAgQGV4dGVuZCAuaW5wdXQtY2hlY2tib3g7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgICAgIH4gLmZvbGxvdy1jaGVjayB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJGljb24tY2hlY2stZ3JlZW47XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5mb2xsb3ctY2hlY2sge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIHBhZGRpbmc6IDdweCAxM3B4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogM3B4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4udC1oIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi50aHVtYiB7XG4gICAgd2lkdGg6IDc1cHg7XG4gICAgaGVpZ2h0OiA3NXB4O1xuICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLm9wLXNsaWRlciB7XG4gICAgLm9wLXNsaWRlci1pdGVtIHtcbiAgICAgICAgLnBvZGNhc3QtaXRlbSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuMjgxMjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMS4yODEyNXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuc2xpY2stbGlzdCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEuMjgxMjVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMS4yODEyNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgfVxuICAgIC8vIEBpbmNsdWRlIGN1c3RvbS1kb3RzO1xuICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDllMmUwO1xuICAgIH1cbn1cblxuLnNwb3RsaWdodC1jYXJvdXNlbCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAuYXJ0aWNsZS1pdGVtIHtcbiAgICAgICAgICAgIC8vIHBhZGRpbmc6IDAgMTJweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zcG90bGlnaHQtY2Fyb3VzZWwsXG4udmlkZW8tY2Fyb3VzZWwge1xuICAgIC8qIE1vYmlsZSBMYW5kc2NhcGUgKi9cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA4OTZweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgICAgICA+IC5jZWxsIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDcwJSAtIDQwcHgpICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBNb2JpbGUgUG9ydHJhdGUgKi9cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA4OTZweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgICAgID4gLmNlbGwge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLyogTW9iaWxlIFBvcnRyYXRlIC0gTGFuZHNjYXBlICovXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aDogMzIwcHgpIGFuZCAobWF4LWRldmljZS13aWR0aDogODk2cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSB7XG4gICAgICAgIGZsZXgtZmxvdzogbm93cmFwO1xuICAgICAgICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gICAgICAgIHNjcm9sbC1zbmFwLXR5cGU6IHggbWFuZGF0b3J5O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwIDAuNDc1cmVtO1xuXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gICAgICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTtcblxuICAgICAgICA+IC5jZWxsIHtcbiAgICAgICAgICAgIC8vIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmLmd1dHRlcnMtMXggPiAuY2VsbCB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc3BvdGxpZ2h0LWNhcm91c2VsIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHJvdy1nYXA6IDMwcHg7XG4gICAgfVxufVxuXG4ub2JqZWN0cy1saXN0LnZpZGVvLWNhcm91c2VsIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZmxleC1mbG93OiBub3dyYXA7XG4gICAgICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICAgICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTFyZW0gIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgMC40NzVyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuXG4gICAgICAgID4gLm9iamVjdC1pdGVtIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgc2Nyb2xsLXNuYXAtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG4gICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxpc3Qtc2Nyb2xsIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICAgICAgICAvKiBJbnRlcm5ldCBFeHBsb3JlciAxMCsgKi9cbiAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAgICAgICAvKiBGaXJlZm94ICovXG5cbiAgICAgICAgZmxleC1mbG93OiBub3dyYXA7XG4gICAgICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgICAgICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTFyZW0gIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xcmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgMC40NzVyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIC8qIFNhZmFyaSBhbmQgQ2hyb21lICovXG4gICAgICAgIH1cblxuICAgICAgICAuc2VlLW1vcmUtbGluayB7XG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNwb3RsaWdodC1jYXJvdXNlbCxcbi5zbS1jYXJvdXNlbCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAvL21hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAtMy41cmVtO1xuICAgICAgICAuc2xpY2stbGlzdCB7XG4gICAgICAgICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLnNsaWNrLXNsaWRlIHtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIC5vd2wtc3RhZ2Utb3V0ZXIge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIH1cbiAgICAgICAgLm93bC1zdGFnZSB7XG4gICAgICAgICAgICAvLyBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZsZXgtZ3JpZCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyNyUgMzMuMzMlO1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMWZyO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWFyZWFzOlxuICAgICAgICAgICAgXCJhIGIgYlwiXG4gICAgICAgICAgICBcImMgYiBiXCJcbiAgICAgICAgICAgIFwiYyBiIGJcIjtcblxuICAgICAgICAuYzEge1xuICAgICAgICAgICAgZ3JpZC1hcmVhOiBhO1xuICAgICAgICB9XG4gICAgICAgIC5jMiB7XG4gICAgICAgICAgICBncmlkLWFyZWE6IGI7XG4gICAgICAgIH1cblxuICAgICAgICAuYzMge1xuICAgICAgICAgICAgZ3JpZC1hcmVhOiBjO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYXV0aG9yLWl0ZW0ge1xuICAgICYtdGl0bGUge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuXG4gICAgLm1lZGlhLW9iamVjdCB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZpeGVkLXkge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgaGVpZ2h0OiA4MHZoO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbn1cblxuLnZlcnRpY2FsLXNjcm9sbCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICBoZWlnaHQ6IDgwdmg7XG4gICAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTsgLyogSUUgYW5kIEVkZ2UgKi9cbiAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyAvKiBGaXJlZm94ICovXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jYXRlZ29yeS1tZW51IHtcbiAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgJi5maXhlZCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB6LWluZGV4OiA5O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbi5jYXRlZ29yeS1tZW51LWFkZCB7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNXJlbTtcbn1cblxuLmNhdGVnb3J5LW1lbnUtdGFncyB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmNhdGVnb3J5LXRhZ3Mge1xuICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjVyZW07XG4gICAgICAgICYuYWN0aXZlLFxuICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmFjdGl2ZSxcbiAgICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGJ1dHRvbjpub3QoLmF1dGhvci10YWcpLFxuICAgIGE6bm90KC5hdXRob3ItdGFnKSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjN2Q4ZDY7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICBjb2xvcjogIzY0N2U3YztcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhdGVnb3J5LW1lbnUgJiB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIC8vbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogLjVyZW07XG4gICAgfVxufVxuXG4uYXV0aG9yLXRhZ3Mge1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgLm93bC1zdGFnZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIGJ1dHRvbiB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gICAgbGk6bm90KC5hbGwtdGFnKSB7XG4gICAgICAgICYuaXMtYWN0aXZlLFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2F0X2pzLm93bC1jYXJvdXNlbCB7XG4gICAgYSB7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgIH1cbiAgICAub3dsLW5hdiB7XG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICB3aWR0aDogMjdweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgIGNvbG9yOiAjNjQ3ZTdjO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBidXR0b24ub3dsLXByZXYge1xuICAgICAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogI3skZGVmYXVsdC1kaXJlY3Rpb259O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZTlmMmVmO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDI0MiwgMjQ4LCAyNDYsIDApIDAlLCByZ2JhKDI0MiwgMjQ4LCAyNDYsIDAuODUpIDQ1JSwgI2U5ZjJlZiAxMDAlKTtcbiAgICAgICAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9XCIjZjJmOGY2XCIsZW5kQ29sb3JzdHI9XCIjZjJmOGY2XCIsR3JhZGllbnRUeXBlPTEpO1xuICAgICAgICB9XG4gICAgICAgIGJ1dHRvbi5vd2wtbmV4dCB7XG4gICAgICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZTlmMmVmO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgyNDIsIDI0OCwgMjQ2LCAwKSAwJSwgcmdiYSgyNDIsIDI0OCwgMjQ2LCAwLjg1KSA0NSUsICNlOWYyZWYgMTAwJSk7XG4gICAgICAgICAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPVwiI2YyZjhmNlwiLGVuZENvbG9yc3RyPVwiI2YyZjhmNlwiLEdyYWRpZW50VHlwZT0xKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmF1dGhvci10YWcge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDM1cHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDMwcHg7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDMzcHg7XG4gICAgICAgIGhlaWdodDogMzNweDtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDVweDtcbiAgICAgICAgLm93bC1jYXJvdXNlbCAmIHtcbiAgICAgICAgICAgIHdpZHRoOiAzM3B4O1xuICAgICAgICAgICAgaGVpZ2h0OiAzM3B4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYy10YWJzIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q1ZGNkYztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmFja2dyb3VuZC1jb2xvcjtcbiAgICB6LWluZGV4OiAyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cbiAgICAmLmhjLXN0aWNreSB7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA0MHB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDogMzMuMzMlO1xuICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBhIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDAgNnB4O1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBjb2xvcjogIzk2OTY5NjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbn1cblxuLmMtdGFic19qcyBhLmlzLWFjdGl2ZSB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgJHByaW1hcnktY29sb3I7XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAuYy10YWItY29udGVudF9qcyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLnRhYi1hY3RpdmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbmhyIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkc2VwYXJhdG9yLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIH1cblxuICAgIC5ncmlkLWNvbHVtbi0yICYsXG4gICAgLmJsb2NrLXdyYXBwZXIgJiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4udGFicy1jb250ZW50IHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICYudmVydGljYWwge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbn1cblxuLy90b3AgNVxuLm51bWJlcnMtY291bnQge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDQwKTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnRvcC1maXZlIHtcbiAgICAudGFicy1jb250ZW50IHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICAvL2NvbG9yOiAjMDYyNjI2O1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5udW1iZXJzLWNvdW50IHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxufVxuXG4vKiAtLS0tLS0tIE1PU1QgUEFHRVMgICAtLS0tLS0tIEVORCAtLS0tLS0tLSAqL1xuXG4vKiAtLS0tLS0tIFZJREVPIEJMT0NLIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cblxuLmJsb2NrLWNvbnRlbnQge1xuICAgIC50YWJzLXBhbmVsIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59XG5cbi5jYXRlZ29yeS1uYW1lIHtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgLmJsb2NrLXdyYXBwZXIgJiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjcyKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnZpZGVvLXNlY3Rpb24ge1xuICAgIC50YWJzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6ICM1NTU1NTU7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIC8vbWFyZ2luOiBhdXRvIC0uNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIG9ubHkpIHtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICAgICAgJi5oYXMtc2VwYXJhdG9yIGxpIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Ugb25seSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDFyZW0pO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgLm1lZGlhLW9iamVjdCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgbmJvb2sge1xuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQsXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRzZXBhcmF0b3ItY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Ugb25seSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYudmVydGljYWwtc2VwYXJhdG9yID4gZGl2Om5vdCg6bGFzdC1jaGlsZCk6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIG9ubHkpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRhYnMtdGl0bGUsXG4gICAgLnRhYnMtdmlkZW8taXRlbSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAmOmZvY3VzLFxuICAgICAgICAgICAgJlthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSxcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5pcy1hY3RpdmUsXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5tZWRpYS1vYmplY3Qge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IGluaXRpYWw7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgLnZpZGVvLWl0ZW0tZGF0YSxcbiAgICAgICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleDogMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAudmlkZW8taXRlbS1zaGFyZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LXNocmluazogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50YWJzLXZpZGVvLWl0ZW0ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5tZWRpYS1vYmplY3QtaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiA2NS41NHB4O1xuICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDFyZW07XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNDRweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubWVkaWEtb2JqZWN0IHtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMy8yO1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudmlkZW8taXRlbS1zaGFyZSB7XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIGkge1xuICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDAuNXJlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnZpZGVvLXRhYnMtY29udGVudCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgICAudGFicy1wYW5lbCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLmFydGljbGUtaXRlbS12aWRlbyAuanctZmxhZy1mbG9hdGluZyB7XG4gICAgICAgIC5qdy13cmFwcGVyLmp3LXJlc2V0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIHRvcDogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICBib3R0b206IDNyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5hcnRpY2xlLXZpZGVvIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4udmlkZW8tY2Fyb3VzZWwge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IC0zLjVyZW07XG4gICAgICAgIC5hcnRpY2xlLWl0ZW0ge1xuICAgICAgICAgICAgcGFkZGluZzogMCAwLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgLnNsaWNrLWxpc3Qge1xuICAgICAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDBweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnZpZGVvLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbn1cblxuLy92aWRlbyB0YWJzXG4uc2hvdy1vdmVyYm94IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLm92ZXJib3gge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuLm92ZXJib3gge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UgMHM7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIC8vYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjMDYyNjI2LCAuNjUpO1xuICAgIGJhY2tncm91bmQ6IHJnYig2LCAzOCwgMzgpO1xuICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAxODBkZWcsXG4gICAgICAgIHJnYmEoNiwgMzgsIDM4LCAwKSAwJSxcbiAgICAgICAgcmdiYSg2LCAzOCwgMzgsIDAuMzI1MzY3NjQ3MDU4ODIzNSkgNDIlLFxuICAgICAgICByZ2JhKDYsIDM4LCAzOCwgMC40OTkwMzcxMTQ4NDU5Mzg0KSA3MCUsXG4gICAgICAgIHJnYmEoMCwgMCwgMCwgMSkgMTAwJVxuICAgICk7XG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoXG4gICAgICAgIDE4MGRlZyxcbiAgICAgICAgcmdiYSg2LCAzOCwgMzgsIDApIDAlLFxuICAgICAgICByZ2JhKDYsIDM4LCAzOCwgMC4zMjUzNjc2NDcwNTg4MjM1KSA0MiUsXG4gICAgICAgIHJnYmEoNiwgMzgsIDM4LCAwLjQ5OTAzNzExNDg0NTkzODQpIDcwJSxcbiAgICAgICAgcmdiYSgwLCAwLCAwLCAxKSAxMDAlXG4gICAgKTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAgIDE4MGRlZyxcbiAgICAgICAgcmdiYSg2LCAzOCwgMzgsIDApIDAlLFxuICAgICAgICByZ2JhKDYsIDM4LCAzOCwgMC4zMjUzNjc2NDcwNTg4MjM1KSA0MiUsXG4gICAgICAgIHJnYmEoNiwgMzgsIDM4LCAwLjQ5OTAzNzExNDg0NTkzODQpIDcwJSxcbiAgICAgICAgcmdiYSgwLCAwLCAwLCAxKSAxMDAlXG4gICAgKTtcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPVwiIzA2MjYyNlwiLGVuZENvbG9yc3RyPVwiIzAwMDAwMFwiLEdyYWRpZW50VHlwZT0xKTtcblxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgJi5sb2NrZWQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCMwNjI2MjYsIDAuOCk7XG4gICAgfVxuICAgIHNwYW4uYnV0dG9uLmhvbGxvdyB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiA0cHg7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAud2F0Y2gtbm93IHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ2cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnZpZGVvLWRldGFpbHMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgICAgfVxuICAgICAgICAudmlkZW8tc3RhbXAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5vdmVyYm94LWlubmVyIHtcbiAgICBwYWRkaW5nOiA1cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgaS5pY29uLWFycm93LWxlZnQyIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJHdoaXRlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICAgIH1cbn1cblxuI2hhcy1uby12aWRlbyB7XG59XG5cbiNoYXMtdmlkZW8ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIC0tLS0tLS0gVklERU8gQkxPQ0sgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLSBWSURFTyBQQUdFUyAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG5cbi52aWRlby1oZXJvIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAtMXJlbTtcbiAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogLTFyZW07XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYigyNSwgMjUsIDI4KTtcbiAgICAgICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1LCAyNSwgMjgsIDApIDAlLCByZ2JhKDYsIDYsIDYsIDAuODcxNTg2MTM0NDUzNzgxNSkgNTclKTtcbiAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1LCAyNSwgMjgsIDApIDAlLCByZ2JhKDYsIDYsIDYsIDAuODcxNTg2MTM0NDUzNzgxNSkgNTclKTtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNSwgMjUsIDI4LCAwKSAwJSwgcmdiYSg2LCA2LCA2LCAwLjg3MTU4NjEzNDQ1Mzc4MTUpIDU3JSk7XG4gICAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9XCIjMTkxOTFjXCIsZW5kQ29sb3JzdHI9XCIjMDYwNjA2XCIsR3JhZGllbnRUeXBlPTEpO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgfVxuXG4gICAgLnZpZGVvLWNvbnRlbnQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgIC52aWRlby10aXRsZSB7XG4gICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1zZWxmOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMCU7XG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmMyYzJjO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgIC8vZm9udC1mYW1pbHk6ICRmb250LWFsdDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDU1KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBoNiB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuICAgIC52aWRlby1jb250ZW50LWFmdGVyIHtcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMnJlbTtcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuYnV0dG9uIHtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDJyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgaSB7XG4gICAgICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMC41cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIC52aWRlby1pbWcge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiB0b3A7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi52aWRlby1zY3JlZW4ge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gICAgfVxuICAgIC52aWRlby1kZXRhaWxzIHtcbiAgICAgICAgY29sb3I6ICM5Mjk4OTg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG4gICAgLmFydGljbGUtaXRlbS1tZXRhIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG59XG5cbiNoYXMtdmlkZW8ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi52aWRlby1pdGVtLWhlcm8ge1xuICAgIC52aWRlby1pdGVtIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogLTFyZW07XG4gICAgICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAtMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yZXNwb25zaXZlLWVtYmVkIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAudmlkZW8taXRlbS1jb250ZW50IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgICAgIGNvbG9yOiAjOWQ5ZDlkO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4udmlkZW8taXRlbS10aXRsZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICBhIHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnZpZGVvLWFzaWRlLW1ldGEge1xuICAgIHdpZHRoOiAzMDBweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4udmlkZW8tbWFpbiB7XG4gICAgLnZpZGVvLXdyYXAge1xuICAgICAgICAudmlkZW8tZ3JpZCB7XG4gICAgICAgICAgICAudmlkZW8tbGlzdCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgICAgICAgICAgICAgcm93LWdhcDogNDBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIC0tLS0tLS0gVklERU8gUEFHRVMgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLSBBTklNQVRFICAgLS0tLS0tLSBTVEFSVCAtLS0tLS0tLSAqL1xuLy9zbGlkZU91dERvd25cbkAtd2Via2l0LWtleWZyYW1lcyBzb2Qge1xuICAgIGZyb20ge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICAgIH1cblxuICAgIHRvIHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIH1cbn1cbi8vc2xpZGVPdXREb3duXG5Aa2V5ZnJhbWVzIHNvZCB7XG4gICAgZnJvbSB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gICAgfVxuXG4gICAgdG8ge1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgfVxufVxuLy9zbGlkZU91dFVwXG5ALXdlYmtpdC1rZXlmcmFtZXMgc291IHtcbiAgICBmcm9tIHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIH1cblxuICAgIHRvIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB9XG59XG4vL3NsaWRlT3V0VXBcbkBrZXlmcmFtZXMgc291IHtcbiAgICBmcm9tIHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIH1cblxuICAgIHRvIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB9XG59XG5cbi8vc2xpZGVPdXREb3duXG4uc29kIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzb2Q7XG4gICAgYW5pbWF0aW9uLW5hbWU6IHNvZDtcbn1cbi8vc2xpZGVPdXRVcFxuLnNvdSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc291O1xuICAgIGFuaW1hdGlvbi1uYW1lOiBzb3U7XG59XG5cbi5hbmltYXRlZCB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG59XG5cbi8qIC0tLS0tLS0gQU5JTUFURSAgIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0gUFJJTlQtRURJVElPTiBQQUdFIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cbi5wcmludC1lZGl0aW9uLWNvdmVyIHtcbiAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgJl9fYnRuIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDEwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIC0tLS0tLS0gUFJJTlQtRURJVElPTiBQQUdFIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0gSU4tRk9DVVMgU0VDVElPTiAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG4uaW4tZm9jdXMge1xuICAgIC8vcGFkZGluZy0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDAuNHJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA4OTZweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGZlY2U3O1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogLTEwcHg7XG4gICAgICAgICAgICByaWdodDogLTEwcHg7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG4uYmxvY2stb3ZlcmxheS1iZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIC8qIE1vYmlsZSBMYW5kc2NhcGUgYW5kIFBvcnRyYXRlICovXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aDogMzIwcHgpIGFuZCAobWF4LWRldmljZS13aWR0aDogODk2cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICRibGFjayAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAyNSU7XG4gICAgICAgIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgLW1vei1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAtby1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBwYWRkaW5nOiAxLjVyZW0gMS41cmVtIDAuNXJlbTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgICAvKiBNb2JpbGUgTGFuZHNjYXBlIGFuZCBQb3J0cmF0ZSAqL1xuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiA4OTZweCkgYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIC8vYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjIxKSAwJSwgcmdiYSgwLCAwLCAwLCAwLjcyKSAxMDAlKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC4zMSkgMCwgcmdiYSgwLCAwLCAwLCAwLjk1KSAxMDAlKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuYXJ0aWNsZS1pdGVtLXRpdGxlIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuc2VjdGlvbi10aXRsZSB7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogN3JlbTtcbiAgICAgICAgfVxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5tb3JlIHtcbiAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMS41cmVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMXJlbTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgLyogTW9iaWxlIExhbmRzY2FwZSBhbmQgUG9ydHJhdGUgKi9cbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLWRldmljZS13aWR0aDogMzIwcHgpIGFuZCAobWF4LWRldmljZS13aWR0aDogODk2cHgpIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuLyogLS0tLS0tLSBJTi1GT0NVUyBTRUNUSU9OIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0gRURJVE9SUyAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG4uZWRpdG9yLWltZyB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHdpZHRoOiAyMTJweDtcbiAgICBoZWlnaHQ6IDIxMnB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIC13ZWJraXQtbWFzay1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQod2hpdGUsIGJsYWNrKTtcbiAgICAubWFpbi1lZGl0b3JzICYge1xuICAgICAgICB3aWR0aDogMzAycHg7XG4gICAgICAgIGhlaWdodDogMzAycHg7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYXJ0aWNsZS1pdGVtLWltZyBpbWcge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogaW5pdGlhbDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmVkaXRvcmlhbC1saXN0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5lZGl0b3ItaXRlbS1uYW1lIHtcbiAgICBoMyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgICBoNSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE5KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuICAgIH1cbn1cbi5lZGl0b3ItaXRlbS1jYXQge1xuICAgIGg2IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgIH1cbn1cbi5lZGl0b3ItaXRlbS1kZXNjIHtcbiAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgfVxufVxuXG4vKiAtLS0tLS0tIEVESVRPUlMgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLSBUQUdTIE1FTlUgKGV4LiBwb2RjYXN0LW11bHRpcGxlIHBhZ2UpIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cbi8vIHN0eWxlIDogYm90dG9tIGxpbmUgd2l0aCBib3JkZXIgYm90dG9tIG9uIGhvdmVyXG4ucGFnZS10YWdzIHtcbiAgICBtYXJnaW46IDFyZW0gMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbjogMnJlbSAwIDNyZW07XG4gICAgfVxuICAgID4gdWwge1xuICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHNlcGFyYXRvci1jb2xvcjtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAyLjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjhyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICAgICAgICAgICAgJi5hY3RpdmUsXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAtMXB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMXJlbTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYWN0aXZlLFxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBpbiBwb2RjYXN0LW11bHRpcGxlXG4gICAgJi5zdHlsZS0yIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjhmNjtcbiAgICAgICAgei1pbmRleDogOTtcbiAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSxcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOm9ubHktY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gc3R5bGU6IHJvdW5kZWQgYm9yZGVyIGJ1dHRvbnMgbWVudSAoZXguIG15LXRhZ3MpXG4ubXktdGFncy1tZW51IHtcbiAgICB6LWluZGV4OiA5O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmY4ZjY7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICYjc2Nyb2xsLWNhdCB7XG4gICAgICAgICAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogLTFyZW07XG4gICAgICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAtMXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIHVsIHtcbiAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuLyogLS0tLS0tLSBUQUdTIE1FTlUgKGV4LiBwb2RjYXN0LW11bHRpcGxlIHBhZ2UpIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG5cbi5yZWdpc3Rlci13aWRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmVlbjtcbiAgICBwYWRkaW5nOiAyLjVyZW0gMXJlbSAycmVtO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIEBleHRlbmQgLmZ1bGwtYmc7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiAycmVtO1xuICAgICAgICBoZWlnaHQ6IDI3MHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICA+IC5ncmlkLWNvbnRhaW5lciB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ncmlkLXgge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuICAgIGgyIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ltZyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gMXJlbTtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE3OHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IDVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19idG4ge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBjb2xvcjogIzA0MmIyNztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiA1cHggMzBweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAxMHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZSAwcztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgaSB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZSAwcztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IGluaXRpYWw7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjk7XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbGVmdCB7XG4gICAgICAgIG1hcmdpbjogMXJlbSBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2Nsb3NlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC0xcmVtO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxufVxuLyogLS0tLS0tLSBOZXdzbGV0dGVyIGJsb2NrIG9uIGhvbWVwYWdlIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cbi5uZXdzbGV0dGVyLWhvbGRlciB7XG4gICAgcGFkZGluZzogMi41cmVtIDEuNXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICB9XG4gICAgQGV4dGVuZCAud2hpdGUtYmc7XG4gICAgQGV4dGVuZCAuZnVsbC1iZy1zbTtcbiAgICBpbWcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNjhweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JlZW47XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMTBweDtcbiAgICAgICAgICAgIFtkaXI9XCJsdHJcIl0gJiB7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi8qIC0tLS0tLS0gTmV3c2xldHRlciBibG9jayBvbiBob21lcGFnZSAtLS0tLS0tIEVORCAtLS0tLS0tLSAqL1xuXG4ubWFwLWlmcmFtZSB7XG4gICAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG59XG4uZW1wdHktY29udGVudCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICYtdGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICAgICAgY29sb3I6ICRncmF5O1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDM4cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi1idXR0b24ge1xuICAgICAgICBwYWRkaW5nOiAwLjg1ZW0gM2VtO1xuICAgIH1cbn1cblxuLy8gPT09PT09PT09PT09PT0gPD4gPT09PT09PT09PT09PT09IEFkZCB5b3VyIGN1c3RvbSBzdHlsZXMgYmVmb3JlIHRoaXMgbGluZS4gPT09PT09PT09PT09PT0gPD4gPT09PT09PT09PT09PT09XG4ucmF0aW8tY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBvdmVyZmxvdzogaGlkZGVuOyAvLyBhZGRlZCBiZWMgb2Ygem9vbWluXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAvKiAxNjo5ID0gNTYuMjUlID0gY2FsYyg5IC8gMTYgKiAxMDAlKSAqL1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuXG4gICAgICAgIC5ncmlkLWl0ZW1zICYge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5saWZlc3R5bGUtZ3JpZCAmIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA4NSU7XG4gICAgICAgIH1cblxuICAgICAgICAudmlkZW8tc2NyZWVuICYge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDM4JTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5lbnRyeS1tZWRpYS1oZXJvIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogOTQuMjUlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5hYm91dC12aWRlbyB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDMxJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA5My4zNCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICA+IGEsXG4gICAgPiB2aWRlbyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjtcbiAgICB9XG59XG5cbi8vIHNsaWNrIGNhcm91c2VsIGxvYWRpbmcgLS0tLSBTVEFSVCAtLS0tLS1cbi5zbGljay1sb2FkZXIge1xuICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xuICAgIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKC4uL2ltZy9sb2FkZXIuc3ZnKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDMwcHg7XG4gICAgPiBkaXYge1xuICAgICAgICAvL29wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgJi5zbGljay1pbml0aWFsaXplZCxcbiAgICAmLm93bC1sb2FkZWQge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1heC1oZWlnaHQ6IGluaXRpYWw7XG4gICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuXG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIC8vb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zbGljay1saXN0IHtcbiAgICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IDI1MG1zIGVhc2UtaW4tb3V0O1xuICAgIH1cbn1cbi5zbGljay1sb2FkZXItc20ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBtYXgtaGVpZ2h0OiA0MDBweDtcbiAgICAgICAgbWluLWhlaWdodDogMjAwcHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCguLi9pbWcvbG9hZGVyLnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzBweDtcbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuc2xpY2staW5pdGlhbGl6ZWQsXG4gICAgICAgICYub3dsLWxvYWRlZCB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiBpbml0aWFsO1xuICAgICAgICAgICAgbWluLWhlaWdodDogYXV0bztcbiAgICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcblxuICAgICAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpY2stbGlzdCB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMjUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vbG9hZGVyIGZvciBhdWRpby1wb2RjYXN0IGJsb2NrIHdpdGggc2xpZGVyIGFuZCB3cml0ZXJzIGxpc3Rcbi5zbGlkZXItdjEuYXVkaW8tcG9kY2FzdCxcbi5zbGlkZXItdjEud3JpdGVycy1saXN0IHtcbiAgICBoZWlnaHQ6IDQ1MHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmLnNsaWNrLWluaXRpYWxpemVkIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtYXgtaGVpZ2h0OiBpbml0aWFsO1xuICAgICAgICBtaW4taGVpZ2h0OiBhdXRvO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB9XG5cbiAgICAuc2xpY2stbGlzdCB7XG4gICAgICAgIHRyYW5zaXRpb246IGhlaWdodCAyNTBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIC0xNXB4O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5zbGljay1zbGlkZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAxNXB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBzbGljayBjYXJvdXNlbCBsb2FkaW5nIC0tLS0gRU5EIC0tLS0tLVxuXG4vLyBPV0wgQ0FST1VTRUwgc3R5bGVzIC0tLS0gU1RBUlQgLS0tLS0tXG4ub3dsLWRvdHMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5vd2wtZG90IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIDVweDtcbiAgICBzcGFuIHtcbiAgICAgICAgd2lkdGg6IDQ3cHg7XG4gICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgICYuYWN0aXZlIHtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG4vLyBPV0wgQ0FST1VTRUwgc3R5bGVzIC0tLS0gRU5EIC0tLS0tLVxuXG4vLyBQQUdJTkFUSU9OIFNUWUxFUyAtLS0tIFNUQVJUIC0tLS0tLVxuXG4ucGFnaW5hdGlvbi13cmFwIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIC5wYWdpbmF0aW9uIHtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDE1cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAmLmN1cnJlbnQsXG4gICAgICAgICAgICAmOm5vdCgucGFnZXJfX2l0ZW0tLWZpcnN0KTpub3QoLnBhZ2VyX19pdGVtLS1wcmV2aW91cyk6bm90KC5wYWdlcl9faXRlbS0tbmV4dCk6bm90KC5wYWdlcl9faXRlbS0tbGFzdCkgYSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1zZWNvbmRhcnk7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS44O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmN1cnJlbnQge1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYucGFnZXJfX2l0ZW0tLWZpcnN0LFxuICAgICAgICAgICAgJi5wYWdlcl9faXRlbS0tcHJldmlvdXMsXG4gICAgICAgICAgICAmLnBhZ2VyX19pdGVtLS1uZXh0LFxuICAgICAgICAgICAgJi5wYWdlcl9faXRlbS0tbGFzdCB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnBhZ2VyX19pdGVtLS1maXJzdCxcbiAgICAgICAgICAgICYucGFnZXJfX2l0ZW0tLWxhc3Qge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gUEFHSU5BVElPTiBTVFlMRVMgLS0tLSBFTkQgLS0tLS0tXG4vKiAtLS0tLS0tLSBGaW5hbCBzYXkgLS0tLS0tLS0tLS0tLS0tLSBTdGFydCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4vL3NwYWNlZCBpbi1iZXR3ZWVuIGl0ZW1zIHZlcnRpY2FsbHlcbi5oLXNwYWNlZCB7XG4gICAgPiBkaXY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuM3JlbTtcbiAgICB9XG59XG5cbi8vcHJpbWFyeS12ZXJ0aWNhbC1ib3JkZXItYm90dG9tIGluIGJldHdlZW4gaXRlbXNcbi5jb2xvcmVkLXNlcGFyYXRvciB7XG4gICAgPiBkaXY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubW9yZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbG9yOiAkZ3JheTtcbiAgICBhIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXNlY29uZGFyeTtcbiAgICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxcmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuICAgIGkge1xuICAgICAgICBmb250LXNpemU6IDhweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAvL3RvcDogN3B4O1xuICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG59XG5cbi5zZWUtbW9yZS1saW5rIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDVweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gICAgJi5wcmltYXJ5IHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zZWN0aW9uLWJnLTEge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYWYzZjI7XG59XG5cbi5ibG9jay1jdXN0b20tYmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBjb2xvcjogJGJsYWNrO1xufVxuXG4uYmxvY2stY3VzdG9tLWJnLTIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNGYwZWY7XG4gICAgY29sb3I6ICRibGFjaztcbn1cblxuLmJsb2NrLWN1c3RvbS1iZy0zIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlZGVjO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICYuaGFzLXBhZGRpbmcge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbSAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmxvY2stY3VzdG9tLWJnLTQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZmUzZTM7XG4gICAgY29sb3I6ICRibGFjaztcbn1cblxubGFiZWwge1xuICAgIHNwYW4ucmVxdWlyZWQge1xuICAgICAgICBjb2xvcjogcmVkO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG59XG5cbi5ncmlkLWNvbGxhcHNlIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLWNvbGxhcHNlO1xuICAgIH1cbn1cblxuLnNtYWxsLWdyaWQtY29sbGFwc2Uge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1jb2xsYXBzZTtcbiAgICAgICAgLy8gLmFydGljbGUtaXRlbS1pbmZvLCAuYXJ0aWNsZS1pdGVtLW92ZXJib3gtaW5uZXIge1xuICAgICAgICAvLyAgIHBhZGRpbmc6IDAgMS4yNXJlbTtcbiAgICAgICAgLy8gfVxuICAgIH1cbiAgICAvLyBAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoMzkwKX0gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gZG93bil9IHtcbiAgICAvLyAgIC5ncmlkLWl0ZW1zIHtcbiAgICAvLyAgICAgLmFydGljbGUtaXRlbS1pbmZvLCAuYXJ0aWNsZS1pdGVtLW92ZXJib3gtaW5uZXIge1xuICAgIC8vICAgICAgIHBhZGRpbmc6IDA7XG4gICAgLy8gICAgIH1cbiAgICAvLyAgIH1cbiAgICAvLyB9XG5cbiAgICAucGFkZGluZy1ob3Jpem9udGFsLWZvci1zbWFsbCB7XG4gICAgICAgIC5ibG9jay10aXRsZS5zdHlsZS12MyBzcGFuLFxuICAgICAgICAuc2VjdGlvbi10aXRsZS5zdHlsZS12MyBzcGFuLFxuICAgICAgICAucGFnZS10aXRsZS5zdHlsZS12MyBzcGFuIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuYXJ0aWNsZS1pdGVtLW92ZXJib3gtaW5uZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5ld3NsZXR0ZXItYXJlYSB7XG4gICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgZm9vdGVyICYge1xuICAgICAgICBpbnB1dFt0eXBlPVwiZW1haWxcIl0ge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlci10b3AtI3skb3Bwb3NpdGUtZGlyZWN0aW9ufS1yYWRpdXM6IDIwcHg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn0tcmFkaXVzOiAyMHB4O1xuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICBib3JkZXItdG9wLSN7JGRlZmF1bHQtZGlyZWN0aW9ufS1yYWRpdXM6IDIwcHg7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLSN7JGRlZmF1bHQtZGlyZWN0aW9ufS1yYWRpdXM6IDIwcHg7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgcGFkZGluZy10b3A6IDExcHg7XG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICAgICAgJjpub3QoOnBsYWNlaG9sZGVyLXNob3duKSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259O1xuICAgICAgICB9XG4gICAgICAgICY6cGxhY2Vob2xkZXItc2hvd24ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogI3skZGVmYXVsdC1kaXJlY3Rpb259O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICAgICAgW2Rpcj1cImx0clwiXSAmIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubmV3c2xldHRlci1pbnRybyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgfVxuICAgICAgICBmb290ZXIgJiB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXByaW1hcnk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDYge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnQtc2Vjb25kYXJ5O1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICB9XG5cbiAgICBmb290ZXIgJiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubWNfZW1iZWRfc2lnbnVwIGRpdiNtY2UtcmVzcG9uc2VzIHtcbiAgICBmbG9hdDogI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTtcbiAgICB0b3A6IC0xLjRlbTtcbiAgICBwYWRkaW5nOiAwZW0gMC41ZW0gMGVtIDAuNWVtO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDkwJTtcbiAgICBtYXJnaW46IDAgNSU7XG4gICAgY2xlYXI6IGJvdGg7XG59XG5cbi5tY19lbWJlZF9zaWdudXAgZGl2LnJlc3BvbnNlIHtcbiAgICBtYXJnaW46IDFlbSAwO1xuICAgIHBhZGRpbmc6IDFlbSAwLjVlbSAwLjVlbSAwO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZsb2F0OiAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259O1xuICAgIHRvcDogLTEuNWVtO1xuICAgIHotaW5kZXg6IDE7XG4gICAgd2lkdGg6IDgwJTtcbn1cblxuLm1jX2VtYmVkX3NpZ251cCAjbWNlLWVycm9yLXJlc3BvbnNlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4ubWNfZW1iZWRfc2lnbnVwICNtY2Utc3VjY2Vzcy1yZXNwb25zZSB7XG4gICAgY29sb3I6ICM1MjkyMTQ7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1jX2VtYmVkX3NpZ251cCBsYWJlbC5lcnJvciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEuMDVlbTtcbiAgICB0ZXh0LWFsaWduOiAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259O1xuICAgIHBhZGRpbmc6IDAuNWVtIDA7XG59XG5cbi8qIC0tLS0tLS0gU29jaWFscyBCdG5zIFN0eWxlcyAtLS0tLS0tIFNUQVJUIC0tLS0tLS0tICovXG5cbi5zb2NpYWxzLWJ0bnMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgZ2FwOiAxNnB4O1xuICAgIH1cblxuICAgIC5jYW52YXMtcGFuZWwgJiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwLjVyZW07XG4gICAgICAgIC5tYWluLWhlYWRlci1iZWZvcmUgJiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDY4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLm1haW4tZm9vdGVyLWJlZm9yZSAmIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNvY2lhbC1idG4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogJHByaW1hcnktZGFyaztcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgLy8gbWFyZ2luOiAwIDVweDtcbiAgICBsaW5lLWhlaWdodDogMDtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi0tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICB9XG5cbiAgICBpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyBsaW5lYXI7XG4gICAgfVxuXG4gICAgZm9vdGVyICYge1xuICAgICAgICAvL21hcmdpbjogMCAwLjg1cmVtIDAgMDtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gICAgICAgIGNvbG9yOiAjN2M5YTk0O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5uYXZwYW5lbCAmIHtcbiAgICAgICAgY29sb3I6ICM3YzlhOTQ7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAubWFpbi1oZWFkZXItYmVmb3JlICYge1xuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ibG9jay13cmFwcGVyICYge1xuICAgICAgICBtYXJnaW46IDAgMC44NXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgIH1cblxuICAgIC5ldmVudHMtbGlzdCAmIHtcbiAgICAgICAgbWFyZ2luOiAwIDAuODVyZW0gMCAwO1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIH1cbn1cblxuLnNvY2lhbHMtYmxvY2sge1xuICAgIGEge1xuICAgICAgICBtYXJnaW46IDAgMC4yNXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtO1xuXG4gICAgICAgIGkge1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5vcGluaW9uLWF1dGhvciAmIHtcbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogIzk2OTY5NjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICAgICAgcGFkZGluZzogN3B4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvLyBpe1xuICAgICAgICAvLyAgICAgYmFja2dyb3VuZC1jb2xvcjogIzkyOTg5ODtcbiAgICAgICAgLy8gICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIC8vICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIC8vICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIC8vICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIC8vIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiA1cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi52aWRlby1wb3B1cC1tb2RhbCB7XG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNzA3MDcwO1xuICAgIHBhZGRpbmc6IDUwcHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogMDtcbiAgICB0b3A6IDUwJSAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiA2MDBweDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBwYWRkaW5nOiA0MHB4IDIwcHg7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA2MHB4KSAhaW1wb3J0YW50O1xuICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA1MCUgIWltcG9ydGFudDtcbiAgICAgICAgdG9wOiAyMCUgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpICFpbXBvcnRhbnQ7XG4gICAgICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogYXV0bztcbiAgICB9XG5cbiAgICAuY2xvc2UtYnV0dG9uLFxuICAgIC5tb2RhbC1jbG9zZSB7XG4gICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDUwcHg7XG4gICAgICAgIHRvcDogMzVweDtcbiAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiBhdXRvO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMjBweDtcbiAgICAgICAgICAgIHRvcDogNDBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBtYXJnaW46IDAgMCAyN3B4O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RjZTBlMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDMzcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaDUge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zaGFyZS1pY29ucyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI3cHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBnYXA6IDMzcHg7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogNTBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNTBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlNGVkZWM7XG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb3B5LWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgLmNvcHktbGluay1pbnB1dCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMjhweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5jb3BpZWQge1xuICAgICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICAgJjphY3RpdmUsXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlLFxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDAwMDAxO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogLTVweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogLTVweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDEwMDAwMDA7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCA4cHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQ6IG5vcm1hbCBub3JtYWwgMTFweC8xLjUgSGVsdmV0aWNhLCBhcmlhbCwgbmltYnVzc2Fuc2wsIGxpYmVyYXRpb25zYW5zLCBmcmVlc2FucywgY2xlYW4sXG4gICAgICAgICAgICAgICAgICAgICAgICBzYW5zLXNlcmlmLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCI7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IHByZTtcbiAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICAgICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBzdWJwaXhlbC1hbnRpYWxpYXNlZDtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJDb3BpZWQhXCI7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTAlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyOHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkY2RmZGY7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDE3cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0N3B4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JheTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259O1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgLy9tYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgI3skZGVmYXVsdC1kaXJlY3Rpb259OiAxcHg7XG4gICAgICAgICAgICAgICAgdG9wOiAxcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogLS0tLS0tLSBTb2NpYWxzIEJ0bnMgU3R5bGVzIC0tLS0tLS0gRU5EIC0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0gTGVhZGVyYm9hcmQgQWQgU3R5bGVzIC0tLS0tLS0gU1RBUlQgLS0tLS0tLS0gKi9cblxuLmxlYWRlcmJvYXJkLWJsb2NrIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4OyBcblxuICAgIC5zdGlja3kgJiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICB9IFxufVxuLyogLS0tLS0tLSBMZWFkZXJib2FyZCBBZCBTdHlsZXMgLS0tLS0tLSBFTkQgLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLS0gRmluYWwgc2F5IC0tLS0tLS0tLS0tLS0tLS0gRW5kIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2V0IHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJGd1dHRlciBbYXV0b11cbi8vLyAgIFNwYWNpbmcgYmV0d2VlbiBjb2x1bW5zLCBhY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBzaW5nbGUgdmFsdWUgd2lsbCBtYWtlIHRoZSBndXR0ZXIgdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIGJyZWFrcG9pbnQgbmFtZSB3aWxsIG1ha2UgdGhlIGd1dHRlciB0aGUgY29ycmVzcG9uZGluZyBzaXplIGluIHRoZSAkZ3V0dGVycyBtYXAuXG4vLy8gICAtIFwiYXV0b1wiIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHJlc3BvbnNpdmUsIHVzaW5nIHRoZSAkZ3V0dGVycyBtYXAgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtY29sdW1uLWd1dHRlcihcbiAgJGd1dHRlcjogYXV0byxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkZ3V0dGVyLCAkZ3V0dGVycykge1xuICAgICRwYWRkaW5nOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKSAqIDAuNTtcblxuICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gIH1cbn1cblxuLy8vIENvbGxhcHNlIHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uIGJ5IHJlbW92aW5nIHRoZSBwYWRkaW5nLiAqKk5vdGU6Kiogb25seSB1c2UgdGhpcyBtaXhpbiB3aXRoaW4gYSBicmVha3BvaW50LiBUbyBjb2xsYXBzZSBhIGNvbHVtbidzIGd1dHRlcnMgb24gYWxsIHNjcmVlbiBzaXplcywgdXNlIHRoZSBgJGd1dHRlcmAgcGFyYW1ldGVyIG9mIHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4gaW5zdGVhZC5cbkBtaXhpbiBncmlkLWNvbHVtbi1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigwKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWd1dHRlcigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZ3V0dGVyXG5AbWl4aW4gZ3JpZC1jb2wtZ3V0dGVyKFxuICAkZ3V0dGVyOiBhdXRvLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyLCAkZ3V0dGVycyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1jb2xsYXBzZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tY29sbGFwc2VcbkBtaXhpbiBncmlkLWNvbC1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWNvbGxhcHNlO1xufVxuXG4vLy8gU2V0cyBib3R0b20gbWFyZ2luIG9uIGdyaWQgY29sdW1ucyB0byBtYXRjaCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJG1hcmdpbiBbYXV0b11cbi8vLyAgIFRoZSBib3R0b20gbWFyZ2luIG9uIGdyaWQgY29sdW1ucywgYWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgc2luZ2xlIHZhbHVlIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBicmVha3BvaW50IG5hbWUgd2lsbCBtYWtlIHRoZSBtYXJnaW4gdGhlIGNvcnJlc3BvbmRpbmcgc2l6ZSBpbiB0aGUgJG1hcmdpbnMgbWFwLlxuLy8vICAgLSBcImF1dG9cIiB3aWxsIG1ha2UgdGhlIG1hcmdpbiByZXNwb25zaXZlLCB1c2luZyB0aGUgJG1hcmdpbnMgbWFwIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXJnaW5zIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtY29sdW1uLW1hcmdpbiAoXG4gICRtYXJnaW46IGF1dG8sXG4gICRtYXJnaW5zOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJG1hcmdpbiwgJG1hcmdpbnMpIHtcbiAgICAkbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSk7XG4gICAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1ib3R0b207XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCJAbWVkaWEgb25seSBzY3JlZW4ge1xuICAgIC5uby1zcGFjZXIge1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm5vLXRvcC1zcGFjZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5uby1ib3R0b20tc3BhY2VyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAubm8tbGVmdC1zcGFjZXIge1xuICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLm5vLXJpZ2h0LXNwYWNlciB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC50b3Atc3BhY2VyLS14bCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLnRvcC1zcGFjZXItLWwge1xuICAgICAgICBtYXJnaW4tdG9wOiAyLjVyZW0gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLnRvcC1zcGFjZXItLW0ge1xuICAgICAgICBtYXJnaW4tdG9wOiAycmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC50b3Atc3BhY2VyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC50b3Atc3BhY2VyLS1zIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAudG9wLXNwYWNlci0teHMge1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmJvdHRvbS1zcGFjZXItLXhsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuYm90dG9tLXNwYWNlci0tbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuYm90dG9tLXNwYWNlci0tbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW0gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmJvdHRvbS1zcGFjZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmJvdHRvbS1zcGFjZXItLXMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5ib3R0b20tc3BhY2VyLS14cyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLnRleHQtdHJhbnNmb3JtLXVwcGVyY2FzZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnRleHQtdHJhbnNmb3JtLWNhcGl0YWxpemUge1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xufVxuXG5AaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRibG9jay1ncmlkLW1heCB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICAgICAgLmNvbHVtbjpsYXN0LWNoaWxkLFxuICAgICAgICAgICAgLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgW2Rpcj1cInJ0bFwiXSB7XG4gICAgICAgIC5sYXJnZS11bmNlbnRlcmVkLFxuICAgICAgICAubGFyZ2UtcHVzaC0wLFxuICAgICAgICAubGFyZ2UtcHVsbC0wIHtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnZlcnRpY2FsLWNlbnRlciB7XG4gICAgQGluY2x1ZGUgdmVydGljYWwtY2VudGVyKCk7XG59XG5cbi5jZW50ZXItZWxlbWVudCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLnVzZS1sb2FkZXIge1xuICAgIGhlaWdodDogMzYwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2xvYWRlci5naWYpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyIHRyYW5zcGFyZW50O1xufVxuXG4ucm91bmQge1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMDBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIC13ZWJraXQtbWFzay1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQod2hpdGUsIGJsYWNrKTtcbn1cblxuLmJ1dHRvbi1yYWRpdXMge1xuICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG59XG5cbi5ndXR0ZXJzLTF4IHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKDIwLCBcIm1hcmdpblwiLCAkbmVnYXRpdmU6IHRydWUpO1xuXG4gICAgPiAuY2VsbCB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoMjAsIFwicGFkZGluZ1wiLCAkbmVnYXRpdmU6IGZhbHNlKTtcbiAgICB9XG59XG5cbi5ndXR0ZXJzLS0xeCB7XG4gICAgQGluY2x1ZGUgeHktZ3V0dGVycyg1LCBcIm1hcmdpblwiLCAkbmVnYXRpdmU6IHRydWUpO1xuXG4gICAgPiAuY2VsbCB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoNSwgXCJwYWRkaW5nXCIsICRuZWdhdGl2ZTogZmFsc2UpO1xuICAgIH1cbn1cblxuLmd1dHRlcnMtbWFyZ2luLTF4IHtcbiAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKDIwLCBcIm1hcmdpblwiLCAkbmVnYXRpdmU6IHRydWUpO1xuXG4gICAgLmNlbGwge1xuICAgICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKDIwLCBcIm1hcmdpblwiLCAkbmVnYXRpdmU6IGZhbHNlKTtcbiAgICB9XG59XG5cbi5ndXR0ZXItMjAge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgJi5yb3cge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKC0xMCk7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKC0xMCk7XG4gICAgICAgIH1cbiAgICAgICAgLmNvbHVtbiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoMjBweCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5ndXR0ZXItMTAge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgJi5yb3cge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKC01KTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoLTUpO1xuICAgICAgICB9XG4gICAgICAgIC5jb2x1bW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKDEwcHgpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubWFyZ2luLXRvcC1hdXRvIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5mbGV4LWNvbC1mdWxsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgaGVpZ2h0OiAxMDAlOyAvLyBmdWxsIGhlaWdodFxufVxuXG4ubm8tYm9yZGVyIHtcbiAgICBib3JkZXI6IDA7XG59XG5cbi5wYWRkaW5nLWhvcml6b250YWwtZm9yLXNtYWxsIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxLjI1cmVtO1xuICAgICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZGlyZWN0aW9ufTogMS4yNXJlbTtcbiAgICB9XG59XG5cbi53aXRoLXBhZGRpbmcge1xuICAgIHBhZGRpbmc6IDFyZW07XG59XG5cbi5oYXMtcGFkZGluZyB7XG4gICAgcGFkZGluZzogMnJlbSAxLjVyZW07XG59XG5cbi52ZXJ0aWNhbC1wYWRkIHtcbiAgICBwYWRkaW5nOiAxcmVtIDA7XG59XG5cbi5ibGFjay1iZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xufVxuXG4ud2hpdGUtYmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbn1cblxuLm1heFdpZHRoLW1lZGl1bSxcbi5tYXhXaWR0aC1zbWFsbCxcbi5tYXhXaWR0aC14c21hbGwge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBhdXRvO1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWRpcmVjdGlvbn06IGF1dG87XG59XG5cbi5tYXhXaWR0aC1tZWRpdW0ge1xuICAgIG1heC13aWR0aDogODAwcHg7XG59XG5cbi5tYXhXaWR0aC1zbWFsbCB7XG4gICAgbWF4LXdpZHRoOiA2NzBweDtcbn1cblxuLm1heFdpZHRoLXhzbWFsbCB7XG4gICAgbWF4LXdpZHRoOiAzNjBweDtcbn1cblxuLmZ1bGwtYmcge1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogNTAlO1xuICAgICN7JGRlZmF1bHQtZGlyZWN0aW9ufTogNTAlO1xuICAgIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAtNTB2dztcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAtNTB2dztcbn1cblxuLmZ1bGwtYmctc20ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogNTAlO1xuICAgICAgICAjeyRkZWZhdWx0LWRpcmVjdGlvbn06IDUwJTtcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IC01MHZ3O1xuICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1kaXJlY3Rpb259OiAtNTB2dztcbiAgICB9XG59XG5cbi5ib3JkZXItYm90dG9tLW1kLXNtIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICAmLmFydGljbGUtaXRlbSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG4uYm9yZGVyLWJvdHRvbS1zbWFsbCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICB9XG59XG5cbi5oaWRlLWxhYmVsIHtcbiAgICAubGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cbi5oaWRlLWxhYmVsLWgzIHtcbiAgICBoMyB7XG4gICAgICAgIC5sYWJlbC1saXZlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4uaGlkZS1maXJzdC10aXRsZSB7XG4gICAgLmZpcnN0LXRpdGxlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG4uaGlkZS1zZWNvbmQtdGl0bGUge1xuICAgIC5zZWNvbmQtdGl0bGUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cbi5oaWRlLWxvbmctZGVzY3JpcHRpb24ge1xuICAgIC5sb25nLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG4uaGlkZS1zaG9ydC1kZXNjcmlwdGlvbiB7XG4gICAgLnNob3J0LWRlc2NyaXB0aW9uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5oaWRlLWhpZ2hsaWdodCB7XG4gICAgLmVudHJ5LWhpZ2hsaWdodCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuLmhpZGUtbWV0YSB7XG4gICAgLmFydGljbGUtaXRlbS1tZXRhIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5oaWRlLWRhdGUge1xuICAgIC5hcnRpY2xlLWl0ZW0tbWV0YSB7XG4gICAgICAgIC5pY29uLXRpbWUsXG4gICAgICAgIHRpbWUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5oaWRlLWltZyB7XG4gICAgLmFydGljbGUtaXRlbS1pbWcsXG4gICAgLm1lZGlhLW9iamVjdC1pbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cblxuLmhpZGUtaW1nLWxnIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIC5hcnRpY2xlLWl0ZW0taW1nLFxuICAgICAgICAubWVkaWEtb2JqZWN0LWltZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuLmhpZGUtY2F0ZWdvcnkge1xuICAgIC5hcnRpY2xlLWl0ZW0tY2F0ZWdvcnkge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuLmhpZGUtY2F0ZWdvcnktbmFtZSB7XG4gICAgLmNhdGVnb3J5LW5hbWUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cbi5oaWRlLWNhdGVnb3J5LXNtIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgLmNhdGVnb3J5LW5hbWUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cbi5oaWRlLWNvbnRlbnQge1xuICAgIC5hcnRpY2xlLWl0ZW0tY29udGVudCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuLmhpZGUtYXV0aG9yIHtcbiAgICAubWV0YS1hdXRob3Ige1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuLmhpZGUtaGlnaGxpZ2h0IHtcbiAgICAuZW50cnktaGlnaGxpZ2h0IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi5ob3Zlci16b29tIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGltZyB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC41cztcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjVzO1xuICAgICAgICB0cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjVzO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cztcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMsIC13ZWJraXQtdHJhbnNmb3JtIDAuNXM7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmlucHV0LWNoZWNrYm94IHtcbiAgICAvLy13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcbiAgICAvKiBBZGQgaWYgbm90IHVzaW5nIGF1dG9wcmVmaXhlciAqL1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAvKiBSZW1vdmUgbW9zdCBhbGwgbmF0aXZlIGlucHV0IHN0eWxlcyAqL1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIC8vICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAvLyAgbWFyZ2luOiAwO1xuICAgIGJvcmRlcjogMDtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBSZXBvc2l0aW9uIGEgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJHBvc2l0aW9uIC0gSXQgY2FuIGJlOlxuLy8vICAgKiBBIG51bWJlcjogVGhlIGNvbHVtbiB3aWxsIG1vdmUgZXF1YWwgdG8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4gY291bnRcbi8vLyAgICAgc3BlY2lmaWVkLiBBIHBvc2l0aXZlIG51bWJlciB3aWxsIHB1c2ggdGhlIGNvbHVtbiB0byB0aGUgcmlnaHQsIHdoaWxlXG4vLy8gICAgIGEgbmVnYXRpdmUgbnVtYmVyIHdpbGwgcHVsbCBpdCB0byB0aGUgbGVmdC5cbi8vLyAgICogYGNlbnRlcmA6IENvbHVtbiB3aWxsIGJlIGNlbnRlcmVkXG4vLy8gICAqIGBhdXRvYDogQ29sdW1uIHdpbGwgYmUgcHVzaGVkIHRvIHRoZSBsZWZ0IChvciB0byB0aGUgcmlnaHQgZm9yIHRoZSBsYXN0IGNvbHVtbikuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKSB7XG4gIC8vIEF1dG8gcG9zaXRpb25pbmdcbiAgQGlmICRwb3NpdGlvbiA9PSBhdXRvIHtcbiAgICAmLCAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgICAgIGNsZWFyOiBub25lO1xuICAgIH1cblxuICAgIC8vIExhc3QgY29sdW1uIGFsaWdubWVudFxuICAgIEBpZiAkZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZSB7XG4gICAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogJGdsb2JhbC1yaWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQdXNoL3B1bGxcbiAgQGVsc2UgaWYgdHlwZS1vZigkcG9zaXRpb24pID09ICdudW1iZXInIHtcbiAgICAkb2Zmc2V0OiBwZXJjZW50YWdlKGRpdmlkZSgkcG9zaXRpb24sICRncmlkLWNvbHVtbi1jb3VudCkpO1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogJG9mZnNldDtcbiAgfVxuXG4gIC8vIENlbnRlciBwb3NpdGlvbmluZ1xuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gY2VudGVyIHtcbiAgICAmLCAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uLXBvc2l0aW9uKCkuIEVudGVyIGEgcG9zaXRpdmUgb3IgbmVnYXRpdmUgbnVtYmVyLCBcImNlbnRlclwiIG9yIFwiYXV0b1wiLic7XG4gIH1cbn1cblxuLy8vIFJlc2V0IGEgcG9zaXRpb24gZGVmaW5pdGlvbi5cbkBtaXhpbiBncmlkLWNvbHVtbi11bnBvc2l0aW9uIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oYXV0byk7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi8vLyBPZmZzZXRzIGEgY29sdW1uIHRvIHRoZSByaWdodCBieSBgJG5gIGNvbHVtbnMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJG4gLSBXaWR0aCB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGBncmlkLWNvbHVtbigpYCBtaXhpbiwgc3VjaCBhcyBgNmAsIGA1MCVgLCBvciBgMSBvZiAyYC5cbkBtaXhpbiBncmlkLWNvbHVtbi1vZmZzZXQoJG4pIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogZ3JpZC1jb2x1bW4oJG4pO1xufVxuXG4vLy8gRGlzYWJsZSB0aGUgZGVmYXVsdCBiZWhhdmlvciBvZiB0aGUgbGFzdCBjb2x1bW4gaW4gYSByb3cgYWxpZ25pbmcgdG8gdGhlIG9wcG9zaXRlIGVkZ2UuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZW5kIHtcbiAgLy8gVGhpcyBleHRyYSBzcGVjaWZpY2l0eSBpcyByZXF1aXJlZCBmb3IgdGhlIHByb3BlcnR5IHRvIGJlIGFwcGxpZWRcbiAgJjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG4gIH1cbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1wb3NpdGlvblxuQG1peGluIGdyaWQtY29sLXBvcygkcG9zaXRpb24pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXVucG9zaXRpb24oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXVucG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC11bnBvcyB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXVucG9zaXRpb247XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1vZmZzZXQoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLW9mZnNldFxuQG1peGluIGdyaWQtY29sLW9mZigkbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoJG4pO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tZW5kKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1lbmRcbkBtaXhpbiBncmlkLWNvbC1lbmQge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1lbmQ7XG59XG4iXX0= */
