@import url(https://fonts.googleapis.com/css?family=Open+Sans:300,400,400i,600,700,800);
@import url(https://fonts.googleapis.com/css?family=Special+Elite);
@charset "UTF-8";
@font-face {
  font-family: "icomoon";
  src: url("../fonts/icomoon.eot");
  src: url("../fonts/icomoon.eot#iefix") format("embedded-opentype"), url("../fonts/icomoon.ttf") format("truetype"), url("../fonts/icomoon.woff") format("woff"), url("../fonts/icomoon.svg#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
}
[class^=icon-], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "icomoon" !important;
  speak: none;
  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-facebook2:before {
  content: "\EA91";
}

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

.icon-checkmark1:before {
  content: "\E900";
}

.icon-cheveron-down:before {
  content: "\E901";
}

.icon-cheveron-left:before {
  content: "\E902";
}

.icon-cheveron-right:before {
  content: "\E903";
}

.icon-cheveron-up:before {
  content: "\E904";
}

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

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

.icon-information-solid:before {
  content: "\E907";
}

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

.icon-checkmark:before {
  content: "\E909";
}

/* ==========================================================================
   Settings
   ========================================================================== */
/* Print
==========
*/
@media print {
  * {
    background: transparent !important;
    color: #000 !important; /* Black prints faster: h5bp.com/s */
    box-shadow: none !important;
    text-shadow: none !important;
  }
  @page {
    size: auto !important;
    margin: 5mm 35mm 35mm 35mm !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  /*
   * Don't show links for images, or javascript/internal links
   */
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: "";
  }
  a[href]:after {
    content: none !important;
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group; /* h5bp.com/t */
  }
  tr,
  img,
  iframe {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  .noprint {
    display: none !important;
  }
  .printonly {
    display: block !important;
  }
  h1 {
    color: #D51D67 !important;
    font-size: 1.5rem;
  }
  h2, h3 {
    color: #616FA0 !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }
  h2 {
    font-size: 1.3rem;
  }
  h3 {
    font-size: 1.1rem;
  }
  .row.align-center .large-8 {
    max-width: 100%;
    flex: 0 0 100%;
  }
  .c-top-bar,
  .c-header,
  .c-footer,
  .c-breadcrumb,
  .c-footer__bottom {
    display: none !important;
    height: 0 !important;
  }
  .c-media__image .media-object {
    display: block !important;
  }
}
.printonly {
  display: none;
}

/* ==========================================================================
   Foundation
   ========================================================================== */
/**
 * Foundation for Sites by ZURB
 * Version 6.5.0-rc.1
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
/*! 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: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

b,
strong {
  font-weight: bolder;
}

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

small {
  font-size: 80%;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

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

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

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

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

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

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

legend {
  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;
}

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

html {
  box-sizing: border-box;
  font-size: 1.125rem;
}

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

body {
  margin: 0;
  padding: 0;
  background: #FFFFFF;
  font-family: "Open Sans", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #272C40;
  -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: 4px;
}

select {
  box-sizing: border-box;
  width: 100%;
  border-radius: 4px;
}

.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: 4px;
  background: transparent;
  line-height: 1;
  cursor: auto;
}
[data-whatinput=mouse] button {
  outline: 0;
}

pre {
  overflow: auto;
}

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

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

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

[type=text], [type=password], [type=date], [type=datetime], [type=datetime-local], [type=month], [type=week], [type=email], [type=number], [type=search], [type=tel], [type=time], [type=url], [type=color],
textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 2.8333333333rem;
  margin: 0 0 1.3888888889rem;
  padding: 0.7777777778rem;
  border: 1px solid #F5F5F5;
  border-radius: 4px;
  background-color: #F5F5F5;
  box-shadow: none;
  font-family: inherit;
  font-size: 0.8888888889rem;
  font-weight: normal;
  line-height: 1.5;
  color: #272C40;
  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 #616FA0;
  background-color: #FFFFFF;
  box-shadow: 0 0 0px #616FA0;
  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: #F5F5F5;
  cursor: not-allowed;
}

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

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

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

::placeholder {
  color: #747885;
}

[type=file],
[type=checkbox],
[type=radio] {
  margin: 0 0 1.3888888889rem;
}

[type=checkbox] + label,
[type=radio] + label {
  display: inline-block;
  vertical-align: baseline;
  margin-left: 0.6944444444rem;
  margin-right: 1.3888888889rem;
  margin-bottom: 0;
}
[type=checkbox] + label[for],
[type=radio] + label[for] {
  cursor: pointer;
}

label > [type=checkbox],
label > [type=radio] {
  margin-right: 0.6944444444rem;
}

[type=file] {
  width: 100%;
}

label {
  display: block;
  margin: 0;
  font-size: 0.8888888889rem;
  font-weight: normal;
  line-height: 1.8;
  color: #272C40;
}
label.middle {
  margin: 0 0 1.3888888889rem;
  padding: 0.75rem 0;
}

.help-text {
  margin-top: -0.6944444444rem;
  font-size: 0.7222222222rem;
  font-style: italic;
  color: #272C40;
}

.input-group {
  display: flex;
  width: 100%;
  margin-bottom: 1.3888888889rem;
  align-items: stretch;
}
.input-group > :first-child {
  border-radius: 4px 0 0 4px;
}
.input-group > :last-child > * {
  border-radius: 0 4px 4px 0;
}

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

.input-group-label {
  padding: 0 1rem;
  border: 1px solid #CDCFD8;
  background: #F5F5F5;
  color: #272C40;
  text-align: center;
  white-space: nowrap;
  display: flex;
  flex: 0 0 auto;
  align-items: center;
}
.input-group-label:first-child {
  border-right: 0;
}
.input-group-label:last-child {
  border-left: 0;
}

.input-group-field {
  border-radius: 0;
  flex: 1 1;
  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: 0.8888888889rem;
}

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

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

.fieldset {
  margin: 1rem 0;
  padding: 1.1111111111rem;
  border: 1px solid #CDCFD8;
}
.fieldset legend {
  margin: 0;
  margin-left: -0.1666666667rem;
  padding: 0 0.1666666667rem;
}

select {
  height: 2.8333333333rem;
  margin: 0 0 1.3888888889rem;
  padding: 0.7777777778rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 1px solid #F5F5F5;
  border-radius: 4px;
  background-color: #FFFFFF;
  font-family: inherit;
  font-size: 0.8888888889rem;
  font-weight: normal;
  line-height: 1.5;
  color: #272C40;
  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%28255, 255, 255%29'></polygon></svg>");
  background-origin: content-box;
  background-position: right -1.3888888889rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 2.0833333333rem;
  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/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAMBJREFUeNrEllsOhCAMRVszC9IlzU7KCmVHTJsoMWYMUtpyv9BgbuXQB5ZSdgBYYY4ycgBivk8KYFsQMfMiTTBP4o3nUzCKzOabLJbLy2/g31evGkAginR4/ZegKH5qX3bJCscA3t0x3kgO5tQFyhhFf50xRqFLbyMUNJQzgyjGS/wgCpvKqkRBpuWrE4V9d+1E4dPUXqIg107SQOE/2DRQxMwTDygIInVDET9T3lCoj/6j/VCmGjZOl2lKpZ8AAwDQP7zIimDGFQAAAABJRU5ErkJggg==");
  }
}
select:focus {
  outline: none;
  border: 1px solid #616FA0;
  background-color: #FFFFFF;
  box-shadow: 0 0 0px #616FA0;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
}
select:disabled {
  background-color: #F5F5F5;
  cursor: not-allowed;
}
select::-ms-expand {
  display: none;
}
select[multiple] {
  height: auto;
  background-image: none;
}

.is-invalid-input:not(:focus) {
  border-color: #EA2941;
  background-color: rgb(252.9, 233.6, 236);
}
.is-invalid-input:not(:focus)::-moz-placeholder {
  color: #EA2941;
}
.is-invalid-input:not(:focus)::placeholder {
  color: #EA2941;
}

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

.form-error {
  display: none;
  margin-top: -0.6944444444rem;
  margin-bottom: 1.3888888889rem;
  font-size: 0.6666666667rem;
  font-weight: bold;
  color: #EA2941;
}
.form-error.is-visible {
  display: block;
}

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

p {
  margin-bottom: 1.1111111111rem;
  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: 88%;
  line-height: inherit;
}

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-family: "Special Elite", cursive;
  font-style: normal;
  font-weight: 400;
  color: #616FA0;
  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: #CDCFD8;
}

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

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

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

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

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

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

@media print, screen and (min-width: 40em) {
  h1, .h1 {
    font-size: 2rem;
  }
  h2, .h2 {
    font-size: 1.7777777778rem;
  }
  h3, .h3 {
    font-size: 1.5555555556rem;
  }
  h4, .h4 {
    font-size: 1.2222222222rem;
  }
  h5, .h5 {
    font-size: 1rem;
  }
  h6, .h6 {
    font-size: 0.8888888889rem;
  }
}
a {
  line-height: inherit;
  color: #D51D67;
  text-decoration: none;
  cursor: pointer;
}
a:hover, a:focus {
  color: rgb(183.18, 24.94, 88.58);
}
a img {
  border: 0;
}

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

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

li {
  font-size: inherit;
}

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

ol {
  margin-left: 1.25rem;
}

ul ul, ul ol, ol ul, ol ol {
  margin-left: 1.25rem;
  margin-bottom: 0;
}

dl {
  margin-bottom: 1rem;
}
dl dt {
  margin-bottom: 0.3rem;
  font-weight: bold;
}

blockquote {
  margin: 0 0 1.1111111111rem;
  padding: 0.5rem 1.1111111111rem 0 1.0555555556rem;
  border-left: 1px solid #CDCFD8;
}
blockquote, blockquote p {
  line-height: 1.6;
  color: #747885;
}

cite {
  display: block;
  font-size: 0.7222222222rem;
  color: #747885;
}
cite:before {
  content: "\2014   ";
}

abbr, abbr[title] {
  border-bottom: 1px dotted #272C40;
  cursor: help;
  text-decoration: none;
}

figure {
  margin: 0;
}

code {
  padding: 0.1111111111rem 0.2777777778rem 0.0555555556rem;
  border: 1px solid #CDCFD8;
  background-color: #F5F5F5;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #272C40;
}

kbd {
  margin: 0;
  padding: 0.1111111111rem 0.2222222222rem 0;
  background-color: #F5F5F5;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  color: #272C40;
  border-radius: 4px;
}

.subheader {
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
  font-weight: normal;
  line-height: 1.4;
  color: #747885;
}

.lead {
  font-size: 1.40625rem;
  line-height: 1.6;
}

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

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

.text-left {
  text-align: left;
}

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

.text-center {
  text-align: center;
}

.text-justify {
  text-align: justify;
}

@media print, screen and (min-width: 40em) {
  .medium-text-left {
    text-align: left;
  }
  .medium-text-right {
    text-align: right;
  }
  .medium-text-center {
    text-align: center;
  }
  .medium-text-justify {
    text-align: justify;
  }
}
@media print, screen and (min-width: 64em) {
  .large-text-left {
    text-align: left;
  }
  .large-text-right {
    text-align: right;
  }
  .large-text-center {
    text-align: center;
  }
  .large-text-justify {
    text-align: justify;
  }
}
.show-for-print {
  display: none !important;
}

@media print {
  * {
    background: transparent !important;
    box-shadow: none !important;
    color: black !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 #747885;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  @page {
    margin: 0.5cm;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  .print-break-inside {
    page-break-inside: auto;
  }
}
.row {
  max-width: 66.6666666667rem;
  margin-right: auto;
  margin-left: auto;
  display: flex;
  flex-flow: row wrap;
}
.row .row {
  margin-right: -0.8333333333rem;
  margin-left: -0.8333333333rem;
}
@media print, screen and (min-width: 40em) {
  .row .row {
    margin-right: -0.8333333333rem;
    margin-left: -0.8333333333rem;
  }
}
@media print, screen and (min-width: 64em) {
  .row .row {
    margin-right: -0.8333333333rem;
    margin-left: -0.8333333333rem;
  }
}
.row .row.collapse {
  margin-right: 0;
  margin-left: 0;
}
.row.expanded {
  max-width: none;
}
.row.expanded .row {
  margin-right: auto;
  margin-left: auto;
}
.row:not(.expanded) .row {
  max-width: none;
}
.row.collapse > .column, .row.collapse > .columns {
  padding-right: 0;
  padding-left: 0;
}
.row.is-collapse-child, .row.collapse > .column > .row, .row.collapse > .columns > .row {
  margin-right: 0;
  margin-left: 0;
}

.column, .columns {
  flex: 1 1;
  padding-right: 0.8333333333rem;
  padding-left: 0.8333333333rem;
  min-width: 0;
}
@media print, screen and (min-width: 40em) {
  .column, .columns {
    padding-right: 0.8333333333rem;
    padding-left: 0.8333333333rem;
  }
}

.column.row.row, .row.row.columns {
  float: none;
  display: block;
}

.row .column.row.row, .row .row.row.columns {
  margin-right: 0;
  margin-left: 0;
  padding-right: 0;
  padding-left: 0;
}

.small-1 {
  flex: 0 0 8.3333333333%;
  max-width: 8.3333333333%;
}

.small-offset-0 {
  margin-left: 0%;
}

.small-2 {
  flex: 0 0 16.6666666667%;
  max-width: 16.6666666667%;
}

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

.small-3 {
  flex: 0 0 25%;
  max-width: 25%;
}

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

.small-4 {
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%;
}

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

.small-5 {
  flex: 0 0 41.6666666667%;
  max-width: 41.6666666667%;
}

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

.small-6 {
  flex: 0 0 50%;
  max-width: 50%;
}

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

.small-7 {
  flex: 0 0 58.3333333333%;
  max-width: 58.3333333333%;
}

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

.small-8 {
  flex: 0 0 66.6666666667%;
  max-width: 66.6666666667%;
}

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

.small-9 {
  flex: 0 0 75%;
  max-width: 75%;
}

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

.small-10 {
  flex: 0 0 83.3333333333%;
  max-width: 83.3333333333%;
}

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

.small-11 {
  flex: 0 0 91.6666666667%;
  max-width: 91.6666666667%;
}

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

.small-12 {
  flex: 0 0 100%;
  max-width: 100%;
}

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

.small-up-1 {
  flex-wrap: wrap;
}
.small-up-1 > .column, .small-up-1 > .columns {
  flex: 0 0 100%;
  max-width: 100%;
}

.small-up-2 {
  flex-wrap: wrap;
}
.small-up-2 > .column, .small-up-2 > .columns {
  flex: 0 0 50%;
  max-width: 50%;
}

.small-up-3 {
  flex-wrap: wrap;
}
.small-up-3 > .column, .small-up-3 > .columns {
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%;
}

.small-up-4 {
  flex-wrap: wrap;
}
.small-up-4 > .column, .small-up-4 > .columns {
  flex: 0 0 25%;
  max-width: 25%;
}

.small-up-5 {
  flex-wrap: wrap;
}
.small-up-5 > .column, .small-up-5 > .columns {
  flex: 0 0 20%;
  max-width: 20%;
}

.small-up-6 {
  flex-wrap: wrap;
}
.small-up-6 > .column, .small-up-6 > .columns {
  flex: 0 0 16.6666666667%;
  max-width: 16.6666666667%;
}

.small-up-7 {
  flex-wrap: wrap;
}
.small-up-7 > .column, .small-up-7 > .columns {
  flex: 0 0 14.2857142857%;
  max-width: 14.2857142857%;
}

.small-up-8 {
  flex-wrap: wrap;
}
.small-up-8 > .column, .small-up-8 > .columns {
  flex: 0 0 12.5%;
  max-width: 12.5%;
}

.small-collapse > .column, .small-collapse > .columns {
  padding-right: 0;
  padding-left: 0;
}

.small-uncollapse > .column, .small-uncollapse > .columns {
  padding-right: 0.8333333333rem;
  padding-left: 0.8333333333rem;
}

@media print, screen and (min-width: 40em) {
  .medium-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .medium-offset-0 {
    margin-left: 0%;
  }
  .medium-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .medium-offset-1 {
    margin-left: 8.3333333333%;
  }
  .medium-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .medium-offset-2 {
    margin-left: 16.6666666667%;
  }
  .medium-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .medium-offset-3 {
    margin-left: 25%;
  }
  .medium-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .medium-offset-4 {
    margin-left: 33.3333333333%;
  }
  .medium-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .medium-offset-5 {
    margin-left: 41.6666666667%;
  }
  .medium-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .medium-offset-6 {
    margin-left: 50%;
  }
  .medium-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .medium-offset-7 {
    margin-left: 58.3333333333%;
  }
  .medium-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .medium-offset-8 {
    margin-left: 66.6666666667%;
  }
  .medium-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .medium-offset-9 {
    margin-left: 75%;
  }
  .medium-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .medium-offset-10 {
    margin-left: 83.3333333333%;
  }
  .medium-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .medium-offset-11 {
    margin-left: 91.6666666667%;
  }
  .medium-up-1 {
    flex-wrap: wrap;
  }
  .medium-up-1 > .column, .medium-up-1 > .columns {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .medium-up-2 {
    flex-wrap: wrap;
  }
  .medium-up-2 > .column, .medium-up-2 > .columns {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .medium-up-3 {
    flex-wrap: wrap;
  }
  .medium-up-3 > .column, .medium-up-3 > .columns {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .medium-up-4 {
    flex-wrap: wrap;
  }
  .medium-up-4 > .column, .medium-up-4 > .columns {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .medium-up-5 {
    flex-wrap: wrap;
  }
  .medium-up-5 > .column, .medium-up-5 > .columns {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .medium-up-6 {
    flex-wrap: wrap;
  }
  .medium-up-6 > .column, .medium-up-6 > .columns {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .medium-up-7 {
    flex-wrap: wrap;
  }
  .medium-up-7 > .column, .medium-up-7 > .columns {
    flex: 0 0 14.2857142857%;
    max-width: 14.2857142857%;
  }
  .medium-up-8 {
    flex-wrap: wrap;
  }
  .medium-up-8 > .column, .medium-up-8 > .columns {
    flex: 0 0 12.5%;
    max-width: 12.5%;
  }
}
@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .medium-expand {
    flex: 1 1;
  }
}
.row.medium-unstack > .column, .row.medium-unstack > .columns {
  flex: 0 0 100%;
}
@media print, screen and (min-width: 40em) {
  .row.medium-unstack > .column, .row.medium-unstack > .columns {
    flex: 1 1;
  }
  .medium-collapse > .column, .medium-collapse > .columns {
    padding-right: 0;
    padding-left: 0;
  }
  .medium-uncollapse > .column, .medium-uncollapse > .columns {
    padding-right: 0.8333333333rem;
    padding-left: 0.8333333333rem;
  }
}

@media print, screen and (min-width: 64em) {
  .large-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .large-offset-0 {
    margin-left: 0%;
  }
  .large-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .large-offset-1 {
    margin-left: 8.3333333333%;
  }
  .large-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .large-offset-2 {
    margin-left: 16.6666666667%;
  }
  .large-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .large-offset-3 {
    margin-left: 25%;
  }
  .large-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .large-offset-4 {
    margin-left: 33.3333333333%;
  }
  .large-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .large-offset-5 {
    margin-left: 41.6666666667%;
  }
  .large-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .large-offset-6 {
    margin-left: 50%;
  }
  .large-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .large-offset-7 {
    margin-left: 58.3333333333%;
  }
  .large-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .large-offset-8 {
    margin-left: 66.6666666667%;
  }
  .large-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .large-offset-9 {
    margin-left: 75%;
  }
  .large-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .large-offset-10 {
    margin-left: 83.3333333333%;
  }
  .large-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .large-offset-11 {
    margin-left: 91.6666666667%;
  }
  .large-up-1 {
    flex-wrap: wrap;
  }
  .large-up-1 > .column, .large-up-1 > .columns {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .large-up-2 {
    flex-wrap: wrap;
  }
  .large-up-2 > .column, .large-up-2 > .columns {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .large-up-3 {
    flex-wrap: wrap;
  }
  .large-up-3 > .column, .large-up-3 > .columns {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .large-up-4 {
    flex-wrap: wrap;
  }
  .large-up-4 > .column, .large-up-4 > .columns {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .large-up-5 {
    flex-wrap: wrap;
  }
  .large-up-5 > .column, .large-up-5 > .columns {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .large-up-6 {
    flex-wrap: wrap;
  }
  .large-up-6 > .column, .large-up-6 > .columns {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .large-up-7 {
    flex-wrap: wrap;
  }
  .large-up-7 > .column, .large-up-7 > .columns {
    flex: 0 0 14.2857142857%;
    max-width: 14.2857142857%;
  }
  .large-up-8 {
    flex-wrap: wrap;
  }
  .large-up-8 > .column, .large-up-8 > .columns {
    flex: 0 0 12.5%;
    max-width: 12.5%;
  }
}
@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .large-expand {
    flex: 1 1;
  }
}
.row.large-unstack > .column, .row.large-unstack > .columns {
  flex: 0 0 100%;
}
@media print, screen and (min-width: 64em) {
  .row.large-unstack > .column, .row.large-unstack > .columns {
    flex: 1 1;
  }
  .large-collapse > .column, .large-collapse > .columns {
    padding-right: 0;
    padding-left: 0;
  }
  .large-uncollapse > .column, .large-uncollapse > .columns {
    padding-right: 0.8333333333rem;
    padding-left: 0.8333333333rem;
  }
}

.shrink {
  flex: 0 0 auto;
  max-width: 100%;
}

.column-block {
  margin-bottom: 1.6666666667rem;
}
.column-block > :last-child {
  margin-bottom: 0;
}
@media print, screen and (min-width: 40em) {
  .column-block {
    margin-bottom: 1.6666666667rem;
  }
  .column-block > :last-child {
    margin-bottom: 0;
  }
}

.button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  padding: 0.85em 1em;
  border: 1px solid transparent;
  border-radius: 4px;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-family: "Open Sans", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-size: 0.8rem;
  -webkit-appearance: none;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #616FA0;
  color: #FFFFFF;
}
[data-whatinput=mouse] .button {
  outline: 0;
}
.button:hover, .button:focus {
  background-color: rgb(82.0266798419, 94.1148221344, 136.4233201581);
  color: #FFFFFF;
}
.button.tiny {
  font-size: 0.65rem;
}
.button.small {
  font-size: 0.7rem;
}
.button.large {
  font-size: 0.9rem;
}
.button.huge {
  font-size: 1rem;
}
.button.expanded {
  display: block;
  width: 100%;
  margin-right: 0;
  margin-left: 0;
}
.button.primary {
  background-color: #D51D67;
  color: #FFFFFF;
}
.button.primary:hover, .button.primary:focus {
  background-color: rgb(170.4, 23.2, 82.4);
  color: #FFFFFF;
}
.button.primary-darken {
  background-color: #BF1A5C;
  color: #FFFFFF;
}
.button.primary-darken:hover, .button.primary-darken:focus {
  background-color: rgb(152.8, 20.8, 73.6);
  color: #FFFFFF;
}
.button.secondary {
  background-color: #616FA0;
  color: #FFFFFF;
}
.button.secondary:hover, .button.secondary:focus {
  background-color: rgb(77.2015810277, 88.5786561265, 128.3984189723);
  color: #FFFFFF;
}
.button.secondary-darken {
  background-color: #576490;
  color: #FFFFFF;
}
.button.secondary-darken:hover, .button.secondary-darken:focus {
  background-color: rgb(69.6, 80, 115.2);
  color: #FFFFFF;
}
.button.tertiary {
  background-color: #81BB27;
  color: #272C40;
}
.button.tertiary:hover, .button.tertiary:focus {
  background-color: rgb(103.2, 149.6, 31.2);
  color: #272C40;
}
.button.tertiary-darken {
  background-color: #73A723;
  color: #272C40;
}
.button.tertiary-darken:hover, .button.tertiary-darken:focus {
  background-color: rgb(92, 133.6, 28);
  color: #272C40;
}
.button.quaternary {
  background-color: #F2BBD1;
  color: #272C40;
}
.button.quaternary:hover, .button.quaternary:focus {
  background-color: rgb(228.2296296296, 114.9703703704, 160.2740740741);
  color: #272C40;
}
.button.success {
  background-color: #75AD01;
  color: #272C40;
}
.button.success:hover, .button.success:focus {
  background-color: rgb(93.6, 138.4, 0.8);
  color: #272C40;
}
.button.warning {
  background-color: #F39721;
  color: #272C40;
}
.button.warning:hover, .button.warning:focus {
  background-color: rgb(209.4769230769, 122.6666666667, 11.3230769231);
  color: #272C40;
}
.button.alert {
  background-color: #EA2941;
  color: #FFFFFF;
}
.button.alert:hover, .button.alert:focus {
  background-color: rgb(200.3404255319, 19.6595744681, 42.1276595745);
  color: #FFFFFF;
}
.button.alert-lighten {
  background-color: #FDEAEC;
  color: #272C40;
}
.button.alert-lighten:hover, .button.alert-lighten:focus {
  background-color: rgb(244.5304347826, 145.0695652174, 155.5391304348);
  color: #272C40;
}
.button.disabled, .button[disabled] {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.disabled, .button.disabled:hover, .button.disabled:focus, .button[disabled], .button[disabled]:hover, .button[disabled]:focus {
  background-color: #616FA0;
  color: #FFFFFF;
}
.button.disabled.primary, .button[disabled].primary {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.disabled.primary, .button.disabled.primary:hover, .button.disabled.primary:focus, .button[disabled].primary, .button[disabled].primary:hover, .button[disabled].primary:focus {
  background-color: #D51D67;
  color: #FFFFFF;
}
.button.disabled.primary-darken, .button[disabled].primary-darken {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.disabled.primary-darken, .button.disabled.primary-darken:hover, .button.disabled.primary-darken:focus, .button[disabled].primary-darken, .button[disabled].primary-darken:hover, .button[disabled].primary-darken:focus {
  background-color: #BF1A5C;
  color: #FFFFFF;
}
.button.disabled.secondary, .button[disabled].secondary {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.disabled.secondary, .button.disabled.secondary:hover, .button.disabled.secondary:focus, .button[disabled].secondary, .button[disabled].secondary:hover, .button[disabled].secondary:focus {
  background-color: #616FA0;
  color: #FFFFFF;
}
.button.disabled.secondary-darken, .button[disabled].secondary-darken {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.disabled.secondary-darken, .button.disabled.secondary-darken:hover, .button.disabled.secondary-darken:focus, .button[disabled].secondary-darken, .button[disabled].secondary-darken:hover, .button[disabled].secondary-darken:focus {
  background-color: #576490;
  color: #FFFFFF;
}
.button.disabled.tertiary, .button[disabled].tertiary {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.disabled.tertiary, .button.disabled.tertiary:hover, .button.disabled.tertiary:focus, .button[disabled].tertiary, .button[disabled].tertiary:hover, .button[disabled].tertiary:focus {
  background-color: #81BB27;
  color: #272C40;
}
.button.disabled.tertiary-darken, .button[disabled].tertiary-darken {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.disabled.tertiary-darken, .button.disabled.tertiary-darken:hover, .button.disabled.tertiary-darken:focus, .button[disabled].tertiary-darken, .button[disabled].tertiary-darken:hover, .button[disabled].tertiary-darken:focus {
  background-color: #73A723;
  color: #272C40;
}
.button.disabled.quaternary, .button[disabled].quaternary {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.disabled.quaternary, .button.disabled.quaternary:hover, .button.disabled.quaternary:focus, .button[disabled].quaternary, .button[disabled].quaternary:hover, .button[disabled].quaternary:focus {
  background-color: #F2BBD1;
  color: #272C40;
}
.button.disabled.success, .button[disabled].success {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.disabled.success, .button.disabled.success:hover, .button.disabled.success:focus, .button[disabled].success, .button[disabled].success:hover, .button[disabled].success:focus {
  background-color: #75AD01;
  color: #272C40;
}
.button.disabled.warning, .button[disabled].warning {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.disabled.warning, .button.disabled.warning:hover, .button.disabled.warning:focus, .button[disabled].warning, .button[disabled].warning:hover, .button[disabled].warning:focus {
  background-color: #F39721;
  color: #272C40;
}
.button.disabled.alert, .button[disabled].alert {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.disabled.alert, .button.disabled.alert:hover, .button.disabled.alert:focus, .button[disabled].alert, .button[disabled].alert:hover, .button[disabled].alert:focus {
  background-color: #EA2941;
  color: #FFFFFF;
}
.button.disabled.alert-lighten, .button[disabled].alert-lighten {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.disabled.alert-lighten, .button.disabled.alert-lighten:hover, .button.disabled.alert-lighten:focus, .button[disabled].alert-lighten, .button[disabled].alert-lighten:hover, .button[disabled].alert-lighten:focus {
  background-color: #FDEAEC;
  color: #272C40;
}
.button.hollow {
  border: 1px solid #616FA0;
  color: #616FA0;
}
.button.hollow, .button.hollow:hover, .button.hollow:focus {
  background-color: transparent;
}
.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:hover, .button.hollow:focus {
  border-color: rgb(48.2509881423, 55.3616600791, 80.2490118577);
  color: rgb(48.2509881423, 55.3616600791, 80.2490118577);
}
.button.hollow:hover.disabled, .button.hollow:hover[disabled], .button.hollow:focus.disabled, .button.hollow:focus[disabled] {
  border: 1px solid #616FA0;
  color: #616FA0;
}
.button.hollow.primary {
  border: 1px solid #D51D67;
  color: #D51D67;
}
.button.hollow.primary:hover, .button.hollow.primary:focus {
  border-color: rgb(106.5, 14.5, 51.5);
  color: rgb(106.5, 14.5, 51.5);
}
.button.hollow.primary:hover.disabled, .button.hollow.primary:hover[disabled], .button.hollow.primary:focus.disabled, .button.hollow.primary:focus[disabled] {
  border: 1px solid #D51D67;
  color: #D51D67;
}
.button.hollow.primary-darken {
  border: 1px solid #BF1A5C;
  color: #BF1A5C;
}
.button.hollow.primary-darken:hover, .button.hollow.primary-darken:focus {
  border-color: rgb(95.5, 13, 46);
  color: rgb(95.5, 13, 46);
}
.button.hollow.primary-darken:hover.disabled, .button.hollow.primary-darken:hover[disabled], .button.hollow.primary-darken:focus.disabled, .button.hollow.primary-darken:focus[disabled] {
  border: 1px solid #BF1A5C;
  color: #BF1A5C;
}
.button.hollow.secondary {
  border: 1px solid #616FA0;
  color: #616FA0;
}
.button.hollow.secondary:hover, .button.hollow.secondary:focus {
  border-color: rgb(48.2509881423, 55.3616600791, 80.2490118577);
  color: rgb(48.2509881423, 55.3616600791, 80.2490118577);
}
.button.hollow.secondary:hover.disabled, .button.hollow.secondary:hover[disabled], .button.hollow.secondary:focus.disabled, .button.hollow.secondary:focus[disabled] {
  border: 1px solid #616FA0;
  color: #616FA0;
}
.button.hollow.secondary-darken {
  border: 1px solid #576490;
  color: #576490;
}
.button.hollow.secondary-darken:hover, .button.hollow.secondary-darken:focus {
  border-color: rgb(43.5, 50, 72);
  color: rgb(43.5, 50, 72);
}
.button.hollow.secondary-darken:hover.disabled, .button.hollow.secondary-darken:hover[disabled], .button.hollow.secondary-darken:focus.disabled, .button.hollow.secondary-darken:focus[disabled] {
  border: 1px solid #576490;
  color: #576490;
}
.button.hollow.tertiary {
  border: 1px solid #81BB27;
  color: #81BB27;
}
.button.hollow.tertiary:hover, .button.hollow.tertiary:focus {
  border-color: rgb(64.5, 93.5, 19.5);
  color: rgb(64.5, 93.5, 19.5);
}
.button.hollow.tertiary:hover.disabled, .button.hollow.tertiary:hover[disabled], .button.hollow.tertiary:focus.disabled, .button.hollow.tertiary:focus[disabled] {
  border: 1px solid #81BB27;
  color: #81BB27;
}
.button.hollow.tertiary-darken {
  border: 1px solid #73A723;
  color: #73A723;
}
.button.hollow.tertiary-darken:hover, .button.hollow.tertiary-darken:focus {
  border-color: rgb(57.5, 83.5, 17.5);
  color: rgb(57.5, 83.5, 17.5);
}
.button.hollow.tertiary-darken:hover.disabled, .button.hollow.tertiary-darken:hover[disabled], .button.hollow.tertiary-darken:focus.disabled, .button.hollow.tertiary-darken:focus[disabled] {
  border: 1px solid #73A723;
  color: #73A723;
}
.button.hollow.quaternary {
  border: 1px solid #F2BBD1;
  color: #F2BBD1;
}
.button.hollow.quaternary:hover, .button.hollow.quaternary:focus {
  border-color: rgb(180.0740740741, 34.4259259259, 92.6851851852);
  color: rgb(180.0740740741, 34.4259259259, 92.6851851852);
}
.button.hollow.quaternary:hover.disabled, .button.hollow.quaternary:hover[disabled], .button.hollow.quaternary:focus.disabled, .button.hollow.quaternary:focus[disabled] {
  border: 1px solid #F2BBD1;
  color: #F2BBD1;
}
.button.hollow.success {
  border: 1px solid #75AD01;
  color: #75AD01;
}
.button.hollow.success:hover, .button.hollow.success:focus {
  border-color: rgb(58.5, 86.5, 0.5);
  color: rgb(58.5, 86.5, 0.5);
}
.button.hollow.success:hover.disabled, .button.hollow.success:hover[disabled], .button.hollow.success:focus.disabled, .button.hollow.success:focus[disabled] {
  border: 1px solid #75AD01;
  color: #75AD01;
}
.button.hollow.warning {
  border: 1px solid #F39721;
  color: #F39721;
}
.button.hollow.warning:hover, .button.hollow.warning:focus {
  border-color: rgb(130.9230769231, 76.6666666667, 7.0769230769);
  color: rgb(130.9230769231, 76.6666666667, 7.0769230769);
}
.button.hollow.warning:hover.disabled, .button.hollow.warning:hover[disabled], .button.hollow.warning:focus.disabled, .button.hollow.warning:focus[disabled] {
  border: 1px solid #F39721;
  color: #F39721;
}
.button.hollow.alert {
  border: 1px solid #EA2941;
  color: #EA2941;
}
.button.hollow.alert:hover, .button.hollow.alert:focus {
  border-color: rgb(125.2127659574, 12.2872340426, 26.329787234);
  color: rgb(125.2127659574, 12.2872340426, 26.329787234);
}
.button.hollow.alert:hover.disabled, .button.hollow.alert:hover[disabled], .button.hollow.alert:focus.disabled, .button.hollow.alert:focus[disabled] {
  border: 1px solid #EA2941;
  color: #EA2941;
}
.button.hollow.alert-lighten {
  border: 1px solid #FDEAEC;
  color: #FDEAEC;
}
.button.hollow.alert-lighten:hover, .button.hollow.alert-lighten:focus {
  border-color: rgb(222.3260869565, 21.1739130435, 42.347826087);
  color: rgb(222.3260869565, 21.1739130435, 42.347826087);
}
.button.hollow.alert-lighten:hover.disabled, .button.hollow.alert-lighten:hover[disabled], .button.hollow.alert-lighten:focus.disabled, .button.hollow.alert-lighten:focus[disabled] {
  border: 1px solid #FDEAEC;
  color: #FDEAEC;
}
.button.clear {
  border: 1px solid #616FA0;
  color: #616FA0;
}
.button.clear, .button.clear:hover, .button.clear:focus {
  background-color: transparent;
}
.button.clear.disabled, .button.clear.disabled:hover, .button.clear.disabled:focus, .button.clear[disabled], .button.clear[disabled]:hover, .button.clear[disabled]:focus {
  background-color: transparent;
}
.button.clear:hover, .button.clear:focus {
  border-color: rgb(48.2509881423, 55.3616600791, 80.2490118577);
  color: rgb(48.2509881423, 55.3616600791, 80.2490118577);
}
.button.clear:hover.disabled, .button.clear:hover[disabled], .button.clear:focus.disabled, .button.clear:focus[disabled] {
  border: 1px solid #616FA0;
  color: #616FA0;
}
.button.clear, .button.clear.disabled, .button.clear[disabled], .button.clear:hover, .button.clear:hover.disabled, .button.clear:hover[disabled], .button.clear:focus, .button.clear:focus.disabled, .button.clear:focus[disabled] {
  border-color: transparent;
}
.button.clear.primary {
  border: 1px solid #D51D67;
  color: #D51D67;
}
.button.clear.primary:hover, .button.clear.primary:focus {
  border-color: rgb(106.5, 14.5, 51.5);
  color: rgb(106.5, 14.5, 51.5);
}
.button.clear.primary:hover.disabled, .button.clear.primary:hover[disabled], .button.clear.primary:focus.disabled, .button.clear.primary:focus[disabled] {
  border: 1px solid #D51D67;
  color: #D51D67;
}
.button.clear.primary, .button.clear.primary.disabled, .button.clear.primary[disabled], .button.clear.primary:hover, .button.clear.primary:hover.disabled, .button.clear.primary:hover[disabled], .button.clear.primary:focus, .button.clear.primary:focus.disabled, .button.clear.primary:focus[disabled] {
  border-color: transparent;
}
.button.clear.primary-darken {
  border: 1px solid #BF1A5C;
  color: #BF1A5C;
}
.button.clear.primary-darken:hover, .button.clear.primary-darken:focus {
  border-color: rgb(95.5, 13, 46);
  color: rgb(95.5, 13, 46);
}
.button.clear.primary-darken:hover.disabled, .button.clear.primary-darken:hover[disabled], .button.clear.primary-darken:focus.disabled, .button.clear.primary-darken:focus[disabled] {
  border: 1px solid #BF1A5C;
  color: #BF1A5C;
}
.button.clear.primary-darken, .button.clear.primary-darken.disabled, .button.clear.primary-darken[disabled], .button.clear.primary-darken:hover, .button.clear.primary-darken:hover.disabled, .button.clear.primary-darken:hover[disabled], .button.clear.primary-darken:focus, .button.clear.primary-darken:focus.disabled, .button.clear.primary-darken:focus[disabled] {
  border-color: transparent;
}
.button.clear.secondary {
  border: 1px solid #616FA0;
  color: #616FA0;
}
.button.clear.secondary:hover, .button.clear.secondary:focus {
  border-color: rgb(48.2509881423, 55.3616600791, 80.2490118577);
  color: rgb(48.2509881423, 55.3616600791, 80.2490118577);
}
.button.clear.secondary:hover.disabled, .button.clear.secondary:hover[disabled], .button.clear.secondary:focus.disabled, .button.clear.secondary:focus[disabled] {
  border: 1px solid #616FA0;
  color: #616FA0;
}
.button.clear.secondary, .button.clear.secondary.disabled, .button.clear.secondary[disabled], .button.clear.secondary:hover, .button.clear.secondary:hover.disabled, .button.clear.secondary:hover[disabled], .button.clear.secondary:focus, .button.clear.secondary:focus.disabled, .button.clear.secondary:focus[disabled] {
  border-color: transparent;
}
.button.clear.secondary-darken {
  border: 1px solid #576490;
  color: #576490;
}
.button.clear.secondary-darken:hover, .button.clear.secondary-darken:focus {
  border-color: rgb(43.5, 50, 72);
  color: rgb(43.5, 50, 72);
}
.button.clear.secondary-darken:hover.disabled, .button.clear.secondary-darken:hover[disabled], .button.clear.secondary-darken:focus.disabled, .button.clear.secondary-darken:focus[disabled] {
  border: 1px solid #576490;
  color: #576490;
}
.button.clear.secondary-darken, .button.clear.secondary-darken.disabled, .button.clear.secondary-darken[disabled], .button.clear.secondary-darken:hover, .button.clear.secondary-darken:hover.disabled, .button.clear.secondary-darken:hover[disabled], .button.clear.secondary-darken:focus, .button.clear.secondary-darken:focus.disabled, .button.clear.secondary-darken:focus[disabled] {
  border-color: transparent;
}
.button.clear.tertiary {
  border: 1px solid #81BB27;
  color: #81BB27;
}
.button.clear.tertiary:hover, .button.clear.tertiary:focus {
  border-color: rgb(64.5, 93.5, 19.5);
  color: rgb(64.5, 93.5, 19.5);
}
.button.clear.tertiary:hover.disabled, .button.clear.tertiary:hover[disabled], .button.clear.tertiary:focus.disabled, .button.clear.tertiary:focus[disabled] {
  border: 1px solid #81BB27;
  color: #81BB27;
}
.button.clear.tertiary, .button.clear.tertiary.disabled, .button.clear.tertiary[disabled], .button.clear.tertiary:hover, .button.clear.tertiary:hover.disabled, .button.clear.tertiary:hover[disabled], .button.clear.tertiary:focus, .button.clear.tertiary:focus.disabled, .button.clear.tertiary:focus[disabled] {
  border-color: transparent;
}
.button.clear.tertiary-darken {
  border: 1px solid #73A723;
  color: #73A723;
}
.button.clear.tertiary-darken:hover, .button.clear.tertiary-darken:focus {
  border-color: rgb(57.5, 83.5, 17.5);
  color: rgb(57.5, 83.5, 17.5);
}
.button.clear.tertiary-darken:hover.disabled, .button.clear.tertiary-darken:hover[disabled], .button.clear.tertiary-darken:focus.disabled, .button.clear.tertiary-darken:focus[disabled] {
  border: 1px solid #73A723;
  color: #73A723;
}
.button.clear.tertiary-darken, .button.clear.tertiary-darken.disabled, .button.clear.tertiary-darken[disabled], .button.clear.tertiary-darken:hover, .button.clear.tertiary-darken:hover.disabled, .button.clear.tertiary-darken:hover[disabled], .button.clear.tertiary-darken:focus, .button.clear.tertiary-darken:focus.disabled, .button.clear.tertiary-darken:focus[disabled] {
  border-color: transparent;
}
.button.clear.quaternary {
  border: 1px solid #F2BBD1;
  color: #F2BBD1;
}
.button.clear.quaternary:hover, .button.clear.quaternary:focus {
  border-color: rgb(180.0740740741, 34.4259259259, 92.6851851852);
  color: rgb(180.0740740741, 34.4259259259, 92.6851851852);
}
.button.clear.quaternary:hover.disabled, .button.clear.quaternary:hover[disabled], .button.clear.quaternary:focus.disabled, .button.clear.quaternary:focus[disabled] {
  border: 1px solid #F2BBD1;
  color: #F2BBD1;
}
.button.clear.quaternary, .button.clear.quaternary.disabled, .button.clear.quaternary[disabled], .button.clear.quaternary:hover, .button.clear.quaternary:hover.disabled, .button.clear.quaternary:hover[disabled], .button.clear.quaternary:focus, .button.clear.quaternary:focus.disabled, .button.clear.quaternary:focus[disabled] {
  border-color: transparent;
}
.button.clear.success {
  border: 1px solid #75AD01;
  color: #75AD01;
}
.button.clear.success:hover, .button.clear.success:focus {
  border-color: rgb(58.5, 86.5, 0.5);
  color: rgb(58.5, 86.5, 0.5);
}
.button.clear.success:hover.disabled, .button.clear.success:hover[disabled], .button.clear.success:focus.disabled, .button.clear.success:focus[disabled] {
  border: 1px solid #75AD01;
  color: #75AD01;
}
.button.clear.success, .button.clear.success.disabled, .button.clear.success[disabled], .button.clear.success:hover, .button.clear.success:hover.disabled, .button.clear.success:hover[disabled], .button.clear.success:focus, .button.clear.success:focus.disabled, .button.clear.success:focus[disabled] {
  border-color: transparent;
}
.button.clear.warning {
  border: 1px solid #F39721;
  color: #F39721;
}
.button.clear.warning:hover, .button.clear.warning:focus {
  border-color: rgb(130.9230769231, 76.6666666667, 7.0769230769);
  color: rgb(130.9230769231, 76.6666666667, 7.0769230769);
}
.button.clear.warning:hover.disabled, .button.clear.warning:hover[disabled], .button.clear.warning:focus.disabled, .button.clear.warning:focus[disabled] {
  border: 1px solid #F39721;
  color: #F39721;
}
.button.clear.warning, .button.clear.warning.disabled, .button.clear.warning[disabled], .button.clear.warning:hover, .button.clear.warning:hover.disabled, .button.clear.warning:hover[disabled], .button.clear.warning:focus, .button.clear.warning:focus.disabled, .button.clear.warning:focus[disabled] {
  border-color: transparent;
}
.button.clear.alert {
  border: 1px solid #EA2941;
  color: #EA2941;
}
.button.clear.alert:hover, .button.clear.alert:focus {
  border-color: rgb(125.2127659574, 12.2872340426, 26.329787234);
  color: rgb(125.2127659574, 12.2872340426, 26.329787234);
}
.button.clear.alert:hover.disabled, .button.clear.alert:hover[disabled], .button.clear.alert:focus.disabled, .button.clear.alert:focus[disabled] {
  border: 1px solid #EA2941;
  color: #EA2941;
}
.button.clear.alert, .button.clear.alert.disabled, .button.clear.alert[disabled], .button.clear.alert:hover, .button.clear.alert:hover.disabled, .button.clear.alert:hover[disabled], .button.clear.alert:focus, .button.clear.alert:focus.disabled, .button.clear.alert:focus[disabled] {
  border-color: transparent;
}
.button.clear.alert-lighten {
  border: 1px solid #FDEAEC;
  color: #FDEAEC;
}
.button.clear.alert-lighten:hover, .button.clear.alert-lighten:focus {
  border-color: rgb(222.3260869565, 21.1739130435, 42.347826087);
  color: rgb(222.3260869565, 21.1739130435, 42.347826087);
}
.button.clear.alert-lighten:hover.disabled, .button.clear.alert-lighten:hover[disabled], .button.clear.alert-lighten:focus.disabled, .button.clear.alert-lighten:focus[disabled] {
  border: 1px solid #FDEAEC;
  color: #FDEAEC;
}
.button.clear.alert-lighten, .button.clear.alert-lighten.disabled, .button.clear.alert-lighten[disabled], .button.clear.alert-lighten:hover, .button.clear.alert-lighten:hover.disabled, .button.clear.alert-lighten:hover[disabled], .button.clear.alert-lighten:focus, .button.clear.alert-lighten:focus.disabled, .button.clear.alert-lighten:focus[disabled] {
  border-color: transparent;
}
.button.dropdown::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 0.4em;
  content: "";
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #FFFFFF transparent transparent;
  position: relative;
  top: 0.4em;
  display: inline-block;
  float: right;
  margin-left: 1em;
}
.button.dropdown.hollow::after {
  border-top-color: #616FA0;
}
.button.dropdown.hollow.primary::after {
  border-top-color: #D51D67;
}
.button.dropdown.hollow.primary-darken::after {
  border-top-color: #BF1A5C;
}
.button.dropdown.hollow.secondary::after {
  border-top-color: #616FA0;
}
.button.dropdown.hollow.secondary-darken::after {
  border-top-color: #576490;
}
.button.dropdown.hollow.tertiary::after {
  border-top-color: #81BB27;
}
.button.dropdown.hollow.tertiary-darken::after {
  border-top-color: #73A723;
}
.button.dropdown.hollow.quaternary::after {
  border-top-color: #F2BBD1;
}
.button.dropdown.hollow.success::after {
  border-top-color: #75AD01;
}
.button.dropdown.hollow.warning::after {
  border-top-color: #F39721;
}
.button.dropdown.hollow.alert::after {
  border-top-color: #EA2941;
}
.button.dropdown.hollow.alert-lighten::after {
  border-top-color: #FDEAEC;
}
.button.arrow-only::after {
  top: -0.1em;
  float: none;
  margin-left: 0;
}

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

.label {
  display: inline-block;
  padding: 0.33333rem 0.5rem;
  border-radius: 100px;
  font-size: 0.7777777778rem;
  line-height: 1;
  white-space: nowrap;
  cursor: default;
  background: #D51D67;
  color: #FFFFFF;
}
.label.primary {
  background: #D51D67;
  color: #FFFFFF;
}
.label.primary-darken {
  background: #BF1A5C;
  color: #FFFFFF;
}
.label.secondary {
  background: #616FA0;
  color: #FFFFFF;
}
.label.secondary-darken {
  background: #576490;
  color: #FFFFFF;
}
.label.tertiary {
  background: #81BB27;
  color: #272C40;
}
.label.tertiary-darken {
  background: #73A723;
  color: #272C40;
}
.label.quaternary {
  background: #F2BBD1;
  color: #272C40;
}
.label.success {
  background: #75AD01;
  color: #272C40;
}
.label.warning {
  background: #F39721;
  color: #272C40;
}
.label.alert {
  background: #EA2941;
  color: #FFFFFF;
}
.label.alert-lighten {
  background: #FDEAEC;
  color: #272C40;
}

.progress {
  height: 0.5555555556rem;
  margin-bottom: 1rem;
  border-radius: 0;
  background-color: #CDCFD8;
}
.progress.primary .progress-meter {
  background-color: #D51D67;
}
.progress.primary-darken .progress-meter {
  background-color: #BF1A5C;
}
.progress.secondary .progress-meter {
  background-color: #616FA0;
}
.progress.secondary-darken .progress-meter {
  background-color: #576490;
}
.progress.tertiary .progress-meter {
  background-color: #81BB27;
}
.progress.tertiary-darken .progress-meter {
  background-color: #73A723;
}
.progress.quaternary .progress-meter {
  background-color: #F2BBD1;
}
.progress.success .progress-meter {
  background-color: #75AD01;
}
.progress.warning .progress-meter {
  background-color: #F39721;
}
.progress.alert .progress-meter {
  background-color: #EA2941;
}
.progress.alert-lighten .progress-meter {
  background-color: #FDEAEC;
}

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

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

progress {
  display: block;
  width: 100%;
  height: 0.5555555556rem;
  margin-bottom: 1rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  background: #CDCFD8;
}
progress::-webkit-progress-bar {
  background: #CDCFD8;
}
progress::-webkit-progress-value {
  background: #D51D67;
}
progress::-moz-progress-bar {
  background: #D51D67;
}
progress.primary {
  color: #D51D67;
}
progress.primary::-webkit-progress-value {
  background: #D51D67;
}
progress.primary::-moz-progress-bar {
  background: #D51D67;
}
progress.primary-darken {
  color: #BF1A5C;
}
progress.primary-darken::-webkit-progress-value {
  background: #BF1A5C;
}
progress.primary-darken::-moz-progress-bar {
  background: #BF1A5C;
}
progress.secondary {
  color: #616FA0;
}
progress.secondary::-webkit-progress-value {
  background: #616FA0;
}
progress.secondary::-moz-progress-bar {
  background: #616FA0;
}
progress.secondary-darken {
  color: #576490;
}
progress.secondary-darken::-webkit-progress-value {
  background: #576490;
}
progress.secondary-darken::-moz-progress-bar {
  background: #576490;
}
progress.tertiary {
  color: #81BB27;
}
progress.tertiary::-webkit-progress-value {
  background: #81BB27;
}
progress.tertiary::-moz-progress-bar {
  background: #81BB27;
}
progress.tertiary-darken {
  color: #73A723;
}
progress.tertiary-darken::-webkit-progress-value {
  background: #73A723;
}
progress.tertiary-darken::-moz-progress-bar {
  background: #73A723;
}
progress.quaternary {
  color: #F2BBD1;
}
progress.quaternary::-webkit-progress-value {
  background: #F2BBD1;
}
progress.quaternary::-moz-progress-bar {
  background: #F2BBD1;
}
progress.success {
  color: #75AD01;
}
progress.success::-webkit-progress-value {
  background: #75AD01;
}
progress.success::-moz-progress-bar {
  background: #75AD01;
}
progress.warning {
  color: #F39721;
}
progress.warning::-webkit-progress-value {
  background: #F39721;
}
progress.warning::-moz-progress-bar {
  background: #F39721;
}
progress.alert {
  color: #EA2941;
}
progress.alert::-webkit-progress-value {
  background: #EA2941;
}
progress.alert::-moz-progress-bar {
  background: #EA2941;
}
progress.alert-lighten {
  color: #FDEAEC;
}
progress.alert-lighten::-webkit-progress-value {
  background: #FDEAEC;
}
progress.alert-lighten::-moz-progress-bar {
  background: #FDEAEC;
}
progress::-ms-fill {
  border: 0;
}

table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 4px;
}
thead,
tbody,
tfoot {
  border: 1px solid rgb(242.25, 242.25, 242.25);
  background-color: #FFFFFF;
}

caption {
  padding: 0.4444444444rem 0.5555555556rem 0.5555555556rem;
  font-weight: bold;
}

thead {
  background: #616FA0;
  color: #FFFFFF;
}

tfoot {
  background: rgb(242.25, 242.25, 242.25);
  color: #272C40;
}

thead tr,
tfoot tr {
  background: transparent;
}
thead th,
thead td,
tfoot th,
tfoot td {
  padding: 0.4444444444rem 0.5555555556rem 0.5555555556rem;
  font-weight: bold;
  text-align: left;
}

tbody th,
tbody td {
  padding: 0.4444444444rem 0.5555555556rem 0.5555555556rem;
}

tbody tr:nth-child(even) {
  border-bottom: 0;
  background-color: rgb(242.25, 242.25, 242.25);
}

table.unstriped tbody {
  background-color: #FFFFFF;
}
table.unstriped tbody tr {
  border-bottom: 0;
  border-bottom: 1px solid rgb(242.25, 242.25, 242.25);
  background-color: #FFFFFF;
}

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

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

table.hover thead tr:hover {
  background-color: rgb(92.6719367589, 106.3288537549, 154.1280632411);
}
table.hover tfoot tr:hover {
  background-color: rgb(237.15, 237.15, 237.15);
}
table.hover tbody tr:hover {
  background-color: rgb(249.9, 249.9, 249.9);
}
table.hover:not(.unstriped) tr:nth-of-type(even):hover {
  background-color: rgb(237.15, 237.15, 237.15);
}

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

.badge {
  display: inline-block;
  min-width: 2.1em;
  padding: 0.3em;
  border-radius: 50%;
  font-size: 0.6rem;
  text-align: center;
  background: #D51D67;
  color: #FFFFFF;
}
.badge.primary {
  background: #D51D67;
  color: #FFFFFF;
}
.badge.primary-darken {
  background: #BF1A5C;
  color: #FFFFFF;
}
.badge.secondary {
  background: #616FA0;
  color: #FFFFFF;
}
.badge.secondary-darken {
  background: #576490;
  color: #FFFFFF;
}
.badge.tertiary {
  background: #81BB27;
  color: #272C40;
}
.badge.tertiary-darken {
  background: #73A723;
  color: #272C40;
}
.badge.quaternary {
  background: #F2BBD1;
  color: #272C40;
}
.badge.success {
  background: #75AD01;
  color: #272C40;
}
.badge.warning {
  background: #F39721;
  color: #272C40;
}
.badge.alert {
  background: #EA2941;
  color: #FFFFFF;
}
.badge.alert-lighten {
  background: #FDEAEC;
  color: #272C40;
}

.breadcrumbs {
  margin: 0.5555555556rem 0;
  list-style: none;
}
.breadcrumbs::before, .breadcrumbs::after {
  display: table;
  content: " ";
  flex-basis: 0;
  order: 1;
}
.breadcrumbs::after {
  clear: both;
}
.breadcrumbs li {
  float: left;
  font-size: 0.8888888889rem;
  color: #D51D67;
  cursor: default;
}
.breadcrumbs li:not(:last-child)::after {
  position: relative;
  margin: 0 0.5rem;
  opacity: 1;
  content: "\E903";
  color: #CDCFD8;
}
.breadcrumbs a {
  color: #747885;
}
.breadcrumbs a:hover {
  text-decoration: underline;
}
.breadcrumbs .disabled {
  color: #CDCFD8;
  cursor: not-allowed;
}

.callout {
  position: relative;
  margin: 1rem 0 1rem 0;
  padding: 1rem;
  border: 1px solid #EA2941;
  border-radius: 4px;
  background-color: white;
  color: #272C40;
}
.callout > :first-child {
  margin-top: 0;
}
.callout > :last-child {
  margin-bottom: 0;
}
.callout.primary {
  background-color: rgb(250.1826446281, 219.6173553719, 231.9099173554);
  color: #272C40;
}
.callout.primary-darken {
  background-color: rgb(249.7341013825, 216.3158986175, 229.6831797235);
  color: #272C40;
}
.callout.secondary {
  background-color: rgb(231.3, 233.4, 240.75);
  color: #272C40;
}
.callout.secondary-darken {
  background-color: rgb(228.9116883117, 231.2668831169, 239.2383116883);
  color: #272C40;
}
.callout.tertiary {
  background-color: rgb(236.7159292035, 247.6486725664, 219.7513274336);
  color: #272C40;
}
.callout.tertiary-darken {
  background-color: rgb(235.101980198, 246.995049505, 216.804950495);
  color: #272C40;
}
.callout.quaternary {
  background-color: rgb(253.05, 244.8, 248.1);
  color: #272C40;
}
.callout.success {
  background-color: rgb(238.4896551724, 254.7103448276, 204.8896551724);
  color: #272C40;
}
.callout.warning {
  background-color: rgb(253.2, 239.4, 221.7);
  color: #272C40;
}
.callout.alert {
  background-color: rgb(251.85, 222.9, 226.5);
  color: #272C40;
}
.callout.alert-lighten {
  background-color: rgb(254.7, 251.85, 252.15);
  color: #272C40;
}
.callout.small {
  padding-top: 0.5rem;
  padding-right: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 0.5rem;
}
.callout.large {
  padding-top: 3rem;
  padding-right: 3rem;
  padding-bottom: 3rem;
  padding-left: 3rem;
}

.card {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  margin-bottom: 1.6666666667rem;
  border: none;
  border-radius: 4px;
  background: #FFFFFF;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.15);
  overflow: hidden;
  color: #272C40;
}
.card > :last-child {
  margin-bottom: 0;
}

.card-divider {
  display: flex;
  flex: 0 1 auto;
  padding: 1rem;
  background: #F5F5F5;
}
.card-divider > :last-child {
  margin-bottom: 0;
}

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

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

.has-tip {
  position: relative;
  display: inline-block;
  border-bottom: none;
  font-weight: bold;
  cursor: help;
}

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

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

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

.orbit {
  position: relative;
}

.orbit-container {
  position: relative;
  height: 0;
  margin: 0;
  list-style: none;
  overflow: hidden;
}

.orbit-slide {
  width: 100%;
  position: absolute;
}
.orbit-slide.no-motionui.is-active {
  top: 0;
  left: 0;
}

.orbit-figure {
  margin: 0;
}

.orbit-image {
  width: 100%;
  max-width: 100%;
  margin: 0;
}

.orbit-caption {
  position: absolute;
  bottom: 0;
  width: 100%;
  margin-bottom: 0;
  padding: 1rem;
  background-color: rgba(39, 44, 64, 0.5);
  color: #FFFFFF;
}

.orbit-next, .orbit-previous {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  padding: 1rem;
  color: #FFFFFF;
}
[data-whatinput=mouse] .orbit-next, [data-whatinput=mouse] .orbit-previous {
  outline: 0;
}
.orbit-next:hover, .orbit-previous:hover, .orbit-next:active, .orbit-previous:active, .orbit-next:focus, .orbit-previous:focus {
  background-color: rgba(39, 44, 64, 0.5);
}

.orbit-previous {
  left: 0;
}

.orbit-next {
  left: auto;
  right: 0;
}

.orbit-bullets {
  position: relative;
  margin-top: 0.8rem;
  margin-bottom: 0.8rem;
  text-align: center;
}
[data-whatinput=mouse] .orbit-bullets {
  outline: 0;
}
.orbit-bullets button {
  width: 1.2rem;
  height: 1.2rem;
  margin: 0.1rem;
  border-radius: 50%;
  background-color: #FFFFFF;
}
.orbit-bullets button:hover {
  background-color: #616FA0;
}
.orbit-bullets button.is-active {
  background-color: #616FA0;
}

.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 0.8rem;
}
.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.expanded li {
  flex: 1 1;
}
.menu.simple {
  align-items: center;
}
.menu.simple li + li {
  margin-left: 2rem;
}
.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;
  }
  .menu.medium-simple li {
    flex: 1 1;
  }
}
@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;
  }
  .menu.large-simple li {
    flex: 1 1;
  }
}
.menu.nested {
  margin-right: 0;
  margin-left: 1rem;
}
.menu.icons a {
  display: flex;
}
.menu.icon-top a, .menu.icon-right a, .menu.icon-bottom a, .menu.icon-left a {
  display: flex;
}
.menu.icon-left li a {
  flex-flow: row nowrap;
}
.menu.icon-left li a img,
.menu.icon-left li a i,
.menu.icon-left li a svg {
  margin-right: 0.25rem;
}
.menu.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 {
  margin-left: 0.25rem;
}
.menu.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 {
  align-self: stretch;
  margin-bottom: 0.25rem;
  text-align: center;
}
.menu.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 {
  align-self: stretch;
  margin-bottom: 0.25rem;
  text-align: center;
}
.menu .is-active > a {
  background: transparent;
  color: #FFFFFF;
}
.menu .active > a {
  background: transparent;
  color: #FFFFFF;
}
.menu.align-left {
  justify-content: flex-start;
}
.menu.align-right li {
  display: flex;
  justify-content: flex-end;
}
.menu.align-right li .submenu li {
  justify-content: flex-start;
}
.menu.align-right.vertical li {
  display: block;
  text-align: right;
}
.menu.align-right.vertical li .submenu li {
  text-align: right;
}
.menu.align-right .nested {
  margin-right: 1rem;
  margin-left: 0;
}
.menu.align-center li {
  display: flex;
  justify-content: center;
}
.menu.align-center li .submenu li {
  justify-content: flex-start;
}
.menu .menu-text {
  padding: 0.7rem 0.8rem;
  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;
}

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

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

.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 a {
  padding: 1.7777777778rem 0.8333333333rem;
}
[data-whatinput=mouse] .dropdown.menu a {
  outline: 0;
}
.dropdown.menu .is-active > a {
  background: #616FA0;
  color: #FFFFFF;
}
.no-js .dropdown.menu ul {
  display: none;
}
.dropdown.menu .nested.is-dropdown-submenu {
  margin-right: 0;
  margin-left: 0;
}
.dropdown.menu.vertical > li .is-dropdown-submenu {
  top: 0;
}
.dropdown.menu.vertical > li.opens-left > .is-dropdown-submenu {
  top: 0;
  right: 100%;
  left: auto;
}
.dropdown.menu.vertical > li.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 100%;
}
@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-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%;
  }
}
@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-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.align-right .is-dropdown-submenu.first-sub {
  top: 100%;
  right: 0;
  left: auto;
}

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

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

.is-dropdown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: 1;
  display: none;
  min-width: 40px;
  border: 0;
  background: #FFFFFF;
}
.dropdown .is-dropdown-submenu a {
  padding: 0.9rem 0.8rem 0.9rem 0.8rem;
}
.is-dropdown-submenu .is-dropdown-submenu {
  margin-top: 0;
}
.is-dropdown-submenu > li {
  width: 100%;
}
.is-dropdown-submenu.js-dropdown-active {
  display: block;
}

.sticky-container {
  position: relative;
}

.sticky {
  position: relative;
  z-index: 0;
  transform: translate3d(0, 0, 0);
}

.sticky.is-stuck {
  position: fixed;
  z-index: 5;
  width: 100%;
}
.sticky.is-stuck.is-at-top {
  top: 0;
}
.sticky.is-stuck.is-at-bottom {
  bottom: 0;
}

.sticky.is-anchored {
  position: relative;
  right: auto;
  left: auto;
}
.sticky.is-anchored.is-at-bottom {
  bottom: 0;
}

.top-bar {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  padding: 0.5rem;
  flex-wrap: wrap;
}
.top-bar,
.top-bar ul {
  background-color: transparent;
}
.top-bar ul ul {
  background-color: #D51D67;
}
.top-bar input {
  max-width: 200px;
  margin-right: 1rem;
}
.top-bar .input-group-field {
  width: 100%;
  margin-right: 0;
}
.top-bar input.button {
  width: auto;
}
.top-bar .top-bar-left,
.top-bar .top-bar-right {
  flex: 0 0 100%;
  max-width: 100%;
}
@media print, screen and (min-width: 64em) {
  .top-bar {
    flex-wrap: nowrap;
  }
  .top-bar .top-bar-left {
    flex: 1 1 auto;
    margin-right: auto;
  }
  .top-bar .top-bar-right {
    flex: 0 1 auto;
    margin-left: auto;
  }
}
@media screen and (max-width: 49.99875em) {
  .top-bar.stacked-for-medium {
    flex-wrap: wrap;
  }
  .top-bar.stacked-for-medium .top-bar-left,
  .top-bar.stacked-for-medium .top-bar-right {
    flex: 0 0 100%;
    max-width: 100%;
  }
}
@media screen and (max-width: 74.99875em) {
  .top-bar.stacked-for-large {
    flex-wrap: wrap;
  }
  .top-bar.stacked-for-large .top-bar-left,
  .top-bar.stacked-for-large .top-bar-right {
    flex: 0 0 100%;
    max-width: 100%;
  }
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media print, screen and (min-width: 40em) {
  .medium-order-1 {
    order: 1;
  }
  .medium-order-2 {
    order: 2;
  }
  .medium-order-3 {
    order: 3;
  }
  .medium-order-4 {
    order: 4;
  }
  .medium-order-5 {
    order: 5;
  }
  .medium-order-6 {
    order: 6;
  }
}
@media print, screen and (min-width: 64em) {
  .large-order-1 {
    order: 1;
  }
  .large-order-2 {
    order: 2;
  }
  .large-order-3 {
    order: 3;
  }
  .large-order-4 {
    order: 4;
  }
  .large-order-5 {
    order: 5;
  }
  .large-order-6 {
    order: 6;
  }
}
.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;
  }
}
.hide {
  display: none !important;
}

.invisible {
  visibility: hidden;
}

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

@media screen and (max-width: 0em), screen and (min-width: 20em) {
  .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 screen and (min-width: 40em) and (max-width: 49.99875em) {
  .hide-for-medium-only {
    display: none !important;
  }
}

@media screen and (max-width: 39.99875em), screen and (min-width: 50em) {
  .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 screen and (min-width: 64em) and (max-width: 74.99875em) {
  .hide-for-large-only {
    display: none !important;
  }
}

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

.show-for-sr,
.show-on-focus {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.show-on-focus:active, .show-on-focus:focus {
  position: static !important;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/* ==========================================================================
   Generic
   ========================================================================== */
.template {
  overflow: hidden;
}

a {
  color: #616FA0;
  text-decoration: underline;
  transition: color 0.2s;
}
a:hover {
  color: #D51D67;
}

h1 {
  color: #D51D67;
}

[class^=icon-], [class*=" icon-"] {
  font-size: 0.75em;
}

/* ==========================================================================
   Elements
   ========================================================================== */
/* ==========================================================================
   Objects
   ========================================================================== */
/* ==========================================================================
   Components
   ========================================================================== */
.c-blocks {
  background: #F5F5F5;
  padding: 4.1666666667rem 0 2.2222222222rem;
}
.c-blocks__column {
  margin-bottom: 1.6666666667rem;
}
.c-blocks__item {
  background: #FFFFFF;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  padding: 2.5rem 0.5555555556rem 1.1111111111rem;
  text-align: center;
  text-decoration: none;
  height: 100%;
  transition: box-shadow 0.2s;
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-grow: 1;
}
.c-blocks__item:hover {
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.4);
}
.c-blocks__icon {
  margin-bottom: 1.1111111111rem;
}
.c-blocks__icon img {
  max-height: 4.4444444444rem;
  height: 4.4444444444rem;
}
.c-blocks__text {
  flex-grow: 1;
}
.c-blocks__text p {
  color: #616FA0;
}

.c-breadcrumb {
  border-bottom: 1px solid #F5F5F5;
}
.c-breadcrumb a {
  text-decoration: none;
}
.c-breadcrumb li::after {
  font-family: "icomoon";
  line-height: 1;
  font-size: 0.75em;
}

.button {
  font-weight: bold;
  text-decoration: none;
}
.button--block {
  display: block;
  width: 100%;
}
.button--shadow {
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.3);
}
.button.tertiary {
  color: white;
}
.button.tertiary:hover {
  color: white;
}
.button.hollow.secondary:hover, .button.hollow:hover {
  color: white;
  background: #616FA0;
  border-color: #616FA0;
}
.button.hollow.primary:hover {
  color: white;
  background: #D51D67;
  border-color: #D51D67;
}
.button.hollow.tertiary:hover {
  color: white;
  background: #81BB27;
  border-color: #81BB27;
}

.cc-btn {
  text-decoration: none;
}

.c-card {
  text-decoration: none;
  transition: box-shadow 0.2s;
}
.c-card__image {
  height: 12.2222222222rem;
  background-position: center center;
  background-size: cover;
}
.c-card__title {
  color: #616FA0;
  font-weight: 600;
  transition: color 0.2s;
  white-space: nowrap;
  font-size: 0.8888888889rem;
}
.c-card--link:hover {
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.4);
}
.c-card--link:hover .c-card__title {
  color: #D51D67;
}
@media screen and (max-width: 39.9375em) {
  .c-card {
    max-width: 27.7777777778rem;
    margin-left: auto;
    margin-right: auto;
  }
}

.c-contact--gray {
  background: #F5F5F5;
}
.c-contact--gray input, .c-contact--gray textarea {
  background: #FFFFFF;
}
.c-contact__form {
  position: relative;
}
.c-contact__info p, .c-contact__info h4 {
  margin-bottom: 0;
}
.c-contact__info h5 {
  color: #D51D67;
}
.c-contact__info img {
  max-width: 9.4444444444rem;
}
.c-contact__info a {
  color: #272C40;
}
.c-contact__info a:hover {
  color: #D51D67;
}
.c-contact__info__column {
  margin-bottom: 1.6666666667rem;
}
.c-contact legend {
  font-size: 0.8888888889rem;
}

.c-form__send {
  display: none;
  position: absolute;
  width: 100%;
  top: 2.7777777778rem;
}
.c-form__send__text {
  margin-bottom: 1.1111111111rem;
}
.c-form__send__text h5 {
  color: #81BB27;
}

.c-content {
  background: white;
}
.c-content--item {
  margin: 1.6666666667rem 0 0 0;
}
.c-content--image, .c-content--video {
  margin: 0 0 1.6666666667rem 0;
}
.c-content p {
  color: #81BB27;
}
.c-content-detail--item {
  margin: 1.6666666667rem 0 0 0;
}
.c-content-detail--item .c-media {
  margin: 0 0 1.6666666667rem 0;
}

.c-counter {
  background-color: #616FA0;
  border-radius: 4px;
  display: flex;
  flex-direction: column;
  color: white;
  padding: 0 1.1111111111rem;
}
@media print, screen and (min-width: 50em) {
  .c-counter {
    flex-direction: row;
    padding: 0.5555555556rem 0;
  }
}
.c-counter__item {
  flex: 1 0;
  padding: 1.6666666667rem 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.c-counter__item:not(:last-child) {
  border-bottom: 2px solid white;
}
@media print, screen and (min-width: 50em) {
  .c-counter__item {
    padding: 0.8333333333rem;
    height: 7.2222222222rem;
  }
  .c-counter__item:not(:last-child) {
    border-right: 2px solid white;
    border-bottom: 0;
  }
}
.c-counter__number {
  font-size: 2.7777777778rem;
  font-weight: bold;
}
.c-counter__title {
  font-weight: 600;
}
.c-counter__title a {
  color: white;
  text-decoration: none;
}
.c-counter__title a:hover {
  opacity: 0.8;
}

.c-checkbox {
  position: relative;
}
.c-checkbox input[type=checkbox] {
  display: none;
}
.c-checkbox input[type=checkbox] + label {
  position: relative;
  width: 100%;
  font-size: 1rem;
  padding: 0.3333333333rem 0.5555555556rem 0.3333333333rem 2.5rem;
  color: #616FA0;
  font-weight: 600;
  border-radius: 4px;
  border: 1px solid #CDCFD8;
  margin: 0 0 0.5555555556rem 0;
}
.c-checkbox input[type=checkbox] + label:hover:before {
  background: #CDCFD8;
}
.c-checkbox input[type=checkbox] + label:before {
  position: absolute;
  left: 17px;
  top: 15px;
  content: "";
  width: 0.7777777778rem;
  height: 0.7777777778rem;
  border: 2px solid #FFFFFF;
  box-shadow: 0px 0px 0px 1px #CDCFD8;
}
.c-checkbox input[type=checkbox] + label.is-invalid-label {
  border-color: #EA2941;
  background-color: #FDEAEC;
  color: #EA2941;
}
.c-checkbox input[type=checkbox]:checked + label {
  border: 1px solid #616FA0;
}
.c-checkbox input[type=checkbox]:checked + label:before {
  background: #616FA0;
  border: 2px solid #FFFFFF;
  box-shadow: 0px 0px 0px 1px #CDCFD8;
}
.c-checkbox--clean input[type=checkbox] + label {
  border: none;
  font-size: 0.8888888889rem;
  color: #181B27;
  font-weight: normal;
  padding: 0.3333333333rem 0.5555555556rem 0.3333333333rem 1.9444444444rem;
}
.c-checkbox--clean input[type=checkbox] + label:before {
  left: 2px;
  top: 14px;
}
.c-checkbox--clean input[type=checkbox]:checked + label {
  border: none;
}
.c-checkbox__badge {
  float: right;
  font-size: 0.8888888889rem;
  color: #747885;
  margin: 0.1111111111rem 0 0 0.8333333333rem;
}
.c-checkbox__small-badge {
  width: 16px;
  min-width: auto;
  height: 16px;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-right: 5px;
}
.c-checkbox__price {
  float: right;
  font-size: 0.8888888889rem;
  color: #747885;
  margin: 0.1111111111rem 0 0 0.8333333333rem;
}

.c-header--small {
  height: 2.7777777778rem;
  background-position: center center;
  background-image: url("/assets/dist/img/header-background.jpg");
}
.c-header--small--primary {
  background-image: url("/assets/dist/img/header-primary.png");
}
.c-header--small--tertiary {
  background-image: url("/assets/dist/img/header-success.png");
}
.c-header--home {
  background: #F2BBD1;
  position: relative;
}
.c-header--home__secondary {
  background: #D2D9F2;
}
@media print, screen and (min-width: 64em) {
  .c-header--home {
    height: 30.5555555556rem;
  }
}
.c-header--home__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media print, screen and (min-width: 64em) {
  .c-header--home__content {
    padding-right: 5.5555555556rem;
  }
  .c-header--home__content h1 {
    font-size: 2.7777777778rem;
  }
}
@media screen and (min-width: 50em) {
  .c-header--home__content {
    height: 30.5555555556rem;
  }
}
@media screen and (max-width: 49.99875em) {
  .c-header--home__content {
    flex: 0 0 100%;
    max-width: 100%;
    padding-top: 1.6666666667rem;
    padding-bottom: 1.6666666667rem;
  }
}
.c-header--home__content h1, .c-header--home__content p {
  color: #272C40;
}
.c-header--home__image {
  height: 30.5555555556rem;
  background-position: center center;
  background-size: cover;
  display: block;
  content: "";
  position: absolute;
  width: 50%;
  top: 0;
  right: 0;
}
@media screen and (max-width: 49.99875em) {
  .c-header--home__image {
    height: 18.8888888889rem;
    width: 100%;
    position: relative;
  }
}

.c-housetest {
  min-height: 33.3333333333rem;
  background: #F5F5F5;
}
.c-housetest h4, .c-housetest h5 {
  font-family: "Open Sans", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: bold;
}
.c-housetest h4 {
  font-size: 1.3333333333rem;
}
.c-housetest h5 {
  font-size: 1.1111111111rem;
}
.c-housetest__baseinfo-question {
  padding-bottom: 2.2222222222rem;
  border-bottom: 1px solid #F5F5F5;
}
.c-housetest__baseinfo-question:last-of-type {
  border: none;
}
.c-housetest__title {
  margin: 1.6666666667rem 0;
}
.c-housetest__row {
  padding: 4.4444444444rem 0;
}
@media screen and (max-width: 39.9375em) {
  .c-housetest__row {
    flex-direction: column-reverse;
    padding: 1.1111111111rem 0 4.4444444444rem 0;
  }
  .c-housetest__row .c-housetest__card {
    margin-top: 4.4444444444rem;
  }
}
.c-housetest__answers {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (max-width: 62.5em) {
  .c-housetest__answers {
    flex-direction: column;
  }
}
.c-housetest__radio-wrapper {
  display: flex;
  justify-content: center;
}
.c-housetest__wrapper {
  margin: 2.2222222222rem 0 2.7777777778rem 0;
  background: #FFFFFF;
  padding: 2.2222222222rem 1.1111111111rem;
}
@media print, screen and (min-width: 40em) {
  .c-housetest__wrapper {
    padding: 2.2222222222rem 3.3333333333rem;
  }
}
.c-housetest__wrapper fieldset {
  min-inline-size: auto;
}
.c-housetest__progress {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 2.3333333333rem;
  line-height: 1;
}
.c-housetest__progress .progress-questions {
  font-size: 1.1111111111rem;
  font-weight: bold;
  color: #D51D67;
}
@media screen and (max-width: 37.5em) {
  .c-housetest__progress .progress-questions {
    font-size: 0.8888888889rem;
  }
}
.c-housetest__progress .c-link {
  font-size: 1.1111111111rem;
}
@media screen and (max-width: 37.5em) {
  .c-housetest__progress .prev-question, .c-housetest__progress .next-question {
    display: none;
  }
  .c-housetest__progress .c-link .icon:before {
    font-size: 2em;
  }
}
.c-housetest__table {
  overflow: scroll;
  display: block;
  white-space: nowrap;
}
.c-housetest__card h5 {
  font-family: "Special Elite", cursive;
  font-weight: 400;
}
.c-housetest__svg-wrapper {
  display: flex;
  flex-wrap: wrap;
}
.c-housetest__svg-wrapper a {
  outline: 0;
}
.c-housetest__svg-wrapper a:focus, .c-housetest__svg-wrapper a:hover {
  color: #616FA0;
}
.c-housetest__svg {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-right: 2.7777777778rem;
  text-decoration: none;
}
@media screen and (max-width: 34.9375em) {
  .c-housetest__svg {
    width: calc(50% - 50px);
    margin-bottom: 1.6666666667rem;
  }
}
.c-housetest__svg:hover {
  color: #616FA0;
  opacity: 0.8;
}
.c-housetest__svg span {
  margin-top: 0.2777777778rem;
  font-size: 0.8888888889rem;
}
.c-housetest__svg img {
  height: 4.4444444444rem;
  width: 4.4444444444rem;
}
.c-housetest select {
  font-size: 1rem;
  font-weight: 600;
  color: #616FA0;
  background: white;
  border-color: #CDCFD8;
  margin-bottom: 0.5555555556rem;
  padding: 0.5rem 0.5555555556rem 0.5rem 0.8333333333rem;
  height: auto;
}
.c-housetest select:focus {
  border-color: #616FA0;
}
.c-housetest select::-moz-placeholder {
  color: #CDCFD8;
}
.c-housetest select::placeholder, .c-housetest select:disabled {
  color: #CDCFD8;
}
.c-housetest .c-select {
  position: relative;
}
.c-housetest .c-select:after {
  content: "\E901";
  font-family: "icomoon";
  color: #616FA0;
  font-size: 1.2222222222rem;
  position: absolute;
  right: 10px;
  top: 8px;
  pointer-events: none;
}
.c-housetest .c-select .is-invalid-input {
  color: #EA2941;
}
.c-housetest__calculate fieldset {
  min-inline-size: auto;
}
.c-housetest__calculate table input {
  margin: 0;
  padding: 5px 10px;
  width: 70px;
  text-align: center;
}
.c-housetest__calculate table td {
  padding: 6px 10px;
  height: 51px;
}
.c-housetest #rental-warning div.h4 {
  margin-bottom: 0;
}
.c-housetest #rental-warning p {
  font-size: 0.8888888889rem;
  margin-bottom: 0;
}

.table__wrapper {
  overflow-x: auto;
  margin: 20px 0;
}
.table__wrapper table {
  white-space: nowrap;
}

.select2-container--default .select2-dropdown .select2-results {
  max-height: 400px;
  min-height: 200px;
}
.select2-container--default .select2-dropdown .select2-results > .select2-results__options {
  max-height: 400px;
}

.c-icon__large {
  color: white;
  font-size: 4.4444444444rem;
}

.c-input--secondary {
  background: #FFFFFF;
  color: #616FA0;
  font-size: 1rem;
  border: 1px solid #CDCFD8;
  font-weight: 600;
}
.c-input--secondary::-moz-placeholder {
  color: #CDCFD8;
}
.c-input--secondary::placeholder {
  color: #CDCFD8;
}

.c-footer {
  background: #616FA0;
  padding: 2.7777777778rem 0 0;
  color: #FFFFFF;
  font-size: 0.8888888889rem;
}
.c-footer__column {
  margin-bottom: 1.9444444444rem;
}
.c-footer a {
  color: #FFFFFF;
}
.c-footer a:hover {
  text-decoration: underline;
}
.c-footer__title {
  margin-bottom: 0.8333333333rem;
}
.c-footer__title a {
  text-decoration: none;
  font-weight: bold;
}
.c-footer__menu li a {
  padding: 0.4444444444rem 0;
  display: inline-block;
}
.c-footer__menu--bold {
  font-weight: bold;
}
.c-footer__menu--social a {
  font-size: 2rem;
}
.c-footer__menu--social a:hover {
  text-decoration: none;
  opacity: 0.8;
}

.c-footer__bottom {
  font-size: 0.8888888889rem;
  color: white;
}
.c-footer__bottom__image img {
  max-height: 3.8888888889rem;
}
.c-footer__bottom__logo {
  margin: 0 0.5555555556rem;
}
.c-footer__bottom .logo-atrive {
  width: 2.2222222222rem;
}
.c-footer__bottom .logo-geef {
  width: 3.3333333333rem;
}

.c-label {
  font-weight: 600;
  margin-bottom: 0.5555555556rem;
}
.c-label--link {
  cursor: pointer;
  text-decoration: none;
}
.c-label--ghost {
  background: white !important;
}
.c-label.success {
  border: 1px solid #75AD01;
  color: #75AD01 !important;
}
.c-label.success:hover {
  opacity: 0.8;
}

ul {
  list-style: none;
}

.c-list__icon {
  padding: 0;
  margin-left: 0;
}
.c-list__icon li {
  padding-left: 1.5555555556rem;
  position: relative;
  margin-bottom: 0.5555555556rem;
}
.c-list__icon li:before {
  content: "\2022   ";
  font-family: "icomoon";
  position: absolute;
  left: 0;
  top: 8px;
  font-size: 0.7777777778rem;
  line-height: 1;
  color: #616FA0;
}
.c-list__icon-checkmark li:before {
  content: "\E909";
}
.c-list__icon-housetest li:before {
  font-size: 26px;
  top: -1px;
}
.c-list__icon--primary li:before {
  color: #D51D67;
}
.c-list__icon--primary-darken li:before {
  color: #BF1A5C;
}
.c-list__icon--secondary li:before {
  color: #616FA0;
}
.c-list__icon--secondary-darken li:before {
  color: #576490;
}
.c-list__icon--tertiary li:before {
  color: #81BB27;
}
.c-list__icon--tertiary-darken li:before {
  color: #73A723;
}
.c-list__icon--quaternary li:before {
  color: #F2BBD1;
}
.c-list__icon--success li:before {
  color: #75AD01;
}
.c-list__icon--warning li:before {
  color: #F39721;
}
.c-list__icon--alert li:before {
  color: #EA2941;
}
.c-list__icon--alert-lighten li:before {
  color: #FDEAEC;
}

.c-list__icon-checkmark {
  margin: 0;
  padding: 0;
}
.c-list__icon-checkmark li {
  padding: 0 0 1.1111111111rem 1.5555555556rem;
  margin: 0;
  position: relative;
}
.c-list__icon-checkmark li:before {
  content: "\E909";
  font-family: "icomoon";
  position: absolute;
  left: 0;
  top: 8px;
  font-size: 0.7777777778rem;
  line-height: 1;
  color: #D51D67;
}

.c-logo--top-bar img {
  margin-top: 0.5555555556rem;
  height: 2.2222222222rem;
}
@media print, screen and (min-width: 64em) {
  .c-logo--top-bar img {
    margin-top: 0;
    height: 3.5555555556rem;
  }
}

.c-link {
  display: inline-block;
  font-weight: 600;
  font-size: 0.8888888889rem;
  text-decoration: none;
}
.c-link--primary {
  color: #D51D67;
}
.c-link--primary:hover {
  color: rgb(168.1115702479, 22.8884297521, 81.2933884298);
}
.c-link--primary-darken {
  color: #BF1A5C;
}
.c-link--primary-darken:hover {
  color: rgb(146.1105990783, 19.8894009217, 70.3778801843);
}
.c-link--secondary {
  color: #616FA0;
}
.c-link--secondary:hover {
  color: rgb(77.3517786561, 88.7509881423, 128.6482213439);
}
.c-link--secondary-darken {
  color: #576490;
}
.c-link--secondary-darken:hover {
  color: rgb(67.7922077922, 77.9220779221, 112.2077922078);
}
.c-link--tertiary {
  color: #81BB27;
}
.c-link--tertiary:hover {
  color: rgb(99.889380531, 144.8008849558, 30.1991150442);
}
.c-link--tertiary-darken {
  color: #73A723;
}
.c-link--tertiary-darken:hover {
  color: rgb(85.9653465347, 124.8366336634, 26.1633663366);
}
.c-link--quaternary {
  color: #F2BBD1;
}
.c-link--quaternary:hover {
  color: rgb(233.8148148148, 144.1851851852, 180.037037037);
}
.c-link--success {
  color: #75AD01;
}
.c-link--success:hover {
  color: rgb(82.7068965517, 122.2931034483, 0.7068965517);
}
.c-link--warning {
  color: #F39721;
}
.c-link--warning:hover {
  color: rgb(213.4615384615, 125, 11.5384615385);
}
.c-link--alert {
  color: #EA2941;
}
.c-link--alert:hover {
  color: rgb(203.9829787234, 20.0170212766, 42.8936170213);
}
.c-link--alert-lighten {
  color: #FDEAEC;
}
.c-link--alert-lighten:hover {
  color: rgb(248.5652173913, 187.4347826087, 193.8695652174);
}

.c-main-nav__trigger {
  font-size: 1.5555555556rem;
  color: #D51D67;
  cursor: pointer;
  outline: 0;
}
@media screen and (max-width: 74.99875em) {
  .c-main-nav__item--print {
    display: none;
  }
  .c-main-nav__item > span a {
    font-size: 0.7777777778rem;
  }
  .c-main-nav__item[aria-expanded=true] .icon-cheveron-down::before {
    content: "\E904";
  }
}
@media screen and (max-width: 63.9375em) {
  .c-main-nav {
    display: none !important;
  }
  .c-main-nav__list {
    margin-top: 1.1111111111rem;
  }
  .c-main-nav__item {
    position: relative;
  }
  .c-main-nav__item > span {
    display: inline-block;
  }
  .c-main-nav__item > span a {
    font-size: 1rem;
    font-weight: bold;
  }
  .c-main-nav__item > a {
    display: inline-block;
    font-weight: bold;
  }
  .c-main-nav__item .icon-cheveron-down {
    font-size: 1.3333333333rem;
  }
  .c-main-nav__item .icon-cheveron-down::before {
    top: 12px;
    position: absolute;
  }
}
@media screen and (min-width: 64em) {
  .c-main-nav__list {
    align-items: center;
  }
  .c-main-nav__item a {
    color: #616FA0;
    font-size: 0.8888888889rem;
    font-weight: bold;
    transition: all 0.2s ease-in-out;
  }
  .c-main-nav__item a:hover {
    background: #616FA0;
    color: #FFFFFF;
  }
  .c-main-nav__item--svg {
    max-height: 4.4444444444rem;
    overflow: hidden;
  }
  .c-main-nav__item--svg img {
    height: 1.3888888889rem;
    width: 1.3888888889rem;
  }
  .c-main-nav__item--svg a {
    padding: 0.5555555556rem 0.8333333333rem !important;
  }
  .c-main-nav__item--svg a:hover {
    background: #FFFFFF;
    opacity: 0.8;
  }
  .c-main-nav__item--svg button {
    cursor: pointer;
    padding: 0.5555555556rem 0.8333333333rem;
  }
  .c-main-nav__item--svg button:hover {
    opacity: 0.8;
  }
  .c-main-nav__item--business a {
    background: #616FA0;
    color: white;
    padding: 1.7777777778rem 0.8333333333rem;
  }
  .c-main-nav__item--business a:hover {
    color: #616FA0;
    background: white;
  }
  .c-main-nav__item.is-active .icon-cheveron-down::before {
    content: "\E904";
  }
}
.c-main-nav .is-dropdown-submenu {
  width: 12.2222222222rem;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.15);
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  overflow: hidden;
}

.c-media--padding-top {
  padding-top: 2.7777777778rem;
}
.c-media--gray {
  background: #F5F5F5;
}
.c-media__image__wrapper {
  border-radius: 4px;
  overflow: hidden;
}
@media screen and (max-width: 49.99875em) {
  .c-media__image__wrapper {
    flex-direction: column-reverse;
  }
}
.c-media__image__img {
  padding-right: 0 !important;
  min-width: 20.5555555556rem;
  min-height: 17.7777777778rem;
  background-size: cover;
  background-position: center center;
}
@media screen and (max-width: 49.99875em) {
  .c-media__image__img {
    min-height: 18rem;
  }
}
.c-media__image__content {
  background: #F5F5F5;
  color: #616FA0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 1.6666666667rem;
}
.c-media__image__content .c-link {
  align-self: flex-start;
}
.c-media__image--reverse .c-media__image__wrapper {
  flex-direction: row-reverse;
}
@media screen and (max-width: 49.99875em) {
  .c-media__image--reverse .c-media__image__wrapper {
    flex-direction: column-reverse;
  }
}
.c-media__icon__image img {
  max-width: 2.7777777778rem;
}
.c-media__icon__text p {
  color: #616FA0;
}

form.multi-form {
  /* fieldset.active:not(:last-of-type) .buttons {
  	.submit {
  		display: none;
  	}
  } */
  /* fieldset.active:last-of-type .buttons {
  	.next {
  		display: none;
  	}
  } */
}
form.multi-form fieldset.skip,
form.multi-form fieldset:not(.active) {
  display: none;
}
form.multi-form fieldset .buttons .submit {
  display: none;
}
form.multi-form fieldset.active:first-of-type .buttons .prev {
  display: none;
}

.c-image {
  padding-right: 1.1111111111rem;
}

.c-price-table {
  background-color: #F5F5F5;
}
.c-price-table__item {
  background: white;
  border-radius: 4px;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.15);
  height: 100%;
  display: flex;
  flex-direction: column;
}
.c-price-table__title {
  background-color: #616FA0;
  color: #FFFFFF;
  border-bottom: 0;
  padding: 1.1111111111rem 1.1111111111rem 0.5555555556rem;
}
.c-price-table__title h2 {
  color: white;
  margin: 0;
}
.c-price-table__body {
  padding: 1.1111111111rem 1.6666666667rem 0 1.6666666667rem;
}
.c-price-table__footer {
  padding: 1.1111111111rem 0;
  margin: auto 1.6666666667rem 0;
  border-top: 1px solid #CDCFD8;
}
.c-price-table__footer p {
  margin: 0;
}
@media print, screen and (min-width: 64em) {
  .c-price-table__content > p {
    min-height: 3.1111111111rem;
  }
}
@media screen and (max-width: 74.99875em) {
  .c-price-table__column {
    margin-bottom: 2.2222222222rem;
  }
}
.c-price-table ul {
  margin: 0;
  padding: 0;
}
.c-price-table ul li {
  padding: 0 0 1.1111111111rem 1.5555555556rem;
  margin: 0;
  position: relative;
}
.c-price-table ul li:before {
  content: "\E909";
  color: #D51D67;
  font-family: "icomoon";
  position: absolute;
  left: 0;
  top: 8px;
  font-size: 0.7777777778rem;
  line-height: 1;
}

@media screen and (max-width: 39.9375em) {
  .c-product__card {
    margin-top: 2.2222222222rem;
  }
}
@media screen and (max-width: 39.9375em) {
  .c-product__row {
    flex-direction: column-reverse;
  }
}

.c-news {
  background-image: linear-gradient(#81BB27, transparent);
}
.c-news--item {
  box-shadow: 0 2px 13px 0 rgba(0, 0, 0, 0.4);
  margin: 1.6666666667rem 0;
}
.c-news--content {
  padding: 1.1111111111rem 1.6666666667rem;
  background: white;
}
.c-news--content p {
  color: #81BB27;
}
.c-news--date {
  color: #747885;
  font-size: 0.7777777778rem;
  margin-bottom: 0.8333333333rem;
}
.c-news--pagination {
  list-style-type: none;
  margin: 0;
  padding: 0;
  text-align: center;
}
.c-news--pagination li {
  display: inline-block;
}
.c-news--pagination li a {
  display: inline-block;
  color: white;
  background-color: #D51D67;
  padding: 0.2222222222rem 0.6666666667rem;
}
.c-news--pagination li a:hover {
  background-color: #616FA0;
}
.c-news--pagination li a.active {
  background-color: #616FA0;
}
.c-news--pagination li a.active:hover {
  background-color: #D51D67;
}

.c-news-detail {
  background: white;
}
.c-news-detail--item {
  margin: 1.6666666667rem 0 0 0;
}
.c-news-detail--image {
  margin: 0 0 1.6666666667rem 0;
}
.c-news-detail p {
  color: #81BB27;
}

.c-radio input[type=radio] {
  display: none;
}
.c-radio input[type=radio] + label {
  position: relative;
  width: 100%;
  font-size: 1rem;
  padding: 0.3333333333rem 0.5555555556rem 0.3333333333rem 2.5rem;
  color: #616FA0;
  font-weight: 600;
  border-radius: 4px;
  border: 1px solid #CDCFD8;
  margin: 0 0 0.5555555556rem 0;
}
.c-radio input[type=radio] + label:hover:before {
  background: #CDCFD8;
}
.c-radio input[type=radio] + label:before {
  position: absolute;
  left: 17px;
  top: 15px;
  content: "";
  width: 0.7777777778rem;
  height: 0.7777777778rem;
  border-radius: 50%;
  border: 2px solid #FFFFFF;
  box-shadow: 0px 0px 0px 1px #CDCFD8;
}
.c-radio input[type=radio] + label.is-invalid-label {
  border-color: #EA2941;
  background-color: #FDEAEC;
  color: #EA2941;
}
.c-radio input[type=radio]:checked + label {
  border: 1px solid #616FA0;
}
.c-radio input[type=radio]:checked + label:before {
  background: #616FA0;
  border: 2px solid #FFFFFF;
  box-shadow: 0px 0px 0px 1px #CDCFD8;
}
.c-radio--clean input[type=radio] + label {
  border: none;
  font-size: 0.8888888889rem;
  color: #181B27;
  font-weight: normal;
  padding: 0.3333333333rem 0.5555555556rem 0.3333333333rem 1.9444444444rem;
  margin: 0;
}
.c-radio--clean input[type=radio] + label:before {
  left: 2px;
  top: 14px;
}
.c-radio--clean input[type=radio]:checked + label {
  border: none;
}
.c-radio--clean input[type=radio]:checked + label:before {
  background: #616FA0;
}
.c-radio__rect input[type=radio] {
  display: none;
}
.c-radio__rect input[type=radio] + label {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  background: #FFFFFF;
  width: 9.4444444444rem;
  height: 9.4444444444rem;
  margin: 0 0.5555555556rem;
  border-radius: 4px;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.15);
}
.c-radio__rect input[type=radio] + label:hover {
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.4);
}
.c-radio__rect input[type=radio] + label p {
  color: #616FA0;
  font-weight: bold;
  font-size: 0.8888888889rem;
  margin: 0.2777777778rem 0 0 0;
}
@media screen and (max-width: 37.5em) {
  .c-radio__rect input[type=radio] + label {
    margin: 0 0.2777777778rem;
    width: 5rem;
    height: 5rem;
  }
  .c-radio__rect input[type=radio] + label img {
    width: 2.7777777778rem;
    height: 2.7777777778rem;
  }
  .c-radio__rect input[type=radio] + label p {
    font-size: 0.6666666667rem;
  }
}
.c-radio__rect input[type=radio]:checked + label {
  border: 3px solid #616FA0;
}
.c-radio__rect.small input[type=radio] + label {
  height: 2.7777777778rem;
  min-width: 7.2222222222rem;
  width: auto;
  margin: 0.5555555556rem 1.1111111111rem 0.5555555556rem 0;
}
.c-radio__rect.small input[type=radio] + label p {
  margin: 0;
  padding: 0 0.8333333333rem;
  font-size: 0.8888888889rem;
}
.c-radio__rect.small input[type=radio]:checked + label {
  background: #616FA0;
  border: none;
}
.c-radio__rect.small input[type=radio]:checked + label p {
  color: #FFFFFF;
}

.select__transparent {
  background-color: transparent;
  color: white;
  font-weight: 500;
  font-size: 1.1111111111rem;
  height: auto;
  border: 1px solid #D51D67;
}
.select__transparent:focus {
  background-color: transparent;
  border: 1px solid #D51D67;
  box-shadow: 0 0 0.2777777778rem #D51D67;
}

.select2 {
  width: 100% !important;
}
.select2-selection {
  height: 2.6111111111rem !important;
  border-color: #CDCFD8 !important;
}
.select2-selection__rendered {
  font-weight: 600;
  color: #616FA0 !important;
  padding-left: 0.8333333333rem !important;
  line-height: 2.6111111111rem !important;
}
.select2-selection__arrow {
  display: none;
}
.select2-search__field {
  margin-bottom: 0.2777777778rem !important;
  background: #F5F5F5;
  padding-left: 0.5555555556rem !important;
}
.select2.is-invalid-input + .select2-container .select2-selection--single {
  background: #FDEAEC;
  border: 1px solid #EA2941 !important;
}
.select2.is-invalid-input + .select2-container .select2-selection__rendered {
  color: #EA2941 !important;
}

.c-testimonial--item {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 27.7777777778rem;
  width: 100%;
}
@media screen and (max-width: 74.99875em) {
  .c-testimonial--background {
    background-size: 200% !important;
    background-repeat: no-repeat;
    background-position: left center !important;
  }
}
.c-testimonial--content {
  padding: 2.2222222222rem 3.8888888889rem 1.1111111111rem;
  margin: 1.3888888889rem;
  background: rgba(129, 187, 39, 0.8);
  max-width: 28.8888888889rem;
  color: white;
}
@media screen and (max-width: 49.99875em) {
  .c-testimonial--content {
    padding: 1.6666666667rem;
  }
}
.c-testimonial--content h3 {
  border-bottom: 3px solid #616FA0;
  margin: 0;
  padding-bottom: 1.1111111111rem;
}
.c-testimonial--name {
  margin-top: 0.5555555556rem;
}
.c-testimonial .orbit-bullets button {
  cursor: pointer;
}
@media screen and (max-width: 74.99875em) {
  .c-testimonial--columns {
    padding: 0;
  }
}
.c-testimonial--bullets {
  position: absolute;
  bottom: 1.1111111111rem;
  width: 100%;
}
.c-testimonial .media-image img {
  width: 1170px;
  height: 500px;
}

.c-text ul,
.c-media ul {
  padding: 0;
  margin-left: 0;
}
.c-text ul li,
.c-media ul li {
  margin-bottom: 0.5555555556rem;
  padding-left: 1.5555555556rem;
  position: relative;
}
.c-text ul li:before,
.c-media ul li:before {
  content: "\2022   ";
  position: absolute;
  left: 0;
  top: -2px;
  font-size: 1.7777777778rem;
  line-height: 1;
  color: #616FA0;
}

.redactor-toolbar > li::before {
  display: none;
}

.tooltip {
  box-shadow: 0px 0px 10px #9c9c9c;
}
.tooltip img {
  max-width: 150px;
}

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

.c-top-bar {
  width: 100%;
  height: 60px;
  background: #FFFFFF;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.15);
  z-index: 10000;
}
@media print, screen and (min-width: 64em) {
  .c-top-bar {
    height: 80px;
  }
}
@media print, screen and (min-width: 64em) {
  .c-top-bar__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 80px;
  }
}
@media screen and (max-width: 63.9375em) {
  .c-top-bar.is-open {
    background: #616FA0;
    position: fixed;
    height: 100vh;
    width: 100%;
  }
  .c-top-bar.is-open .c-main-nav {
    display: block !important;
  }
  .c-top-bar.is-open .c-main-nav__item a {
    color: white;
  }
  .c-top-bar.is-open .c-main-nav__trigger {
    color: white;
  }
  .c-top-bar.is-open .c-main-nav__trigger .icon::before {
    content: "\E905";
  }
}
.c-top-bar .menu-icon__wrapper {
  position: fixed;
  z-index: 9;
  right: 20px;
  top: 15px;
}
@media screen and (min-width: 64em) {
  .c-top-bar .menu-icon__wrapper {
    display: none;
  }
}

.c-usp-block h2 {
  color: #D51D67;
}
.c-usp-block__wrapper {
  background: #F5F5F5;
  padding: 2.2222222222rem 1.1111111111rem 1.6666666667rem;
  border-radius: 4px;
}
.c-usp-block__inner {
  display: inline-block;
}
.c-usp-block__text {
  max-width: 31.6666666667rem;
}

.c-video {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.c-video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* ==========================================================================
   Utilities
   ========================================================================== */
.text-align-center {
  text-align: center;
}

.text-align-left {
  text-align: left;
}

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

.float-left {
  float: left;
}

.float-right {
  float: right;
}

.font-primary {
  font-family: "Open Sans", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
}

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

.color-primary {
  color: #D51D67;
}

.color-primary-darken {
  color: #BF1A5C;
}

.color-secondary {
  color: #616FA0;
}

.color-secondary-darken {
  color: #576490;
}

.color-tertiary {
  color: #81BB27;
}

.color-tertiary-darken {
  color: #73A723;
}

.color-quaternary {
  color: #F2BBD1;
}

.color-success {
  color: #75AD01;
}

.color-warning {
  color: #F39721;
}

.color-alert {
  color: #EA2941;
}

.color-alert-lighten {
  color: #FDEAEC;
}

.backgroundcolor-primary {
  background: #D51D67;
}

.backgroundcolor-primary-darken {
  background: #BF1A5C;
}

.backgroundcolor-secondary {
  background: #616FA0;
}

.backgroundcolor-secondary-darken {
  background: #576490;
}

.backgroundcolor-tertiary {
  background: #81BB27;
}

.backgroundcolor-tertiary-darken {
  background: #73A723;
}

.backgroundcolor-quaternary {
  background: #F2BBD1;
}

.backgroundcolor-success {
  background: #75AD01;
}

.backgroundcolor-warning {
  background: #F39721;
}

.backgroundcolor-alert {
  background: #EA2941;
}

.backgroundcolor-alert-lighten {
  background: #FDEAEC;
}

.color-black {
  color: #272C40 !important;
}

/* ==========================================================================
   Paddings
   ========================================================================== */
.no-padding {
  padding: 0 !important;
}

.no-padding-b {
  padding-bottom: 0 !important;
}

.no-padding-t {
  padding-top: 0 !important;
}

.no-padding-l {
  padding-left: 0 !important;
}

.no-padding-r {
  padding-right: 0 !important;
}

.padding-10 {
  padding: 0.5555555556rem;
}

.padding-v-10 {
  padding-top: 0.5555555556rem;
  padding-bottom: 0.5555555556rem;
}

.padding-b-10 {
  padding-bottom: 0.5555555556rem;
}

.padding-t-10 {
  padding-top: 0.5555555556rem;
}

.padding-h-10 {
  padding-left: 0.5555555556rem;
  padding-right: 0.5555555556rem;
}

.padding-l-10 {
  padding-left: 0.5555555556rem;
}

.padding-r-10 {
  padding-right: 0.5555555556rem;
}

.padding-20 {
  padding: 1.1111111111rem;
}

.padding-v-20 {
  padding-top: 1.1111111111rem;
  padding-bottom: 1.1111111111rem;
}

.padding-b-20 {
  padding-bottom: 1.1111111111rem;
}

.padding-t-20 {
  padding-top: 1.1111111111rem;
}

.padding-h-20 {
  padding-left: 1.1111111111rem;
  padding-right: 1.1111111111rem;
}

.padding-l-20 {
  padding-left: 1.1111111111rem;
}

.padding-r-20 {
  padding-right: 1.1111111111rem;
}

.padding-30 {
  padding: 1.6666666667rem;
}

.padding-v-30 {
  padding-top: 1.6666666667rem;
  padding-bottom: 1.6666666667rem;
}

.padding-b-30 {
  padding-bottom: 1.6666666667rem;
}

.padding-t-30 {
  padding-top: 1.6666666667rem;
}

.padding-h-30 {
  padding-left: 1.6666666667rem;
  padding-right: 1.6666666667rem;
}

.padding-l-30 {
  padding-left: 1.6666666667rem;
}

.padding-r-30 {
  padding-right: 1.6666666667rem;
}

.padding-40 {
  padding: 2.2222222222rem;
}

.padding-v-40 {
  padding-top: 2.2222222222rem;
  padding-bottom: 2.2222222222rem;
}

.padding-b-40 {
  padding-bottom: 2.2222222222rem;
}

.padding-t-40 {
  padding-top: 2.2222222222rem;
}

.padding-h-40 {
  padding-left: 2.2222222222rem;
  padding-right: 2.2222222222rem;
}

.padding-l-40 {
  padding-left: 2.2222222222rem;
}

.padding-r-40 {
  padding-right: 2.2222222222rem;
}

.padding-50 {
  padding: 2.7777777778rem;
}

.padding-v-50 {
  padding-top: 2.7777777778rem;
  padding-bottom: 2.7777777778rem;
}

.padding-b-50 {
  padding-bottom: 2.7777777778rem;
}

.padding-t-50 {
  padding-top: 2.7777777778rem;
}

.padding-h-50 {
  padding-left: 2.7777777778rem;
  padding-right: 2.7777777778rem;
}

.padding-l-50 {
  padding-left: 2.7777777778rem;
}

.padding-r-50 {
  padding-right: 2.7777777778rem;
}

.padding-80 {
  padding: 4.4444444444rem;
}

.padding-v-80 {
  padding-top: 4.4444444444rem;
  padding-bottom: 4.4444444444rem;
}

.padding-b-80 {
  padding-bottom: 4.4444444444rem;
}

.padding-t-80 {
  padding-top: 4.4444444444rem;
}

.padding-h-80 {
  padding-left: 4.4444444444rem;
  padding-right: 4.4444444444rem;
}

.padding-l-80 {
  padding-left: 4.4444444444rem;
}

.padding-r-80 {
  padding-right: 4.4444444444rem;
}

.padding-100 {
  padding: 5.5555555556rem;
}

.padding-v-100 {
  padding-top: 5.5555555556rem;
  padding-bottom: 5.5555555556rem;
}

.padding-b-100 {
  padding-bottom: 5.5555555556rem;
}

.padding-t-100 {
  padding-top: 5.5555555556rem;
}

.padding-h-100 {
  padding-left: 5.5555555556rem;
  padding-right: 5.5555555556rem;
}

.padding-l-100 {
  padding-left: 5.5555555556rem;
}

.padding-r-100 {
  padding-right: 5.5555555556rem;
}

/* ==========================================================================
   Margins
   ========================================================================== */
.no-margin {
  margin: 0 !important;
}

.no-margin-b {
  margin-bottom: 0 !important;
}

.no-margin-t {
  margin-top: 0 !important;
}

.no-margin-l {
  margin-left: 0 !important;
}

.no-margin-r {
  margin-right: 0 !important;
}

.margin-10 {
  margin: 0.5555555556rem;
}

.margin-v-10 {
  margin-top: 0.5555555556rem;
  margin-bottom: 0.5555555556rem;
}

.margin-b-10 {
  margin-bottom: 0.5555555556rem;
}

.margin-t-10 {
  margin-top: 0.5555555556rem;
}

.margin-h-10 {
  margin-left: 0.5555555556rem;
  margin-right: 0.5555555556rem;
}

.margin-l-10 {
  margin-left: 0.5555555556rem;
}

.margin-r-10 {
  margin-right: 0.5555555556rem;
}

.margin-20 {
  margin: 1.1111111111rem;
}

.margin-v-20 {
  margin-top: 1.1111111111rem;
  margin-bottom: 1.1111111111rem;
}

.margin-b-20 {
  margin-bottom: 1.1111111111rem;
}

.margin-t-20 {
  margin-top: 1.1111111111rem;
}

.margin-h-20 {
  margin-left: 1.1111111111rem;
  margin-right: 1.1111111111rem;
}

.margin-l-20 {
  margin-left: 1.1111111111rem;
}

.margin-r-20 {
  margin-right: 1.1111111111rem;
}

.margin-30 {
  margin: 1.6666666667rem;
}

.margin-v-30 {
  margin-top: 1.6666666667rem;
  margin-bottom: 1.6666666667rem;
}

.margin-b-30 {
  margin-bottom: 1.6666666667rem;
}

.margin-t-30 {
  margin-top: 1.6666666667rem;
}

.margin-h-30 {
  margin-left: 1.6666666667rem;
  margin-right: 1.6666666667rem;
}

.margin-l-30 {
  margin-left: 1.6666666667rem;
}

.margin-r-30 {
  margin-right: 1.6666666667rem;
}

.margin-40 {
  margin: 2.2222222222rem;
}

.margin-v-40 {
  margin-top: 2.2222222222rem;
  margin-bottom: 2.2222222222rem;
}

.margin-b-40 {
  margin-bottom: 2.2222222222rem;
}

.margin-t-40 {
  margin-top: 2.2222222222rem;
}

.margin-h-40 {
  margin-left: 2.2222222222rem;
  margin-right: 2.2222222222rem;
}

.margin-l-40 {
  margin-left: 2.2222222222rem;
}

.margin-r-40 {
  margin-right: 2.2222222222rem;
}

.margin-50 {
  margin: 2.7777777778rem;
}

.margin-v-50 {
  margin-top: 2.7777777778rem;
  margin-bottom: 2.7777777778rem;
}

.margin-b-50 {
  margin-bottom: 2.7777777778rem;
}

.margin-t-50 {
  margin-top: 2.7777777778rem;
}

.margin-h-50 {
  margin-left: 2.7777777778rem;
  margin-right: 2.7777777778rem;
}

.margin-l-50 {
  margin-left: 2.7777777778rem;
}

.margin-r-50 {
  margin-right: 2.7777777778rem;
}

.margin-80 {
  margin: 4.4444444444rem;
}

.margin-v-80 {
  margin-top: 4.4444444444rem;
  margin-bottom: 4.4444444444rem;
}

.margin-b-80 {
  margin-bottom: 4.4444444444rem;
}

.margin-t-80 {
  margin-top: 4.4444444444rem;
}

.margin-h-80 {
  margin-left: 4.4444444444rem;
  margin-right: 4.4444444444rem;
}

.margin-l-80 {
  margin-left: 4.4444444444rem;
}

.margin-r-80 {
  margin-right: 4.4444444444rem;
}

.margin-100 {
  margin: 5.5555555556rem;
}

.margin-v-100 {
  margin-top: 5.5555555556rem;
  margin-bottom: 5.5555555556rem;
}

.margin-b-100 {
  margin-bottom: 5.5555555556rem;
}

.margin-t-100 {
  margin-top: 5.5555555556rem;
}

.margin-h-100 {
  margin-left: 5.5555555556rem;
  margin-right: 5.5555555556rem;
}

.margin-l-100 {
  margin-left: 5.5555555556rem;
}

.margin-r-100 {
  margin-right: 5.5555555556rem;
}

/* ==========================================================================
   Dependencies
   ========================================================================== */
.select2-container {
  box-sizing: border-box;
  display: inline-block;
  margin: 0;
  position: relative;
  vertical-align: middle;
}

.select2-container .select2-selection--single {
  box-sizing: border-box;
  cursor: pointer;
  display: block;
  height: 28px;
  -moz-user-select: none;
       user-select: none;
  -webkit-user-select: none;
}

.select2-container .select2-selection--single .select2-selection__rendered {
  display: block;
  padding-left: 8px;
  padding-right: 20px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.select2-container .select2-selection--single .select2-selection__clear {
  position: relative;
}

.select2-container[dir=rtl] .select2-selection--single .select2-selection__rendered {
  padding-right: 8px;
  padding-left: 20px;
}

.select2-container .select2-selection--multiple {
  box-sizing: border-box;
  cursor: pointer;
  display: block;
  min-height: 32px;
  -moz-user-select: none;
       user-select: none;
  -webkit-user-select: none;
}

.select2-container .select2-selection--multiple .select2-selection__rendered {
  display: inline-block;
  overflow: hidden;
  padding-left: 8px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.select2-container .select2-search--inline {
  float: left;
}

.select2-container .select2-search--inline .select2-search__field {
  box-sizing: border-box;
  border: none;
  font-size: 100%;
  margin-top: 5px;
  padding: 0;
}

.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

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

.select2-results {
  display: block;
}

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

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

.select2-results__option[aria-selected] {
  cursor: pointer;
}

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

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

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

.select2-search--dropdown {
  display: block;
  padding: 4px;
}

.select2-search--dropdown .select2-search__field {
  padding: 4px;
  width: 100%;
  box-sizing: border-box;
}

.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

.select2-search--dropdown.select2-search--hide {
  display: none;
}

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

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

.select2-container--default .select2-selection--single {
  background-color: #fff;
  border: 1px solid #aaa;
  border-radius: 4px;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #444;
  line-height: 28px;
}

.select2-container--default .select2-selection--single .select2-selection__clear {
  cursor: pointer;
  float: right;
  font-weight: bold;
}

.select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: #999;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 26px;
  position: absolute;
  top: 1px;
  right: 1px;
  width: 20px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-color: #888 transparent transparent transparent;
  border-style: solid;
  border-width: 5px 4px 0 4px;
  height: 0;
  left: 50%;
  margin-left: -4px;
  margin-top: -2px;
  position: absolute;
  top: 50%;
  width: 0;
}

.select2-container--default[dir=rtl] .select2-selection--single .select2-selection__clear {
  float: left;
}

.select2-container--default[dir=rtl] .select2-selection--single .select2-selection__arrow {
  left: 1px;
  right: auto;
}

.select2-container--default.select2-container--disabled .select2-selection--single {
  background-color: #eee;
  cursor: default;
}

.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear {
  display: none;
}

.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent #888 transparent;
  border-width: 0 4px 5px 4px;
}

.select2-container--default .select2-selection--multiple {
  background-color: white;
  border: 1px solid #aaa;
  border-radius: 4px;
  cursor: text;
}

.select2-container--default .select2-selection--multiple .select2-selection__rendered {
  box-sizing: border-box;
  list-style: none;
  margin: 0;
  padding: 0 5px;
  width: 100%;
}

.select2-container--default .select2-selection--multiple .select2-selection__rendered li {
  list-style: none;
}

.select2-container--default .select2-selection--multiple .select2-selection__clear {
  cursor: pointer;
  float: right;
  font-weight: bold;
  margin-top: 5px;
  margin-right: 10px;
  padding: 1px;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
  background-color: #e4e4e4;
  border: 1px solid #aaa;
  border-radius: 4px;
  cursor: default;
  float: left;
  margin-right: 5px;
  margin-top: 5px;
  padding: 0 5px;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  color: #999;
  cursor: pointer;
  display: inline-block;
  font-weight: bold;
  margin-right: 2px;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
  color: #333;
}

.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice, .select2-container--default[dir=rtl] .select2-selection--multiple .select2-search--inline {
  float: right;
}

.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice {
  margin-left: 5px;
  margin-right: auto;
}

.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove {
  margin-left: 2px;
  margin-right: auto;
}

.select2-container--default.select2-container--focus .select2-selection--multiple {
  border: solid black 1px;
  outline: 0;
}

.select2-container--default.select2-container--disabled .select2-selection--multiple {
  background-color: #eee;
  cursor: default;
}

.select2-container--default.select2-container--disabled .select2-selection__choice__remove {
  display: none;
}

.select2-container--default.select2-container--open.select2-container--above .select2-selection--single, .select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.select2-container--default.select2-container--open.select2-container--below .select2-selection--single, .select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
  border: 1px solid #aaa;
}

.select2-container--default .select2-search--inline .select2-search__field {
  background: transparent;
  border: none;
  outline: 0;
  box-shadow: none;
  -webkit-appearance: textfield;
}

.select2-container--default .select2-results > .select2-results__options {
  max-height: 200px;
  overflow-y: auto;
}

.select2-container--default .select2-results__option[role=group] {
  padding: 0;
}

.select2-container--default .select2-results__option[aria-disabled=true] {
  color: #999;
}

.select2-container--default .select2-results__option[aria-selected=true] {
  background-color: #ddd;
}

.select2-container--default .select2-results__option .select2-results__option {
  padding-left: 1em;
}

.select2-container--default .select2-results__option .select2-results__option .select2-results__group {
  padding-left: 0;
}

.select2-container--default .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -1em;
  padding-left: 2em;
}

.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -2em;
  padding-left: 3em;
}

.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -3em;
  padding-left: 4em;
}

.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -4em;
  padding-left: 5em;
}

.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -5em;
  padding-left: 6em;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: #5897fb;
  color: white;
}

.select2-container--default .select2-results__group {
  cursor: default;
  display: block;
  padding: 6px;
}

.select2-container--classic .select2-selection--single {
  background-color: #f7f7f7;
  border: 1px solid #aaa;
  border-radius: 4px;
  outline: 0;
  background-image: linear-gradient(to bottom, white 50%, #eeeeee 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFFFF", endColorstr="#FFEEEEEE", GradientType=0);
}

.select2-container--classic .select2-selection--single:focus {
  border: 1px solid #5897fb;
}

.select2-container--classic .select2-selection--single .select2-selection__rendered {
  color: #444;
  line-height: 28px;
}

.select2-container--classic .select2-selection--single .select2-selection__clear {
  cursor: pointer;
  float: right;
  font-weight: bold;
  margin-right: 10px;
}

.select2-container--classic .select2-selection--single .select2-selection__placeholder {
  color: #999;
}

.select2-container--classic .select2-selection--single .select2-selection__arrow {
  background-color: #ddd;
  border: none;
  border-left: 1px solid #aaa;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
  height: 26px;
  position: absolute;
  top: 1px;
  right: 1px;
  width: 20px;
  background-image: linear-gradient(to bottom, #eeeeee 50%, #cccccc 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFEEEEEE", endColorstr="#FFCCCCCC", GradientType=0);
}

.select2-container--classic .select2-selection--single .select2-selection__arrow b {
  border-color: #888 transparent transparent transparent;
  border-style: solid;
  border-width: 5px 4px 0 4px;
  height: 0;
  left: 50%;
  margin-left: -4px;
  margin-top: -2px;
  position: absolute;
  top: 50%;
  width: 0;
}

.select2-container--classic[dir=rtl] .select2-selection--single .select2-selection__clear {
  float: left;
}

.select2-container--classic[dir=rtl] .select2-selection--single .select2-selection__arrow {
  border: none;
  border-right: 1px solid #aaa;
  border-radius: 0;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  left: 1px;
  right: auto;
}

.select2-container--classic.select2-container--open .select2-selection--single {
  border: 1px solid #5897fb;
}

.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow {
  background: transparent;
  border: none;
}

.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent #888 transparent;
  border-width: 0 4px 5px 4px;
}

.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  background-image: linear-gradient(to bottom, white 0%, #eeeeee 50%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFFFF", endColorstr="#FFEEEEEE", GradientType=0);
}

.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  background-image: linear-gradient(to bottom, #eeeeee 50%, white 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFEEEEEE", endColorstr="#FFFFFFFF", GradientType=0);
}

.select2-container--classic .select2-selection--multiple {
  background-color: white;
  border: 1px solid #aaa;
  border-radius: 4px;
  cursor: text;
  outline: 0;
}

.select2-container--classic .select2-selection--multiple:focus {
  border: 1px solid #5897fb;
}

.select2-container--classic .select2-selection--multiple .select2-selection__rendered {
  list-style: none;
  margin: 0;
  padding: 0 5px;
}

.select2-container--classic .select2-selection--multiple .select2-selection__clear {
  display: none;
}

.select2-container--classic .select2-selection--multiple .select2-selection__choice {
  background-color: #e4e4e4;
  border: 1px solid #aaa;
  border-radius: 4px;
  cursor: default;
  float: left;
  margin-right: 5px;
  margin-top: 5px;
  padding: 0 5px;
}

.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove {
  color: #888;
  cursor: pointer;
  display: inline-block;
  font-weight: bold;
  margin-right: 2px;
}

.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover {
  color: #555;
}

.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice {
  float: right;
  margin-left: 5px;
  margin-right: auto;
}

.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove {
  margin-left: 2px;
  margin-right: auto;
}

.select2-container--classic.select2-container--open .select2-selection--multiple {
  border: 1px solid #5897fb;
}

.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.select2-container--classic .select2-search--dropdown .select2-search__field {
  border: 1px solid #aaa;
  outline: 0;
}

.select2-container--classic .select2-search--inline .select2-search__field {
  outline: 0;
  box-shadow: none;
}

.select2-container--classic .select2-dropdown {
  background-color: white;
  border: 1px solid transparent;
}

.select2-container--classic .select2-dropdown--above {
  border-bottom: none;
}

.select2-container--classic .select2-dropdown--below {
  border-top: none;
}

.select2-container--classic .select2-results > .select2-results__options {
  max-height: 200px;
  overflow-y: auto;
}

.select2-container--classic .select2-results__option[role=group] {
  padding: 0;
}

.select2-container--classic .select2-results__option[aria-disabled=true] {
  color: grey;
}

.select2-container--classic .select2-results__option--highlighted[aria-selected] {
  background-color: #3875d7;
  color: white;
}

.select2-container--classic .select2-results__group {
  cursor: default;
  display: block;
  padding: 6px;
}

.select2-container--classic.select2-container--open .select2-dropdown {
  border-color: #5897fb;
}

.cc-window {
  opacity: 1;
  transition: opacity 1s ease;
}

.cc-window.cc-invisible {
  opacity: 0;
}

.cc-animate.cc-revoke {
  transition: transform 1s ease;
}

.cc-animate.cc-revoke.cc-top {
  transform: translateY(-2em);
}

.cc-animate.cc-revoke.cc-bottom {
  transform: translateY(2em);
}

.cc-animate.cc-revoke.cc-active.cc-top {
  transform: translateY(0);
}

.cc-animate.cc-revoke.cc-active.cc-bottom {
  transform: translateY(0);
}

.cc-revoke:hover {
  transform: translateY(0);
}

.cc-grower {
  max-height: 0;
  overflow: hidden;
  transition: max-height 1s;
}

.cc-revoke, .cc-window {
  position: fixed;
  overflow: hidden;
  box-sizing: border-box;
  font-family: Helvetica, Calibri, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5em;
  display: flex;
  flex-wrap: nowrap;
  z-index: 9999;
}

.cc-window.cc-static {
  position: static;
}

.cc-window.cc-floating {
  padding: 2em;
  max-width: 24em;
  flex-direction: column;
}

.cc-window.cc-banner {
  padding: 1em 1.8em;
  width: 100%;
  flex-direction: row;
}

.cc-revoke {
  padding: 0.5em;
}

.cc-revoke:hover {
  text-decoration: underline;
}

.cc-header {
  font-size: 18px;
  font-weight: 700;
}

.cc-btn, .cc-close, .cc-link, .cc-revoke {
  cursor: pointer;
}

.cc-link {
  opacity: 0.8;
  display: inline-block;
  padding: 0.2em;
  text-decoration: underline;
}

.cc-link:hover {
  opacity: 1;
}

.cc-link:active, .cc-link:visited {
  color: initial;
}

.cc-btn {
  display: block;
  padding: 0.4em 0.8em;
  font-size: 0.9em;
  font-weight: 700;
  border-width: 2px;
  border-style: solid;
  text-align: center;
  white-space: nowrap;
}

.cc-highlight .cc-btn:first-child {
  background-color: transparent;
  border-color: transparent;
}

.cc-highlight .cc-btn:first-child:focus, .cc-highlight .cc-btn:first-child:hover {
  background-color: transparent;
  text-decoration: underline;
}

.cc-close {
  display: block;
  position: absolute;
  top: 0.5em;
  right: 0.5em;
  font-size: 1.6em;
  opacity: 0.9;
  line-height: 0.75;
}

.cc-close:focus, .cc-close:hover {
  opacity: 1;
}

.cc-revoke.cc-top {
  top: 0;
  left: 3em;
  border-bottom-left-radius: 0.5em;
  border-bottom-right-radius: 0.5em;
}

.cc-revoke.cc-bottom {
  bottom: 0;
  left: 3em;
  border-top-left-radius: 0.5em;
  border-top-right-radius: 0.5em;
}

.cc-revoke.cc-left {
  left: 3em;
  right: unset;
}

.cc-revoke.cc-right {
  right: 3em;
  left: unset;
}

.cc-top {
  top: 1em;
}

.cc-left {
  left: 1em;
}

.cc-right {
  right: 1em;
}

.cc-bottom {
  bottom: 1em;
}

.cc-floating > .cc-link {
  margin-bottom: 1em;
}

.cc-floating .cc-message {
  display: block;
  margin-bottom: 1em;
}

.cc-window.cc-floating .cc-compliance {
  flex: 1 0 auto;
}

.cc-window.cc-banner {
  align-items: center;
}

.cc-banner.cc-top {
  left: 0;
  right: 0;
  top: 0;
}

.cc-banner.cc-bottom {
  left: 0;
  right: 0;
  bottom: 0;
}

.cc-banner .cc-message {
  display: block;
  flex: 1 1 auto;
  max-width: 100%;
  margin-right: 1em;
}

.cc-compliance {
  display: flex;
  align-items: center;
  align-content: space-between;
}

.cc-floating .cc-compliance > .cc-btn {
  flex: 1 1;
}

.cc-btn + .cc-btn {
  margin-left: 0.5em;
}

@media print {
  .cc-revoke, .cc-window {
    display: none;
  }
}
@media screen and (max-width: 900px) {
  .cc-btn {
    white-space: normal;
  }
}
@media screen and (max-width: 414px) and (orientation: portrait), screen and (max-width: 736px) and (orientation: landscape) {
  .cc-window.cc-top {
    top: 0;
  }
  .cc-window.cc-bottom {
    bottom: 0;
  }
  .cc-window.cc-banner, .cc-window.cc-floating, .cc-window.cc-left, .cc-window.cc-right {
    left: 0;
    right: 0;
  }
  .cc-window.cc-banner {
    flex-direction: column;
  }
  .cc-window.cc-banner .cc-compliance {
    flex: 1 1 auto;
  }
  .cc-window.cc-floating {
    max-width: none;
  }
  .cc-window .cc-message {
    margin-bottom: 1em;
  }
  .cc-window.cc-banner {
    align-items: unset;
  }
  .cc-window.cc-banner .cc-message {
    margin-right: 0;
  }
}
.cc-floating.cc-theme-classic {
  padding: 1.2em;
  border-radius: 5px;
}

.cc-floating.cc-type-info.cc-theme-classic .cc-compliance {
  text-align: center;
  display: inline;
  flex: none;
}

.cc-theme-classic .cc-btn {
  border-radius: 5px;
}

.cc-theme-classic .cc-btn:last-child {
  min-width: 140px;
}

.cc-floating.cc-type-info.cc-theme-classic .cc-btn {
  display: inline-block;
}

.cc-theme-edgeless.cc-window {
  padding: 0;
}

.cc-floating.cc-theme-edgeless .cc-message {
  margin: 2em;
  margin-bottom: 1.5em;
}

.cc-banner.cc-theme-edgeless .cc-btn {
  margin: 0;
  padding: 0.8em 1.8em;
  height: 100%;
}

.cc-banner.cc-theme-edgeless .cc-message {
  margin-left: 1em;
}

.cc-floating.cc-theme-edgeless .cc-btn + .cc-btn {
  margin-left: 0;
}
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0cy9zcmMvc2Nzcy9tYWluLnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9hc3NldHMvc3JjL3Njc3MvX2ZvbnRzLnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9hc3NldHMvc3JjL3Njc3MvX2ljb21vb24uc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL2Fzc2V0cy9zcmMvc2Nzcy9tYWluLnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9hc3NldHMvc3JjL3Njc3Mvc2V0dGluZ3MvX3ByaW50LnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdmVuZG9yL25vcm1hbGl6ZS5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9hc3NldHMvc3JjL3Njc3Mvc2V0dGluZ3MvX2ZvdW5kYXRpb24uc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19jaGVja2JveC5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fbGFiZWwuc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2hlbHAtdGV4dC5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faW5wdXQtZ3JvdXAuc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2ZpZWxkc2V0LnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19zZWxlY3Quc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2Vycm9yLnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fYnJlYWtwb2ludC5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19jb2xvci5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19oZWxwZXJzLnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2FsaWdubWVudC5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19wcmludC5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19mbGV4LWdyaWQuc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcm93LnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2d1dHRlci5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19wb3NpdGlvbi5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbGFiZWwuc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcHJvZ3Jlc3MtYmFyLnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19wcm9ncmVzcy5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJsZS5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19iYWRnZS5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jYWxsb3V0LnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhcmQuc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9vbHRpcC5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZWRpYS1vYmplY3Quc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb3JiaXQuc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LWljb24uc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zdGlja3kuc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9wLWJhci5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19mbGV4LnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2ZsZXguc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdmlzaWJpbGl0eS5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvX2NsYXNzZXMuc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX2tleWZyYW1lLnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fc2xpZGUuc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19mYWRlLnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9faGluZ2Uuc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL196b29tLnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fc3Bpbi5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fYW5pbWF0aW9uLnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9hc3NldHMvc3JjL3Njc3MvZ2VuZXJpYy9fZ2xvYmFsLnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9hc3NldHMvc3JjL3Njc3MvZ2VuZXJpYy9faWNvbnMuc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL2Fzc2V0cy9zcmMvc2Nzcy9jb21wb25lbnRzL19ibG9ja3Muc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL2Fzc2V0cy9zcmMvc2Nzcy9jb21wb25lbnRzL19icmVhZGNydW1iLnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9hc3NldHMvc3JjL3Njc3MvY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvYXNzZXRzL3NyYy9zY3NzL2NvbXBvbmVudHMvX2NhcmQuc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL2Fzc2V0cy9zcmMvc2Nzcy9jb21wb25lbnRzL19jb250YWN0LnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9hc3NldHMvc3JjL3Njc3MvY29tcG9uZW50cy9fY29udGVudC5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvYXNzZXRzL3NyYy9zY3NzL2NvbXBvbmVudHMvX2NvdW50ZXIuc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL2Fzc2V0cy9zcmMvc2Nzcy9jb21wb25lbnRzL19jaGVja2JveC5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvYXNzZXRzL3NyYy9zY3NzL2NvbXBvbmVudHMvX2hlYWRlci5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvYXNzZXRzL3NyYy9zY3NzL2NvbXBvbmVudHMvX2hvdXNldGVzdC5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvYXNzZXRzL3NyYy9zY3NzL2NvbXBvbmVudHMvX2ljb24uc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL2Fzc2V0cy9zcmMvc2Nzcy9jb21wb25lbnRzL19pbnB1dC5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvYXNzZXRzL3NyYy9zY3NzL2NvbXBvbmVudHMvX2Zvb3Rlci5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvYXNzZXRzL3NyYy9zY3NzL2NvbXBvbmVudHMvX2xhYmVsLnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9hc3NldHMvc3JjL3Njc3MvY29tcG9uZW50cy9fbGlzdC5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvYXNzZXRzL3NyYy9zY3NzL2NvbXBvbmVudHMvX2xvZ28uc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL2Fzc2V0cy9zcmMvc2Nzcy9jb21wb25lbnRzL19saW5rLnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9hc3NldHMvc3JjL3Njc3MvY29tcG9uZW50cy9fbWFpbi1uYXYuc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL2Fzc2V0cy9zcmMvc2Nzcy9jb21wb25lbnRzL19tZWRpYS5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvYXNzZXRzL3NyYy9zY3NzL2NvbXBvbmVudHMvX211bHRpLWZvcm0uc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL2Fzc2V0cy9zcmMvc2Nzcy9jb21wb25lbnRzL19pbWFnZS5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvYXNzZXRzL3NyYy9zY3NzL2NvbXBvbmVudHMvX3ByaWNlLXRhYmxlLnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9hc3NldHMvc3JjL3Njc3MvY29tcG9uZW50cy9fcHJvZHVjdC5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvYXNzZXRzL3NyYy9zY3NzL2NvbXBvbmVudHMvX25ld3Muc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL2Fzc2V0cy9zcmMvc2Nzcy9jb21wb25lbnRzL19yYWRpby5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvYXNzZXRzL3NyYy9zY3NzL2NvbXBvbmVudHMvX3NlbGVjdC5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvYXNzZXRzL3NyYy9zY3NzL2NvbXBvbmVudHMvX3Rlc3RpbW9uaWFsLnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9hc3NldHMvc3JjL3Njc3MvY29tcG9uZW50cy9fdGV4dC5zY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvYXNzZXRzL3NyYy9zY3NzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL2Fzc2V0cy9zcmMvc2Nzcy9jb21wb25lbnRzL190b3AtYmFyLnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9hc3NldHMvc3JjL3Njc3MvY29tcG9uZW50cy9fdXNwLWJsb2NrLnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9hc3NldHMvc3JjL3Njc3MvY29tcG9uZW50cy9fdmlkZW8uc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL2Fzc2V0cy9zcmMvc2Nzcy91dGlsaXRpZXMvX2hlbHBlcnMuYWxpZ24uc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL2Fzc2V0cy9zcmMvc2Nzcy91dGlsaXRpZXMvX2hlbHBlcnMuY29sb3JzLnNjc3MiLCIvaG9tZS9jbS9wcm9qZWN0cy9taWpuaHVpc29wbWFhdC50ZXN0L3B1YmxpY19odG1sL2FwcHMvd3d3L3Jlcy9hc3NldHMvc3JjL3Njc3MvdXRpbGl0aWVzL19oZWxwZXJzLnNwYWNpbmcuc2NzcyIsIi9ob21lL2NtL3Byb2plY3RzL21pam5odWlzb3BtYWF0LnRlc3QvcHVibGljX2h0bWwvYXBwcy93d3cvcmVzL25vZGVfbW9kdWxlcy9zZWxlY3QyL2Rpc3QvY3NzL3NlbGVjdDIuY3NzIiwiL2hvbWUvY20vcHJvamVjdHMvbWlqbmh1aXNvcG1hYXQudGVzdC9wdWJsaWNfaHRtbC9hcHBzL3d3dy9yZXMvbm9kZV9tb2R1bGVzL2Nvb2tpZWNv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QkFBQTtFQUNBLFdBQUE7RUFDQSxrQkN0Rlk7QVIyU2hCOztBTzlNSTs7Ozs7O0VBR0UsMEJBQUE7QVBvTk47O0FPL01FO0VBRUUsVUFBQTtFQUNBLHdCQUFBO0tBQUEscUJBQUE7VUFBQSxnQkFBQTtFQUNBLFNBQUE7RUFDQSxrQkMxR1k7RUQyR1osdUJBQUE7RUFDQSxjQUFBO0VBQ0EsWUN2R21CO0FSd1R2QjtBU2xPRTtFQUNFLFVBQUE7QVRvT0o7O0FPaE5FO0VBQ0UsY0FBQTtBUG1OSjs7QU8vTUU7Ozs7O0VBS0Usb0JBQUE7QVBrTko7O0FPOU1FO0VBQ0UseUJBQUE7QVBpTko7O0FPOU1FO0VBQ0Usd0JBQUE7QVBpTko7O0FVdFVFOztFQXJDQSxjQUFBO0VBQ0Esc0JBQUE7RUFDQSxXQUFBO0VBQ0EsdUJBTFM7RUFNVCwyQkFBQTtFQUNBLHdCRmtYYztFRWhYZCx5QkY4V2E7RUU3V2Isa0JGY2M7RUViZCx5QkZQVztFRVFYLGdCRjhXYTtFRTVXYixvQkZrV2tCO0VFaldsQiwwQkZrV2dCO0VFaldoQixtQkZJcUI7RUVIckIsZ0JGakNrQjtFRWtDbEIsY0ZYTTtFRWNKLDJERndXZTtFRW5WZix3QkFBQTtLQUFBLHFCQUFBO1VBQUEsZ0JBQUE7QVZ3Vko7QVV6V0U7O0VBQ0UsYUFBQTtFQUNBLHlCRjZWaUI7RUU1VmpCLHlCRnpCSTtFRTBCSiwyQkY4VmlCO0VFM1ZmLDJERjZWYTtBUmFuQjs7QVU1VkU7RUFDRSxlQUFBO0FWK1ZKO0FVN1ZJO0VBQ0UsWUFBQTtBVitWTjs7QVV4Vkk7OztFQUVFLHlCRnZETztFRXdEUCxtQkZnVWtCO0FSNEJ4Qjs7QVV2VkU7O0VBRUUsd0JBQUE7S0FBQSxxQkFBQTtVQUFBLGdCQUFBO0VBQ0Esa0JGNUNZO0FSc1loQjs7QVV0VkU7RUFDRSxzQkFBQTtBVnlWSjs7QVV4VUU7RUFDRSxjRnJGUTtBUmdhWjs7QVU1VUU7RUFDRSxjRnJGUTtBUmdhWjs7QVdsZkU7OztFQUdFLDJCQUFBO0FYcWZKOztBV2pmRTs7RUFFRSxxQkFBQTtFQUNBLHdCQUFBO0VBRUEsNEJBQUE7RUFDQSw2Qkg4Wlc7RUc3WlgsZ0JBQUE7QVhtZko7QVdqZkk7O0VBQ0UsZUFBQTtBWG9mTjs7QVcvZUU7O0VBRUUsNkJBQUE7QVhrZko7O0FXOWVFO0VBQ0UsV0FBQTtBWGlmSjs7QVk3ZUU7RUFqQkEsY0FBQTtFQUNBLFNBQUE7RUFFQSwwQkppYXFCO0VJaGFyQixtQko0RXFCO0VJM0VyQixnQkppYXVCO0VJaGF2QixjSjZETTtBUm9jUjtBWW5mSTtFQVJGLDJCQUFBO0VBQ0Esa0JBQUE7QVo4ZkY7O0FhL2dCRTtFQUdFLDRCQUZhO0VBR2IsMEJMNlppQjtFSzVaakIsa0JMNlprQjtFSzVabEIsY0xpRUk7QVIrY1I7O0FjamhCRTtFQUNFLGFBQUE7RUFDQSxXQUFBO0VBQ0EsOEJOdVpXO0VNcFpULG9CQUFBO0Fka2hCTjtBYy9nQkk7RUFDRSwwQkFBQTtBZGloQk47QWM3Z0JNO0VBQ0UsMEJBQUE7QWQrZ0JSOztBYzFnQkU7Ozs7RUFDRSxTQUFBO0VBQ0EsbUJBQUE7QWRnaEJKOztBY3hnQkU7RUFFRSxlQUFBO0VBQ0EseUJOK1hrQjtFTTlYbEIsbUJONkJTO0VNM0JULGNOOEJJO0VNN0JKLGtCQUFBO0VBQ0EsbUJBQUE7RUFHRSxhQUFBO0VBQ0EsY0FBQTtFQUNBLG1CQUFBO0FkdWdCTjtBYy9mTTtFQUNFLGVBQUE7QWRpZ0JSO0FjOWZNO0VBQ0UsY0FBQTtBZGdnQlI7O0FjM2ZFO0VBRUUsZ0JBQUE7RUFHRSxTQUFBO0VBQ0EsWUFBQTtBZDJmTjs7QWN2ZkU7RUFFRSxjQUFBO0VBQ0EsaUJBQUE7RUFDQSxrQkFBQTtFQUdFLGFBQUE7RUFDQSxjQUFBO0FkdWZOO0FjaGZJOzs7O0VBT0ksbUJBQUE7RUFDQSxZQUFBO0VBS0YsY0FBQTtFQUNBLGlCQUFBO0VBQ0EsMEJOdVVZO0FSb0tsQjs7QWVwa0JFO0VBQ0UsU0FBQTtFQUNBLFVBQUE7RUFDQSxTQUFBO0FmdWtCSjs7QWVwa0JFO0VBQ0UsZUFBQTtFQUNBLDhCQUFBO0FmdWtCSjs7QWVwa0JFO0VBeEJBLGNQeVpnQjtFT3haaEIsd0JQdVppQjtFT3RaakIseUJQcVpnQjtBUjJNbEI7QWU5bEJFO0VBRUUsU0FBQTtFQUNBLDZCQUFBO0VBQ0EsMEJQa1phO0FSNk1qQjs7QWdCOWlCRTtFQTNEQSx1QkFGUztFQUdULDJCQUFBO0VBQ0Esd0JScWJjO0VRbmJkLHdCQUFBO0tBQUEscUJBQUE7VUFBQSxnQkFBQTtFQUNBLHlCUmdiYTtFUS9hYixrQlJnRmM7RVEvRWQseUJSMERNO0VReEROLG9CUnFha0I7RVFwYWxCLDBCUnFhZ0I7RVFwYWhCLG1CUnVFcUI7RVF0RXJCLGdCUmtDa0I7RVFqQ2xCLGNSd0RNO0VDMEROLHdPQUFBO0VPOUdFLDhCQUFBO0VBQ0Esa0RBQUE7RUFDQSw0QkFBQTtFQUNBLHdCQUFBO0VBRUEsOEJBQUE7RUFJQSwyRFJpYWU7QVJvTW5CO0FTOWZFO0VPdEVBO0lQNkVJLCthQUFBO0VUMmZKO0FBQ0Y7QWdCdG1CRTtFQUNFLGFBQUE7RUFDQSx5QlJzWmlCO0VRclpqQix5QlJnQ0k7RVEvQkosMkJSdVppQjtFUXBaZiwyRFJzWmE7QVJnTm5CO0FnQmptQkU7RUFDRSx5QlJ1QlM7RVF0QlQsbUJSOFlvQjtBUnFOeEI7QWdCL2xCRTtFQUNFLGFBQUE7QWhCaW1CSjtBZ0I5bEJFO0VBQ0UsWUFBQTtFQUNBLHNCQUFBO0FoQmdtQko7O0FpQmpvQkU7RUFDRSxxQlQ4THVCO0VTN0x2Qix3Q0FBQTtBakJvb0JKO0FpQmxvQkk7RUFDRSxjVDBMcUI7QVIwYzNCO0FpQnJvQkk7RUFDRSxjVDBMcUI7QVIwYzNCOztBaUIxbUJJO0VBQ0UsY1RnS3FCO0FSNmMzQjs7QWlCeG1CRTtFQXpCQSxhQUFBO0VBQ0EsNEJBQUE7RUFDQSw4QlQwWGE7RVN4WGIsMEJUa0xzQjtFU2pMdEIsaUJUK0NtQjtFUzlDbkIsY1QrS2tCO0FScWRwQjtBaUI5bUJJO0VBQ0UsY0FBQTtBakJnbkJOOztBa0J0Y0U7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFtQkUsU0FBQTtFQUNBLFVBQUE7QWxCeWNKOztBa0JyY0U7RUFDRSw4QlZuR3NCO0VVcUd0QixrQkFBQTtFQUNBLGdCVnZHbUI7RVV3R25CLGtDVnRHdUI7QVI2aUIzQjs7QWtCbmNFOztFQUVFLGtCQUFBO0VBQ0Esb0JBQUE7QWxCc2NKOztBa0JsY0U7O0VBRUUsaUJWN0xpQjtFVThMakIsb0JBQUE7QWxCcWNKOztBa0JqY0U7RUFDRSxjVjdIYztFVThIZCxvQkFBQTtBbEJvY0o7O0FrQmhjRTs7Ozs7O0VBTUUscUNWbEtpQjtFVW1LakIsa0JWaktnQjtFVWtLaEIsZ0JWbktpQjtFVW9LakIsY1ZqS1c7RVVrS1gsa0NWN0lvQjtBUmdsQnhCO0FrQmpjSTs7Ozs7O0VBQ0UsY0FBQTtFQUNBLGNWeE9RO0FSZ3JCZDs7QWtCL2JRO0VBSUksMEJBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FsQnVhWjs7QWtCdGNRO0VBSUksMEJBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FsQjhhWjs7QWtCN2NRO0VBSUksMEJBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FsQnFiWjs7QWtCcGRRO0VBSUksMEJBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FsQjRiWjs7QWtCM2RRO0VBSUksZUFEaUI7RUFhakIsZ0JBQUE7RUFRQSxhQUFBO0VBT0EscUJBQUE7QWxCbWNaOztBa0JsZVE7RUFJSSwwQkFEaUI7RUFhakIsZ0JBQUE7RUFRQSxhQUFBO0VBT0EscUJBQUE7QWxCMGNaOztBbUI5b0JNO0VEcUtFO0lBSUksZUFEaUI7RWxCMmUzQjtFa0I5ZU07SUFJSSwwQkFEaUI7RWxCOGUzQjtFa0JqZk07SUFJSSwwQkFEaUI7RWxCaWYzQjtFa0JwZk07SUFJSSwwQkFEaUI7RWxCb2YzQjtFa0J2Zk07SUFJSSxlQURpQjtFbEJ1ZjNCO0VrQjFmTTtJQUlJLDBCQURpQjtFbEIwZjNCO0FBQ0Y7QWtCdmRFO0VBQ0Usb0JBQUE7RUFDQSxjRWxRZ0I7RUZtUWhCLHFCVnRMcUI7RVV3THJCLGVBQUE7QWxCd2RKO0FrQnRkSTtFQUVFLGdDVjdMZTtBUm9wQnJCO0FrQmpkSTtFQUNFLFNBQUE7QWxCbWROOztBa0I5Y0U7RUFDRSxXQUFBO0VBRUEsMkJWdFVXO0VVdVVYLFNBQUE7RUFDQSw0QlZ6TVE7RVUyTVIsYUFBQTtFQUNBLGVBQUE7RUFDQSxnQ1Y5TVE7RVUrTVIsY0FBQTtBbEIrY0o7O0FrQjNjRTs7O0VBR0UsOEJWbk9zQjtFVW9PdEIsNEJWbE5rQjtFVW1ObEIsZ0JWdE9tQjtBUm9yQnZCOztBa0IxY0U7RUFDRSxrQkFBQTtBbEI2Y0o7O0FrQnpjRTtFQUNFLG9CVjVOZTtFVTZOZixxQlYvTmM7QVIycUJsQjs7QWtCeGNFO0VBQ0Usb0JWbE9lO0FSNnFCbkI7O0FrQnRjSTtFQUNFLG9CVnZPb0I7RVV3T3BCLGdCQUFBO0FsQnljTjs7QWtCcGNFO0VBQ0UsbUJWN09xQjtBUm9yQnpCO0FrQnJjSTtFQUNFLHFCVjlPd0I7RVUrT3hCLGlCVi9VZTtBUnN4QnJCOztBa0JsY0U7RUFDRSwyQkFBQTtFQUNBLGlEVnBQaUI7RVVxUGpCLDhCVnBQZ0I7QVJ5ckJwQjtBa0JuY0k7RUFDRSxnQlZsUmlCO0VVbVJqQixjVjVXTTtBUml6Qlo7O0FrQmhjRTtFQUNFLGNBQUE7RUFDQSwwQlY5UGE7RVUrUGIsY1ZwWFE7QVJ1ekJaO0FrQmpjSTtFQUNFLGFWaFFnQjtBUm1zQnRCOztBa0I5YkU7RUFDRSxpQ1ZoUWE7RVVpUWIsWUFBQTtFQUNBLHFCQUFBO0FsQmljSjs7QWtCN2JFO0VBQ0UsU0FBQTtBbEJnY0o7O0FrQjViRTtFQUNFLHdEVnhTVztFVTBTWCx5QlYzU1U7RVU0U1YseUJWOVlTO0VVZ1pULDREVjlVb0I7RVUrVXBCLG1CVmpZbUI7RVVrWW5CLGNWL1lJO0FSNDBCUjs7QWtCemJFO0VBQ0UsU0FBQTtFQUNBLDBDVjNSZ0I7RVU2UmhCLHlCVjFaUztFVTRaVCw0RFYxVm9CO0VVMlZwQixjVjFaSTtFVTZaRixrQlY1WVU7QVJvMEJoQjs7QXFCbDRCRTtFQUNFLGtCYmtMbUI7RWFqTG5CLHFCYmtMc0I7RWFoTHRCLG1CYnNEbUI7RWFyRG5CLGdCYjJLbUI7RWExS25CLGNic0NRO0FSODFCWjs7QXFCaDRCRTtFQUNFLHFCYm1LYTtFYWxLYixnQmJtS2M7QVJndUJsQjs7QXFCLzNCRTtFQUNFLGlCYm9LYTtFYW5LYixjQUFBO0FyQms0Qko7QXFCaDRCSTtFQUNFLGlCQUFBO0FyQms0Qk47O0FxQjUzQkk7RUFDRSxjQUFBO0VBQ0EsZ0JBQUE7QXJCKzNCTjs7QXNCNzdCVTtFQUNFLGdCQVJVO0F0Qnc4QnRCOztBc0JqOEJVO0VBQ0UsaUJBUlU7QXRCNDhCdEI7O0FzQnI4QlU7RUFDRSxrQkFSVTtBdEJnOUJ0Qjs7QXNCejhCVTtFQUNFLG1CQVJVO0F0Qm85QnRCOztBbUJyekJNO0VHN0pJO0lBQ0UsZ0JBSFU7RXRCeTlCcEI7RXNCdjlCUTtJQUNFLGlCQUhVO0V0QjQ5QnBCO0VzQjE5QlE7SUFDRSxrQkFIVTtFdEIrOUJwQjtFc0I3OUJRO0lBQ0UsbUJBSFU7RXRCaytCcEI7QUFDRjtBbUJwMEJNO0VHN0pJO0lBQ0UsZ0JBSFU7RXRCdStCcEI7RXNCcitCUTtJQUNFLGlCQUhVO0V0QjArQnBCO0VzQngrQlE7SUFDRSxrQkFIVTtFdEI2K0JwQjtFc0IzK0JRO0lBQ0UsbUJBSFU7RXRCZy9CcEI7QUFDRjtBdUIzK0JFO0VBQWtCLHdCQUFBO0F2QjgrQnBCOztBdUI1K0JFO0VBQ0U7SUFFSSxrQ0FBQTtJQUdGLDJCQUFBO0lBRUEsdUJBQUE7SUFDQSw0QkFBQTtFdkIyK0JKO0V1QngrQkU7SUFBa0IseUJBQUE7RXZCMitCcEI7RXVCMStCRTtJQUFrQix3QkFBQTtFdkI2K0JwQjtFdUIzK0JFO0lBQXVCLHlCQUFBO0V2QjgrQnpCO0V1QjcrQkU7SUFBdUIsc0NBQUE7RXZCZy9CekI7RXVCLytCRTtJQUF1QixtQ0FBQTtFdkJrL0J6QjtFdUJqL0JFO0lBQW9CLDZCQUFBO0V2Qm8vQnRCO0V1Qm4vQkU7SUFBb0IsOEJBQUE7RXZCcy9CdEI7RXVCci9CRTtJQUFvQiw4QkFBQTtFdkJ3L0J0QjtFdUJyL0JFOztJQUNZLDBCQUFBO0V2QncvQmQ7RXVCdC9CSTtJQUFnQiw0QkFBQTtFdkJ5L0JwQjtFdUJyL0JFOzs7SUFFcUIsV0FBQTtFdkJ3L0J2QjtFdUJyL0JFO0lBQW9CLDZCQUFBO0V2QncvQnRCO0V1QnIvQkU7O0lBRUUseUJBQUE7SUFDQSx3QkFBQTtFdkJ1L0JKO0V1Qm4vQkU7SUFBUSwyQkFBQTtFdkJzL0JWO0V1QnAvQkU7O0lBQ00sd0JBQUE7RXZCdS9CUjtFdUJyL0JFO0lBQU0sMEJBQUE7RXZCdy9CUjtFdUJ0L0JFO0lBQVEsYUFBQTtFdkJ5L0JWO0V1QnYvQkU7OztJQUdFLFVBQUE7SUFDQSxTQUFBO0V2QnkvQko7RXVCci9CRTs7SUFDSyx1QkFBQTtFdkJ3L0JQO0V1QnIvQkU7SUFDRSx1QkFBQTtFdkJ1L0JKO0FBQ0Y7QXdCMzhCRTtFQzlCQSwyQmpCN0JhO0VnQjlCWCxrQkFBQTtFQUNBLGlCQUFBO0VBSUEsYUFBQTtFQUNBLG1CQUFBO0F4QnFpQ0o7QXdCOThCSTtFQy9DQSw4QkFGUztFQUdULDZCQUhTO0F6Qm1nQ2I7QW1CLzZCTTtFS25DRjtJQy9DQSw4QkFGUztJQUdULDZCQUhTO0V6QndnQ1g7QUFDRjtBbUJyN0JNO0VLbkNGO0lDL0NBLDhCQUZTO0lBR1QsNkJBSFM7RXpCOGdDWDtBQUNGO0F3QjM5Qk07RUFDRSxlQUFBO0VBQ0EsY0FBQTtBeEI2OUJSO0F3Qng5Qkk7RUM1Q0YsZUFIUztBekIwZ0NYO0F3Qng5Qk07RUFDRSxrQkFBQTtFQUNBLGlCQUFBO0F4QjA5QlI7QXdCdDlCSTtFQ3JERixlQUhTO0F6QmloQ1g7QXdCcDlCTTtFRXJJRixnQkFGVTtFQUdWLGVBSFU7QTFCK2xDZDtBd0JqOUJJO0VBRUUsZUFBQTtFQUNBLGNBQUE7QXhCazlCTjs7QXdCNzhCRTtFQXREQSxTQUFBO0VFOUZFLDhCQUZVO0VBR1YsNkJBSFU7RUZxRVYsWUFBQTtBeEJxaUNKO0FtQng5Qk07RUtJSjtJRXBKRSw4QkFGVTtJQUdWLDZCQUhVO0UxQittQ1o7QUFDRjs7QXdCcDlCRTtFQUNFLFdBQUE7RUFDQSxjQUFBO0F4QnU5Qko7O0F3Qm45QkU7RUFDRSxlQUFBO0VBQ0EsY0FBQTtFQUNBLGdCQUFBO0VBQ0EsZUFBQTtBeEJzOUJKOztBd0JoOUJNO0VBQ0UsdUJBQUE7RUFDQSx3QkFBQTtBeEJtOUJSOztBd0I3OEJNO0VHdElKLGVBQUE7QTNCdWxDRjs7QXdCejlCTTtFQUNFLHdCQUFBO0VBQ0EseUJBQUE7QXhCNDlCUjs7QXdCdDlCTTtFR3RJSiwwQkFBQTtBM0JnbUNGOztBd0JsK0JNO0VBQ0UsYUFBQTtFQUNBLGNBQUE7QXhCcStCUjs7QXdCLzlCTTtFR3RJSiwyQkFBQTtBM0J5bUNGOztBd0IzK0JNO0VBQ0Usd0JBQUE7RUFDQSx5QkFBQTtBeEI4K0JSOztBd0J4K0JNO0VHdElKLGdCQUFBO0EzQmtuQ0Y7O0F3QnAvQk07RUFDRSx3QkFBQTtFQUNBLHlCQUFBO0F4QnUvQlI7O0F3QmovQk07RUd0SUosMkJBQUE7QTNCMm5DRjs7QXdCNy9CTTtFQUNFLGFBQUE7RUFDQSxjQUFBO0F4QmdnQ1I7O0F3QjEvQk07RUd0SUosMkJBQUE7QTNCb29DRjs7QXdCdGdDTTtFQUNFLHdCQUFBO0VBQ0EseUJBQUE7QXhCeWdDUjs7QXdCbmdDTTtFR3RJSixnQkFBQTtBM0I2b0NGOztBd0IvZ0NNO0VBQ0Usd0JBQUE7RUFDQSx5QkFBQTtBeEJraENSOztBd0I1Z0NNO0VHdElKLDJCQUFBO0EzQnNwQ0Y7O0F3QnhoQ007RUFDRSxhQUFBO0VBQ0EsY0FBQTtBeEIyaENSOztBd0JyaENNO0VHdElKLDJCQUFBO0EzQitwQ0Y7O0F3QmppQ007RUFDRSx3QkFBQTtFQUNBLHlCQUFBO0F4Qm9pQ1I7O0F3QjloQ007RUd0SUosZ0JBQUE7QTNCd3FDRjs7QXdCMWlDTTtFQUNFLHdCQUFBO0VBQ0EseUJBQUE7QXhCNmlDUjs7QXdCdmlDTTtFR3RJSiwyQkFBQTtBM0JpckNGOztBd0JuakNNO0VBQ0UsY0FBQTtFQUNBLGVBQUE7QXhCc2pDUjs7QXdCaGpDTTtFR3RJSiwyQkFBQTtBM0IwckNGOztBd0I3aUNNO0VBMUdKLGVBQUE7QXhCMnBDRjtBd0J6cENFO0VBR0UsY0FBQTtFQUNBLGVBSE07QXhCNHBDVjs7QXdCcmpDTTtFQTFHSixlQUFBO0F4Qm1xQ0Y7QXdCanFDRTtFQUdFLGFBQUE7RUFDQSxjQUhNO0F4Qm9xQ1Y7O0F3QjdqQ007RUExR0osZUFBQTtBeEIycUNGO0F3QnpxQ0U7RUFHRSx3QkFBQTtFQUNBLHlCQUhNO0F4QjRxQ1Y7O0F3QnJrQ007RUExR0osZUFBQTtBeEJtckNGO0F3QmpyQ0U7RUFHRSxhQUFBO0VBQ0EsY0FITTtBeEJvckNWOztBd0I3a0NNO0VBMUdKLGVBQUE7QXhCMnJDRjtBd0J6ckNFO0VBR0UsYUFBQTtFQUNBLGNBSE07QXhCNHJDVjs7QXdCcmxDTTtFQTFHSixlQUFBO0F4Qm1zQ0Y7QXdCanNDRTtFQUdFLHdCQUFBO0VBQ0EseUJBSE07QXhCb3NDVjs7QXdCN2xDTTtFQTFHSixlQUFBO0F4QjJzQ0Y7QXdCenNDRTtFQUdFLHdCQUFBO0VBQ0EseUJBSE07QXhCNHNDVjs7QXdCcm1DTTtFQTFHSixlQUFBO0F4Qm10Q0Y7QXdCanRDRTtFQUdFLGVBQUE7RUFDQSxnQkFITTtBeEJvdENWOztBd0JobENNO0VFdE5GLGdCQUZVO0VBR1YsZUFIVTtBMUI2eUNkOztBd0JqbENNO0VFMU5GLDhCQUZVO0VBR1YsNkJBSFU7QTFCa3pDZDs7QW1CaHFDTTtFSzBCQTtJQUNFLHVCQUFBO0lBQ0Esd0JBQUE7RXhCMG9DTjtFd0Jwb0NJO0lHdElKLGVBQUE7RTNCNndDQTtFd0Ivb0NJO0lBQ0Usd0JBQUE7SUFDQSx5QkFBQTtFeEJpcENOO0V3QjNvQ0k7SUd0SUosMEJBQUE7RTNCb3hDQTtFd0J0cENJO0lBQ0UsYUFBQTtJQUNBLGNBQUE7RXhCd3BDTjtFd0JscENJO0lHdElKLDJCQUFBO0UzQjJ4Q0E7RXdCN3BDSTtJQUNFLHdCQUFBO0lBQ0EseUJBQUE7RXhCK3BDTjtFd0J6cENJO0lHdElKLGdCQUFBO0UzQmt5Q0E7RXdCcHFDSTtJQUNFLHdCQUFBO0lBQ0EseUJBQUE7RXhCc3FDTjtFd0JocUNJO0lHdElKLDJCQUFBO0UzQnl5Q0E7RXdCM3FDSTtJQUNFLGFBQUE7SUFDQSxjQUFBO0V4QjZxQ047RXdCdnFDSTtJR3RJSiwyQkFBQTtFM0JnekNBO0V3QmxyQ0k7SUFDRSx3QkFBQTtJQUNBLHlCQUFBO0V4Qm9yQ047RXdCOXFDSTtJR3RJSixnQkFBQTtFM0J1ekNBO0V3QnpyQ0k7SUFDRSx3QkFBQTtJQUNBLHlCQUFBO0V4QjJyQ047RXdCcnJDSTtJR3RJSiwyQkFBQTtFM0I4ekNBO0V3QmhzQ0k7SUFDRSxhQUFBO0lBQ0EsY0FBQTtFeEJrc0NOO0V3QjVyQ0k7SUd0SUosMkJBQUE7RTNCcTBDQTtFd0J2c0NJO0lBQ0Usd0JBQUE7SUFDQSx5QkFBQTtFeEJ5c0NOO0V3Qm5zQ0k7SUd0SUosZ0JBQUE7RTNCNDBDQTtFd0I5c0NJO0lBQ0Usd0JBQUE7SUFDQSx5QkFBQTtFeEJndENOO0V3QjFzQ0k7SUd0SUosMkJBQUE7RTNCbTFDQTtFd0JydENJO0lBQ0UsY0FBQTtJQUNBLGVBQUE7RXhCdXRDTjtFd0JqdENJO0lHdElKLDJCQUFBO0UzQjAxQ0E7RXdCN3NDSTtJQTFHSixlQUFBO0V4QjB6Q0E7RXdCeHpDQTtJQUdFLGNBQUE7SUFDQSxlQUhNO0V4QjJ6Q1I7RXdCcHRDSTtJQTFHSixlQUFBO0V4QmkwQ0E7RXdCL3pDQTtJQUdFLGFBQUE7SUFDQSxjQUhNO0V4QmswQ1I7RXdCM3RDSTtJQTFHSixlQUFBO0V4QncwQ0E7RXdCdDBDQTtJQUdFLHdCQUFBO0lBQ0EseUJBSE07RXhCeTBDUjtFd0JsdUNJO0lBMUdKLGVBQUE7RXhCKzBDQTtFd0I3MENBO0lBR0UsYUFBQTtJQUNBLGNBSE07RXhCZzFDUjtFd0J6dUNJO0lBMUdKLGVBQUE7RXhCczFDQTtFd0JwMUNBO0lBR0UsYUFBQTtJQUNBLGNBSE07RXhCdTFDUjtFd0JodkNJO0lBMUdKLGVBQUE7RXhCNjFDQTtFd0IzMUNBO0lBR0Usd0JBQUE7SUFDQSx5QkFITTtFeEI4MUNSO0V3QnZ2Q0k7SUExR0osZUFBQTtFeEJvMkNBO0V3QmwyQ0E7SUFHRSx3QkFBQTtJQUNBLHlCQUhNO0V4QnEyQ1I7RXdCOXZDSTtJQTFHSixlQUFBO0V4QjIyQ0E7RXdCejJDQTtJQUdFLGVBQUE7SUFDQSxnQkFITTtFeEI0MkNSO0FBQ0Y7QW1CL3lDTTtFS2lERTtJQUNFLFNBQUE7RXhCaXdDUjtBQUNGO0F3QjN2Q1U7RUFDRSxjQUFBO0F4QjZ2Q1o7QW1CdnpDTTtFS3lESTtJQUlJLFNBQUE7RXhCOHZDWjtFd0JydkNJO0lFdE5GLGdCQUZVO0lBR1YsZUFIVTtFMUJpOUNaO0V3QnJ2Q0k7SUUxTkYsOEJBRlU7SUFHViw2QkFIVTtFMUJxOUNaO0FBQ0Y7O0FtQnAwQ007RUswQkE7SUFDRSx1QkFBQTtJQUNBLHdCQUFBO0V4Qjh5Q047RXdCeHlDSTtJR3RJSixlQUFBO0UzQmk3Q0E7RXdCbnpDSTtJQUNFLHdCQUFBO0lBQ0EseUJBQUE7RXhCcXpDTjtFd0IveUNJO0lHdElKLDBCQUFBO0UzQnc3Q0E7RXdCMXpDSTtJQUNFLGFBQUE7SUFDQSxjQUFBO0V4QjR6Q047RXdCdHpDSTtJR3RJSiwyQkFBQTtFM0IrN0NBO0V3QmowQ0k7SUFDRSx3QkFBQTtJQUNBLHlCQUFBO0V4Qm0wQ047RXdCN3pDSTtJR3RJSixnQkFBQTtFM0JzOENBO0V3QngwQ0k7SUFDRSx3QkFBQTtJQUNBLHlCQUFBO0V4QjAwQ047RXdCcDBDSTtJR3RJSiwyQkFBQTtFM0I2OENBO0V3Qi8wQ0k7SUFDRSxhQUFBO0lBQ0EsY0FBQTtFeEJpMUNOO0V3QjMwQ0k7SUd0SUosMkJBQUE7RTNCbzlDQTtFd0J0MUNJO0lBQ0Usd0JBQUE7SUFDQSx5QkFBQTtFeEJ3MUNOO0V3QmwxQ0k7SUd0SUosZ0JBQUE7RTNCMjlDQTtFd0I3MUNJO0lBQ0Usd0JBQUE7SUFDQSx5QkFBQTtFeEIrMUNOO0V3QnoxQ0k7SUd0SUosMkJBQUE7RTNCaytDQTtFd0JwMkNJO0lBQ0UsYUFBQTtJQUNBLGNBQUE7RXhCczJDTjtFd0JoMkNJO0lHdElKLDJCQUFBO0UzQnkrQ0E7RXdCMzJDSTtJQUNFLHdCQUFBO0lBQ0EseUJBQUE7RXhCNjJDTjtFd0J2MkNJO0lHdElKLGdCQUFBO0UzQmcvQ0E7RXdCbDNDSTtJQUNFLHdCQUFBO0lBQ0EseUJBQUE7RXhCbzNDTjtFd0I5MkNJO0lHdElKLDJCQUFBO0UzQnUvQ0E7RXdCejNDSTtJQUNFLGNBQUE7SUFDQSxlQUFBO0V4QjIzQ047RXdCcjNDSTtJR3RJSiwyQkFBQTtFM0I4L0NBO0V3QmozQ0k7SUExR0osZUFBQTtFeEI4OUNBO0V3QjU5Q0E7SUFHRSxjQUFBO0lBQ0EsZUFITTtFeEIrOUNSO0V3QngzQ0k7SUExR0osZUFBQTtFeEJxK0NBO0V3Qm4rQ0E7SUFHRSxhQUFBO0lBQ0EsY0FITTtFeEJzK0NSO0V3Qi8zQ0k7SUExR0osZUFBQTtFeEI0K0NBO0V3QjErQ0E7SUFHRSx3QkFBQTtJQUNBLHlCQUhNO0V4QjYrQ1I7RXdCdDRDSTtJQTFHSixlQUFBO0V4Qm0vQ0E7RXdCai9DQTtJQUdFLGFBQUE7SUFDQSxjQUhNO0V4Qm8vQ1I7RXdCNzRDSTtJQTFHSixlQUFBO0V4QjAvQ0E7RXdCeC9DQTtJQUdFLGFBQUE7SUFDQSxjQUhNO0V4QjIvQ1I7RXdCcDVDSTtJQTFHSixlQUFBO0V4QmlnREE7RXdCLy9DQTtJQUdFLHdCQUFBO0lBQ0EseUJBSE07RXhCa2dEUjtFd0IzNUNJO0lBMUdKLGVBQUE7RXhCd2dEQTtFd0J0Z0RBO0lBR0Usd0JBQUE7SUFDQSx5QkFITTtFeEJ5Z0RSO0V3Qmw2Q0k7SUExR0osZUFBQTtFeEIrZ0RBO0V3QjdnREE7SUFHRSxlQUFBO0lBQ0EsZ0JBSE07RXhCZ2hEUjtBQUNGO0FtQm45Q007RUtpREU7SUFDRSxTQUFBO0V4QnE2Q1I7QUFDRjtBd0IvNUNVO0VBQ0UsY0FBQTtBeEJpNkNaO0FtQjM5Q007RUt5REk7SUFJSSxTQUFBO0V4Qms2Q1o7RXdCejVDSTtJRXRORixnQkFGVTtJQUdWLGVBSFU7RTFCcW5EWjtFd0J6NUNJO0lFMU5GLDhCQUZVO0lBR1YsNkJBSFU7RTFCeW5EWjtBQUNGOztBd0J6NUNFO0VBQ0UsY0FBQTtFQUNBLGVBQUE7QXhCNDVDSjs7QXdCeDVDRTtFRS9MRSw4QkFEZ0I7QTFCNGxEcEI7QTBCemxESTtFQUNFLGdCQUFBO0ExQjJsRE47QW1CcC9DTTtFS3FGSjtJRS9MRSw4QkFEZ0I7RTFCbW1EbEI7RTBCaG1ERTtJQUNFLGdCQUFBO0UxQmttREo7QUFDRjs7QTRCejVDRTtFQWhMQSxxQkFBQTtFQUNBLHNCQUFBO0VBQ0Esa0JwQm1OYztFb0J6TVosbUJwQndNYTtFb0JyTWYsNkJBQUE7RUFDQSxrQnBCSWM7RW9CSGQsaUVwQnVOa0I7RW9CdE5sQixnRnBCUmlCO0VvQlNqQixpQkFBQTtFQUNBLHdCQUFBO0VBQ0EsY0FBQTtFQUNBLGtCQUFBO0VBQ0EsZUFBQTtFQXFDQSx5QlI5Qm9CO0VRK0JwQixjcEI5RE07QVI0bERSO0FTMytDRTtFQUNFLFVBQUE7QVQ2K0NKO0E0Qi9oREU7RUFDRSxtRXBCd0pzQjtFb0J2SnRCLGNwQmxFSTtBUm1tRFI7QTRCNzZDTTtFQUNFLGtCQUZtQjtBNUJpN0MzQjtBNEJoN0NNO0VBQ0UsaUJBRm1CO0E1Qm83QzNCO0E0Qm43Q007RUFDRSxpQkFGbUI7QTVCdTdDM0I7QTRCdDdDTTtFQUNFLGVBRm1CO0E1QjA3QzNCO0E0QnA3Q0k7RUE1SkEsY0FBQTtFQUNBLFdBQUE7RUFDQSxlQUFBO0VBQ0EsY0FBQTtBNUJtbERKO0E0Qjk1Q1E7RUExSk4seUJwQi9FbUI7RW9CZ0ZuQixjQVJVO0E1Qm1rRFo7QTRCempERTtFQUNFLHdDQVBtQjtFQVFuQixjQVpRO0E1QnVrRFo7QTRCdDZDUTtFQTFKTix5QnBCL0VtQjtFb0JnRm5CLGNBUlU7QTVCMmtEWjtBNEJqa0RFO0VBQ0Usd0NBUG1CO0VBUW5CLGNBWlE7QTVCK2tEWjtBNEI5NkNRO0VBMUpOLHlCcEIvRW1CO0VvQmdGbkIsY0FSVTtBNUJtbERaO0E0QnprREU7RUFDRSxtRUFQbUI7RUFRbkIsY0FaUTtBNUJ1bERaO0E0QnQ3Q1E7RUExSk4seUJwQi9FbUI7RW9CZ0ZuQixjQVJVO0E1QjJsRFo7QTRCamxERTtFQUNFLHNDQVBtQjtFQVFuQixjQVpRO0E1QitsRFo7QTRCOTdDUTtFQTFKTix5QnBCL0VtQjtFb0JnRm5CLGNBUlU7QTVCbW1EWjtBNEJ6bERFO0VBQ0UseUNBUG1CO0VBUW5CLGNBWlE7QTVCdW1EWjtBNEJ0OENRO0VBMUpOLHlCcEIvRW1CO0VvQmdGbkIsY0FSVTtBNUIybURaO0E0QmptREU7RUFDRSxvQ0FQbUI7RUFRbkIsY0FaUTtBNUIrbURaO0E0Qjk4Q1E7RUExSk4seUJwQi9FbUI7RW9CZ0ZuQixjQVJVO0E1Qm1uRFo7QTRCem1ERTtFQUNFLHFFQVBtQjtFQVFuQixjQVpRO0E1QnVuRFo7QTRCdDlDUTtFQTFKTix5QnBCL0VtQjtFb0JnRm5CLGNBUlU7QTVCMm5EWjtBNEJqbkRFO0VBQ0UsdUNBUG1CO0VBUW5CLGNBWlE7QTVCK25EWjtBNEI5OUNRO0VBMUpOLHlCcEIvRW1CO0VvQmdGbkIsY0FSVTtBNUJtb0RaO0E0QnpuREU7RUFDRSxvRUFQbUI7RUFRbkIsY0FaUTtBNUJ1b0RaO0E0QnQrQ1E7RUExSk4seUJwQi9FbUI7RW9CZ0ZuQixjQVJVO0E1QjJvRFo7QTRCam9ERTtFQUNFLG1FQVBtQjtFQVFuQixjQVpRO0E1QitvRFo7QTRCOStDUTtFQTFKTix5QnBCL0VtQjtFb0JnRm5CLGNBUlU7QTVCbXBEWjtBNEJ6b0RFO0VBQ0UscUVBUG1CO0VBUW5CLGNBWlE7QTVCdXBEWjtBNEJ0K0NJO0VBaEhGLGFwQitHd0I7RW9COUd4QixtQkFBQTtBNUJ5bERGO0E0QnZsREU7RUFDRSx5QlI1RmtCO0VRNkZsQixjcEI1SEk7QVJxdERSO0E0QnorQ1E7RUFySE4sYXBCK0d3QjtFb0I5R3hCLG1CQUFBO0E1QmltREY7QTRCL2xERTtFQUNFLHlCcEI3SWlCO0VvQjhJakIsY0FSUTtBNUJ5bURaO0E0QmovQ1E7RUFySE4sYXBCK0d3QjtFb0I5R3hCLG1CQUFBO0E1QnltREY7QTRCdm1ERTtFQUNFLHlCcEI3SWlCO0VvQjhJakIsY0FSUTtBNUJpbkRaO0E0QnovQ1E7RUFySE4sYXBCK0d3QjtFb0I5R3hCLG1CQUFBO0E1QmluREY7QTRCL21ERTtFQUNFLHlCcEI3SWlCO0VvQjhJakIsY0FSUTtBNUJ5bkRaO0E0QmpnRFE7RUFySE4sYXBCK0d3QjtFb0I5R3hCLG1CQUFBO0E1QnluREY7QTRCdm5ERTtFQUNFLHlCcEI3SWlCO0VvQjhJakIsY0FSUTtBNUJpb0RaO0E0QnpnRFE7RUFySE4sYXBCK0d3QjtFb0I5R3hCLG1CQUFBO0E1QmlvREY7QTRCL25ERTtFQUNFLHlCcEI3SWlCO0VvQjhJakIsY0FSUTtBNUJ5b0RaO0E0QmpoRFE7RUFySE4sYXBCK0d3QjtFb0I5R3hCLG1CQUFBO0E1QnlvREY7QTRCdm9ERTtFQUNFLHlCcEI3SWlCO0VvQjhJakIsY0FSUTtBNUJpcERaO0E0QnpoRFE7RUFySE4sYXBCK0d3QjtFb0I5R3hCLG1CQUFBO0E1QmlwREY7QTRCL29ERTtFQUNFLHlCcEI3SWlCO0VvQjhJakIsY0FSUTtBNUJ5cERaO0E0QmppRFE7RUFySE4sYXBCK0d3QjtFb0I5R3hCLG1CQUFBO0E1QnlwREY7QTRCdnBERTtFQUNFLHlCcEI3SWlCO0VvQjhJakIsY0FSUTtBNUJpcURaO0E0QnppRFE7RUFySE4sYXBCK0d3QjtFb0I5R3hCLG1CQUFBO0E1QmlxREY7QTRCL3BERTtFQUNFLHlCcEI3SWlCO0VvQjhJakIsY0FSUTtBNUJ5cURaO0E0QmpqRFE7RUFySE4sYXBCK0d3QjtFb0I5R3hCLG1CQUFBO0E1QnlxREY7QTRCdnFERTtFQUNFLHlCcEI3SWlCO0VvQjhJakIsY0FSUTtBNUJpckRaO0E0QnpqRFE7RUFySE4sYXBCK0d3QjtFb0I5R3hCLG1CQUFBO0E1QmlyREY7QTRCL3FERTtFQUNFLHlCcEI3SWlCO0VvQjhJakIsY0FSUTtBNUJ5ckRaO0E0QnpqRE07RUF0SkoseUJBQUE7RUFDQSxjUmhFb0I7QXBCa3hEdEI7QTRCenVERTtFQUdFLDZCQUFBO0E1Qnl1REo7QTRCcHVESTtFQUVFLDZCQUFBO0E1QnF1RE47QTRCdHRERTtFQUNFLDhEQU5ZO0VBT1osdURBUFk7QTVCK3REaEI7QTRCdnRESTtFQUVFLHlCQUFBO0VBQ0EsY1J4RWdCO0FwQmd5RHRCO0E0QnRrRFU7RUEzSlIseUJBQUE7RUFDQSxjcEJqSG1CO0FScTFEckI7QTRCbHVERTtF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RUFDQSxXQUFBO0VBQ0EsY0FBQTtBNUIyM0ROOztBNEJ0M0RJO0VBRUUscUJBQUE7QTVCdzNETjs7QTZCL3RFRTtFQVpBLHFCQUFBO0VBQ0EsMEJyQndiYztFcUJ0YmQsb0JyQnViYTtFcUJyYmIsMEJyQm1iZ0I7RXFCbGJoQixjQUFBO0VBQ0EsbUJBQUE7RUFDQSxlQUFBO0VBT0UsbUJUNkRnQjtFUzVEaEIsY3JCa0NJO0FScXNFUjtBNkJwdUVNO0VBQ0UsbUJyQllhO0VxQlhiLGNBQUE7QTdCc3VFUjtBNkJ4dUVNO0VBQ0UsbUJyQllhO0VxQlhiLGNBQUE7QTdCMHVFUjtBNkI1dUVNO0VBQ0UsbUJyQllhO0VxQlhiLGNBQUE7QTdCOHVFUjtBNkJodkVNO0VBQ0UsbUJyQllhO0VxQlhiLGNBQUE7QTdCa3ZFUjtBNkJwdkVNO0VBQ0UsbUJyQllhO0VxQlhiLGNBQUE7QTdCc3ZFUjtBNkJ4dkVNO0VBQ0UsbUJyQllhO0VxQlhiLGNBQUE7QTdCMHZFUjtBNkI1dkVNO0VBQ0UsbUJyQllhO0VxQlhiLGNBQUE7QTdCOHZFUjtBNkJod0VNO0VBQ0UsbUJyQllhO0VxQlhiLGNBQUE7QTdCa3dFUjtBNkJwd0VNO0VBQ0UsbUJyQllhO0VxQlhiLGNBQUE7QTdCc3dFUjtBNkJ4d0VNO0VBQ0UsbUJyQllhO0VxQlhiLGNBQUE7QTdCMHdFUjtBNkI1d0VNO0VBQ0UsbUJyQllhO0VxQlhiLGNBQUE7QTdCOHdFUjs7QThCL3hFRTtFQXBDQSx1QnRCc2pCZ0I7RXNCcmpCaEIsbUJ0QjhGYztFc0I3RmQsZ0J0QndqQmdCO0VzQnZqQmhCLHlCdEJpRlk7QVJzdkVkO0E4Qmp5RVE7RUFDRSx5QnRCc0JXO0FSNndFckI7QThCcHlFUTtFQUNFLHlCdEJzQlc7QVJneEVyQjtBOEJ2eUVRO0VBQ0UseUJ0QnNCVztBUm14RXJCO0E4QjF5RVE7RUFDRSx5QnRCc0JXO0FSc3hFckI7QThCN3lFUTtFQUNFLHlCdEJzQlc7QVJ5eEVyQjtBOEJoekVRO0VBQ0UseUJ0QnNCVztBUjR4RXJCO0E4Qm56RVE7RUFDRSx5QnRCc0JXO0FSK3hFckI7QThCdHpFUTtFQUNFLHlCdEJzQlc7QVJreUVyQjtBOEJ6ekVRO0VBQ0UseUJ0QnNCVztBUnF5RXJCO0E4QjV6RVE7RUFDRSx5QnRCc0JXO0FSd3lFckI7QThCL3pFUTtFQUNFLHlCdEJzQlc7QVIyeUVyQjs7QThCMXpFRTtFQXpDQSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxTQUFBO0VBQ0EsWUFBQTtFQUNBLHlCVmdHa0I7QXBCdXdFcEI7O0E4Qjd6RUU7RXJCNkxBLGtCQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSxnQ0FBQTtFcUJoT0Esa0JBQUE7RUFDQSxTQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQkFBQTtFQUNBLGN0QndETTtFc0J2RE4sbUJBQUE7QTlCcTJFRjs7QStCejJFRTtFQUNFLGNBQUE7RUFDQSxXQUFBO0VBQ0EsdUJ2QjRoQmM7RXVCM2hCZCxtQnZCb0VZO0V1QmxFWix3QkFBQTtLQUFBLHFCQUFBO1VBQUEsZ0JBQUE7RUFPQSxTQUFBO0VBQ0EsbUJ2QitDVTtBUnN6RWQ7QStCbjJFSTtFQUNFLG1CdkI0Q1E7QVJ5ekVkO0ErQjkxRUk7RUFDRSxtQlg0RGM7QXBCb3lFcEI7QStCejFFSTtFQUNFLG1CWG9EYztBcEJ1eUVwQjtBK0JuMUVNO0VBRUUsY3ZCRmE7QVJzMUVyQjtBK0JsMUVRO0VBQ0UsbUJ2QkxXO0FSeTFFckI7QStCajFFUTtFQUNFLG1CdkJUVztBUjQxRXJCO0ErQjUxRU07RUFFRSxjdkJGYTtBUisxRXJCO0ErQjMxRVE7RUFDRSxtQnZCTFc7QVJrMkVyQjtBK0IxMUVRO0VBQ0UsbUJ2QlRXO0FScTJFckI7QStCcjJFTTtFQUVFLGN2QkZhO0FSdzJFckI7QStCcDJFUTtFQUNFLG1CdkJMVztBUjIyRXJCO0ErQm4yRVE7RUFDRSxtQnZCVFc7QVI4MkVyQjtBK0I5MkVNO0VBRUUsY3ZCRmE7QVJpM0VyQjtBK0I3MkVRO0VBQ0UsbUJ2QkxXO0FSbzNFckI7QStCNTJFUTtFQUNFLG1CdkJUVztBUnUzRXJCO0ErQnYzRU07RUFFRSxjdkJGYTtBUjAzRXJCO0ErQnQzRVE7RUFDRSxtQnZCTFc7QVI2M0VyQjtBK0JyM0VRO0VBQ0UsbUJ2QlRXO0FSZzRFckI7QStCaDRFTTtFQUVFLGN2QkZhO0FSbTRFckI7QStCLzNFUTtFQUNFLG1CdkJMVztBUnM0RXJCO0ErQjkzRVE7RUFDRSxtQnZCVFc7QVJ5NEVyQjtBK0J6NEVNO0VBRUUsY3ZCRmE7QVI0NEVyQjtBK0J4NEVRO0VBQ0UsbUJ2QkxXO0FSKzRFckI7QStCdjRFUTtFQUNFLG1CdkJUVztBUms1RXJCO0ErQmw1RU07RUFFRSxjdkJGYTtBUnE1RXJCO0ErQmo1RVE7RUFDRSxtQnZCTFc7QVJ3NUVyQjtBK0JoNUVRO0VBQ0UsbUJ2QlRXO0FSMjVFckI7QStCMzVFTTtFQUVFLGN2QkZhO0FSODVFckI7QStCMTVFUTtFQUNFLG1CdkJMVztBUmk2RXJCO0ErQno1RVE7RUFDRSxtQnZCVFc7QVJvNkVyQjtBK0JwNkVNO0VBRUUsY3ZCRmE7QVJ1NkVyQjtBK0JuNkVRO0VBQ0UsbUJ2QkxXO0FSMDZFckI7QStCbDZFUTtFQUNFLG1CdkJUVztBUjY2RXJCO0ErQjc2RU07RUFFRSxjdkJGYTtBUmc3RXJCO0ErQjU2RVE7RUFDRSxtQnZCTFc7QVJtN0VyQjtBK0IzNkVRO0VBQ0UsbUJ2QlRXO0FSczdFckI7QStCdjZFSTtFQUtFLFNBQUE7QS9CcTZFTjs7QWdDL3NFRTtFQTlHQSx5QkFBQTtFQUNBLFdBQUE7RUFDQSxtQnhCL0ZjO0V3QmdHZCxrQnhCeEZjO0FSeTVFaEI7QWdDeDVFRTs7O0VBR0UsNkN4QjBxQlc7RXdCenFCWCx5QnhCMUJJO0FSbzdFUjs7QWdDdDVFRTtFQUNFLHdEeEJxcUJZO0V3QnBxQlosaUJ4QlppQjtBUnE2RXJCOztBZ0NyNUVFO0VBQ0UsbUJ4QnNxQm9CO0V3QnJxQnBCLGN4QnRDSTtBUjg3RVI7O0FnQ3A1RUU7RUFDRSx1Q3hCa3FCb0I7RXdCanFCcEIsY3hCeENJO0FSKzdFUjs7QWdDaDVFSTs7RUFDRSx1QkFBQTtBaENvNUVOO0FnQ2g1RUk7Ozs7RUFFRSx3RHhCMG9CVTtFd0J6b0JWLGlCeEJ2Q2U7RXdCd0NmLGdCQUFBO0FoQ281RU47O0FnQzk0RUk7O0VBRUUsd0R4QmdvQlU7QVJpeERoQjs7QWdDdjlFTTtFQUNFLGdCQUFBO0VBQ0EsNkN4QnlzQm1CO0FSaXhEM0I7O0FnQzM0RU07RUFFRSx5QnhCakZBO0FSODlFUjtBZ0NoOUVFO0VBQ0UsZ0JBQUE7RUFDQSxvRHhCbXJCVztFd0JsckJYLHlCeEJqQkk7QVJtK0VSOztBbUJoNUVNO0VhZ0hGO0lBQ0UsYUFBQTtFaENveUVKO0VnQ2h5RUE7SUFDRSxhQUFBO0VoQ2t5RUY7RWdDL3hFQTs7O0lBR0UsY0FBQTtFaENpeUVGO0VnQzl4RUE7SUFDRSxhQUFBO0VoQ2d5RUY7QUFDRjs7QWdDbHhFRTtFQXZHQSxjQUFBO0VBQ0EsV0FBQTtFQUNBLGdCQUFBO0FoQzYzRUY7O0FnQ3QzRUk7RUFDRSxvRXhCdWtCaUI7QVJrekR2QjtBZ0NuM0VJO0VBQ0UsNkN4QmtrQmlCO0FSbXpEdkI7QWdDLzJFSTtFQUNFLDBDeEJtakJZO0FSOHpEbEI7QWdDMTJFTTtFQUNFLDZDeEI0aUJpQjtBUmcwRHpCOztBZ0M3eEVFO0VBQ0UsZ0JBQUE7QWhDZ3lFSjs7QWlDbGpGRTtFQVhBLHFCQUFBO0VBQ0EsZ0J6QmdQZTtFeUIvT2YsY3pCOE9jO0V5QjVPZCxrQkFBQTtFQUVBLGlCekI0T2dCO0V5QjNPaEIsa0JBQUE7RUFPRSxtQmI4RGdCO0VhN0RoQixjekJtQ0k7QVJzaEZSO0FpQ3RqRk07RUFDRSxtQnpCYWE7RXlCWmIsY0FBQTtBakN3akZSO0FpQzFqRk07RUFDRSxtQnpCYWE7RXlCWmIsY0FBQTtBakM0akZSO0FpQzlqRk07RUFDRSxtQnpCYWE7RXlCWmIsY0FBQTtBakNna0ZSO0FpQ2xrRk07RUFDRSxtQnpCYWE7RXlCWmIsY0FBQTtBakNva0ZSO0FpQ3RrRk07RUFDRSxtQnpCYWE7RXlCWmIsY0FBQTtBakN3a0ZSO0FpQzFrRk07RUFDRSxtQnpCYWE7RXlCWmIsY0FBQTtBakM0a0ZSO0FpQzlrRk07RUFDRSxtQnpCYWE7RXlCWmIsY0FBQTtBakNnbEZSO0FpQ2xsRk07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QUFBO0V4Q3dnR0o7QUFDRjtBd0N0dEZJO0VBektBLGVBQUE7RUFDQSxpQmhDeEh3QjtBUjAvRjVCO0F3QzEzRkk7RUFDRSxhQUFBO0F4QzQzRk47QXdDNzNGSTtFQUNFLGFBQUE7QXhDKzNGTjtBd0M1MkZJO0VBRUkscUJBQUE7QXhDNjJGUjtBd0MxMkZNOzs7RUFHRSxxQmhDdU9ZO0FScW9GcEI7QXdDbjJGSTtFQUVJLHFCQUFBO0F4Q28yRlI7QXdDajJGTTs7O0VBR0Usb0JoQ3NOWTtBUjZvRnBCO0F3QzExRkk7RUFFSSx3QkFBQTtBeEMyMUZSO0F3Q3IxRk07OztFQVFJLG1CQUFBO0VBQ0Esc0JoQzRMVTtFZ0MzTFYsa0JBQUE7QXhDazFGVjtBd0M1MEZJO0VBRUksd0JBQUE7QXhDNjBGUjtBd0N2MEZNOzs7RUFRSSxtQkFBQTtFQUNBLHNCaENvS1U7RWdDbktWLGtCQUFBO0F4Q28wRlY7QXdDNXRGSTtFQXhGRix1QmhDa0o0QjtFZ0NqSjVCLGNoQ3hRTTtBUitqR1I7QXdDMXRGTTtFQTlGSix1QmhDa0o0QjtFZ0NqSjVCLGNoQ3hRTTtBUm1rR1I7QXdDeHRGSTtFQXJWRSwyQkFBQTtBeENnakdOO0F3Q3hpR007RUFDRSxhQUFBO0VBQ0EseUJBQUE7QXhDMGlHUjtBd0N4aUdRO0VBQ0UsMkJBQUE7QXhDMGlHVjtBd0N0aUdNO0VBQ0UsY0FBQTtFQUNBLGlCakNOTztBUDhpR2Y7QXdDdGlHUTtFQUNFLGlCakNUSztBUGlqR2Y7QXdDanVGTTtFQXpPRixrQmhDbkh3QjtFZ0NvSHhCLGNBQUE7QXhDNjhGSjtBd0N4aEdNO0VBQ0UsYUFBQTtFQUNBLHVCQUFBO0F4QzBoR1I7QXdDeGhHUTtFQUNFLDJCQUFBO0F4QzBoR1Y7QXdDbHVGSTtFQTlIRixzQmhDek9vQjtFZ0MyT3BCLGlCQUFBO0VBQ0EsY0FBQTtFQUNBLGNBQUE7QXhDazJGRjs7QXdDanVGTTtFQUVJLHVCQUFBO0F4Q211RlY7QXdDemlHTTtFQUNFLGFBQUE7RUFDQSx1QkFBQTtBeEMyaUdSO0F3Q3ppR1E7RUFDRSwyQkFBQTtBeEMyaUdW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NkdJO0VDbkJGLDJCQWhCUTtBOUNxOUdWOztBNkNsN0dJO0VDbkJGLHlCQWhCUTtBOUN5OUdWOztBNkN0N0dJO0VDbkJGLHVCQWhCUTtBOUM2OUdWOztBNkMxN0dJO0VDbkJGLDhCQWhCUTtBOUNpK0dWOztBNkM5N0dJO0VDbkJGLDZCQWhCUTtBOUNxK0dWOztBNkN6N0dRO0VDNUJOLDJCQWhCUTtBOUN5K0dWOztBNkM3N0dRO0VDNUJOLHlCQWhCUTtBOUM2K0dWOztBNkNqOEdRO0VDNUJOLHVCQWhCUTtBOUNpL0dWOztBNkM1N0dJO0VDcENGLHVCQVJRO0E5QzQrR1Y7O0E2QzU3R0k7RUN4QkYsc0JBUFE7QTlDKzlHVjs7QTZDcDhHSTtFQ3BDRixxQkFSUTtBOUNvL0dWOztBNkNwOEdJO0VDeEJGLG9CQVBRO0E5Q3UrR1Y7O0E2QzU4R0k7RUNwQ0YsbUJBUlE7QTlDNC9HVjs7QTZDNThHSTtFQ3hCRixrQkFQUTtBOUMrK0dWOztBNkNwOUdJO0VDcENGLG9CQVJRO0E5Q29nSFY7O0E2Q3A5R0k7RUN4QkYsbUJBUFE7QTlDdS9HVjs7QTZDbDlHRTtFQy9DQSx1QkFoQlE7RUFpQlIsbUJBUlE7RUR3RE4scUJBQUE7QTdDczlHSjs7QTZDaDlHTTtFQ2hDSixRRCtCZTtBN0NxOUdqQjs7QTZDcDlHTTtFQ2hDSixRRCtCZTtBN0N5OUdqQjs7QTZDeDlHTTtFQ2hDSixRRCtCZTtBN0M2OUdqQjs7QTZDNTlHTTtFQ2hDSixRRCtCZTtBN0NpK0dqQjs7QTZDaCtHTTtFQ2hDSixRRCtCZTtBN0NxK0dqQjs7QTZDcCtHTTtFQ2hDSixRRCtCZTtBN0N5K0dqQjs7QW1CaDdHTTtFMEJ4REE7SUNoQ0osUUQrQmU7RTdDOCtHZjtFNkM3K0dJO0lDaENKLFFEK0JlO0U3Q2kvR2Y7RTZDaC9HSTtJQ2hDSixRRCtCZTtFN0NvL0dmO0U2Q24vR0k7SUNoQ0osUUQrQmU7RTdDdS9HZjtFNkN0L0dJO0lDaENKLFFEK0JlO0U3QzAvR2Y7RTZDei9HSTtJQ2hDSixRRCtCZTtFN0M2L0dmO0FBQ0Y7QW1CcjhHTTtFMEJ4REE7SUNoQ0osUUQrQmU7RTdDa2dIZjtFNkNqZ0hJO0lDaENKLFFEK0JlO0U3Q3FnSGY7RTZDcGdISTtJQ2hDSixRRCtCZTtFN0N3Z0hmO0U2Q3ZnSEk7SUNoQ0osUUQrQmU7RTdDMmdIZjtFNkMxZ0hJO0lDaENKLFFEK0JlO0U3QzhnSGY7RTZDN2dISTtJQ2hDSixRRCtCZTtFN0NpaEhmO0FBQ0Y7QTZDOW1IRTtFQ1lBLGFBQUE7QTlDcW1IRjs7QTZDN21IRTtFQUNFLGNBQUE7QTdDZ25ISjs7QTZDN21IRTtFQUNFLGNBQUE7QTdDZ25ISjs7QTZDN21IRTtFQUNFLGNBQUE7QTdDZ25ISjs7QTZDNW1ISTtFQ3NERixtQkFwRW1CO0E5QzhuSHJCOztBNkNobkhJO0VDc0RGLDJCQXBFbUI7QTlDa29IckI7O0E2Q3BuSEk7RUNzREYsc0JBcEVtQjtBOUNzb0hyQjs7QTZDeG5ISTtFQ3NERiw4QkFwRW1CO0E5QzBvSHJCOztBbUJ4L0dNO0UwQjFISTtJQ2ZSLGFBQUE7RTlDc29IQTtFNkNubkhRO0lBQ0UsY0FBQTtFN0NxbkhWO0U2Q2xuSFE7SUFDRSxjQUFBO0U3Q29uSFY7RTZDam5IUTtJQUNFLGNBQUE7RTdDbW5IVjtFNkMvbUhVO0lDMkJWLG1CQXBFbUI7RTlDMnBIbkI7RTZDbG5IVTtJQzJCViwyQkFwRW1CO0U5QzhwSG5CO0U2Q3JuSFU7SUMyQlYsc0JBcEVtQjtFOUNpcUhuQjtFNkN4bkhVO0lDMkJWLDhCQXBFbUI7RTlDb3FIbkI7QUFDRjtBbUJuaEhNO0UwQjFISTtJQ2ZSLGFBQUE7RTlDZ3FIQTtFNkM3b0hRO0lBQ0UsY0FBQTtFN0Mrb0hWO0U2QzVvSFE7SUFDRSxjQUFBO0U3QzhvSFY7RTZDM29IUTtJQUNFLGNBQUE7RTdDNm9IVjtFNkN6b0hVO0lDMkJWLG1CQXBFbUI7RTlDcXJIbkI7RTZDNW9IVTtJQzJCViwyQkFwRW1CO0U5Q3dySG5CO0U2Qy9vSFU7SUMyQlYsc0JBcEVtQjtFOUMyckhuQjtFNkNscEhVO0lDMkJWLDhCQXBFbUI7RTlDOHJIbkI7QUFDRjtBK0NucEhFO0VBQ0Usd0JBQUE7QS9DcXBISjs7QStDbHBIRTtFQUNFLGtCQUFBO0EvQ3FwSEo7O0FtQi9pSE07RTRCdkZGO0lBMUJBLHdCQUFBO0UvQ3FxSEY7QUFDRjs7QStDenJISTtFQWlEQTtJQWhERSx3QkFBQTtFL0M2ckhKO0FBQ0Y7O0FtQmhrSE07RTRCM0ZBO0lBekJGLHdCQUFBO0UvQ3lySEY7QUFDRjs7QW1CamtITTtFNEI1RkE7SUFqRUYsd0JBQUE7RS9DbXVIRjtBQUNGOztBbUJ2a0hNO0U0QnZGRjtJQTFCQSx3QkFBQTtFL0M2ckhGO0FBQ0Y7O0ErQ2p0SEk7RUFpREE7SUFoREUsd0JBQUE7RS9DcXRISjtBQUNGOztBbUJ4bEhNO0U0QjNGQTtJQXpCRix3QkFBQTtFL0NpdEhGO0FBQ0Y7O0FtQnpsSE07RTRCNUZBO0lBakVGLHdCQUFBO0UvQzJ2SEY7QUFDRjs7QW1CL2xITTtFNEJ2RkY7SUExQkEsd0JBQUE7RS9DcXRIRjtBQUNGOztBK0N6dUhJO0VBaURBO0lBaERFLHdCQUFBO0UvQzZ1SEo7QUFDRjs7QStDdnJIRTs7RXRDbUhBLDZCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxzQkFBQTtFQUNBLG1CQUFBO0VBQ0EsU0FBQTtBVHlrSEY7O0ErQzVySEk7RXRDd0hGLDJCQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxpQkFBQTtFQUNBLFVBQUE7RUFDQSxtQkFBQTtBVHdrSEY7O0ErQzlySEU7O0VBRUUseUJBQUE7QS9DaXNISjtBbUJyb0hNO0U0QjlESjs7SUFLSSx5QkFBQTtFL0Ntc0hKO0FBQ0Y7QW1CM29ITTtFNEI5REo7O0lBU0ksd0JBQUE7RS9DcXNISjtBQUNGOztBK0Nsc0hFOztFQUVFLHdCQUFBO0EvQ3FzSEo7QW1CdHBITTtFNEJqREo7O0lBS0ksd0JBQUE7RS9DdXNISjtBQUNGO0FtQjVwSE07RTRCakRKOztJQVNJLHlCQUFBO0UvQ3lzSEo7QUFDRjs7QWdEeHpISTtFQ2xCRiwwQkFBQTtFQUNBLGtDQUFBO0VDaURFLDRCQUZVO0VDdEJSLHVDQUFBO0VBR0YsMkJBQUE7QW5EcXpISjs7QWdEcHpISTtFRW9CQSx3QkFGVTtBbERzeUhkOztBZ0RwMEhJO0VDbEJGLDBCQUFBO0VBQ0Esa0NBQUE7RUNpREUsNEJBRlU7RUN0QlIsdUNBQUE7RUFHRiwyQkFBQTtBbkRpMEhKOztBZ0RoMEhJO0VFb0JBLHdCQUZVO0FsRGt6SGQ7O0FnRGgxSEk7RUNsQkYsMEJBQUE7RUFDQSxrQ0FBQTtFQ2lERSwyQkFGVTtFQ3RCUix1Q0FBQTtFQUdGLDJCQUFBO0FuRDYwSEo7O0FnRDUwSEk7RUVvQkEsd0JBRlU7QWxEOHpIZDs7QWdENTFISTtFQ2xCRiwwQkFBQTtFQUNBLGtDQUFBO0VDaURFLDJCQUZVO0VDdEJSLHVDQUFBO0VBR0YsMkJBQUE7QW5EeTFISjs7QWdEeDFISTtFRW9CQSx3QkFGVTtBbEQwMEhkOztBZ0R4MkhJO0VDbEJGLDBCQUFBO0VBQ0Esa0NBQUE7RUNpREUsd0JBRlU7RUN0QlIsdUNBQUE7RUFHRiwyQkFBQTtBbkRxMkhKOztBZ0RwMkhJO0VFb0JBLDJCQUZVO0FsRHMxSGQ7O0FnRHAzSEk7RUNsQkYsMEJBQUE7RUFDQSxrQ0FBQTtFQ2lERSx3QkFGVTtFQ3RCUix1Q0FBQTtFQUdGLDJCQUFBO0FuRGkzSEo7O0FnRGgzSEk7RUVvQkEsMkJBRlU7QWxEazJIZDs7QWdEaDRISTtFQ2xCRiwwQkFBQTtFQUNBLGtDQUFBO0VDaURFLHdCQUZVO0VDdEJSLHVDQUFBO0VBR0YsMkJBQUE7QW5ENjNISjs7QWdENTNISTtFRW9CQSw0QkFGVTtBbEQ4MkhkOztBZ0Q1NEhJO0VDbEJGLDBCQUFBO0VBQ0Esa0NBQUE7RUNpREUsd0JBRlU7RUN0QlIsdUNBQUE7RUFHRiwyQkFBQTtBbkR5NEhKOztBZ0R4NEhJO0VFb0JBLDRCQUZVO0FsRDAzSGQ7O0FnRHg1SEk7RUNsQkYsMEJBQUE7RUFDQSxrQ0FBQTtFQ2lERSxVQUxxQjtFRXpCckIsNEJBQUE7QXBENjVISjs7QWdEbjVISTtFRW9CQSxVQUxxQjtBbER3NEh6Qjs7QWdEbjZISTtFQ2xCRiwwQkFBQTtFQUNBLGtDQUFB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QSxtQkFGVTtFSWRSLFVBQUE7QXREZ21JTjs7QWdEaG5JSTtFQ2xCRiwwQkFBQTtFQUNBLGtDQUFBO0VDaURFLG1CQUZVO0VJekJSLHVDQUFBO0VBQ0EsVUFBQTtBdERrbklOOztBZ0Q1bUlJO0VFb0JBLHFCQUZVO0VJZFIsVUFBQTtBdEQ2bUlOOztBZ0Q3bklJO0VDbEJGLDBCQUFBO0VBQ0Esa0NBQUE7RUNpREUsbUJBRlU7RUl6QlIsdUNBQUE7RUFDQSxVQUFBO0F0RCtuSU47O0FnRHpuSUk7RUVvQkEscUJBRlU7RUlkUixVQUFBO0F0RDBuSU47O0FnRDFvSUk7RUNsQkYsMEJBQUE7RUFDQSxrQ0FBQTtFQ2lERSw0QkFGVTtFSzFCUix1Q0FBQTtFQUNBLFVBQUE7QXZENm9JTjs7QWdEdG9JSTtFRW9CQSxvQkFGVTtFS2ZSLFVBQUE7QXZEd29JTjs7QWdEdnBJSTtFQ2xCRiwwQkFBQTtFQUNBLGtDQUFBO0VDaURFLG9CQUZVO0VLMUJSLHVDQUFBO0VBQ0EsVUFBQTtBdkQwcElOOztBZ0RucElJO0VFb0JBLDJCQUZVO0VLZlIsVUFBQTtBdkRxcElOOztBZ0RwcUlJO0VDbEJGLDBCQUFBO0VBQ0Esa0NBQUE7RUNpREUsMkJBRlU7RUsxQlIsdUNBQUE7RUFDQSxVQUFBO0F2RHVxSU47O0FnRGhxSUk7RUVvQkEsb0JBRlU7RUtmUixVQUFBO0F2RGtxSU47O0FnRGpySUk7RUNsQkYsMEJBQUE7RUFDQSxrQ0FBQTtFQ2lERSxvQkFGVTtFSzFCUix1Q0FBQTtFQUNBLFVBQUE7QXZEb3JJTjs7QWdEN3FJSTtFRW9CQSw0QkFGVTtFS2ZSLFVBQUE7QXZEK3FJTjs7QWlENXBJTTtFQUFZLHFDQUFBO0FqRGdxSWxCOztBaURocUlNO0VBQVkscUNBQUE7QWpEb3FJbEI7O0FpRDlwSU07RUFBWSw2Q0FBQTtBakRrcUlsQjs7QWlEbHFJTTtFQUFZLDJDQUFBO0FqRHNxSWxCOztBaUR0cUlNO0VBQVksOENBQUE7QWpEMHFJbEI7O0FpRDFxSU07RUFBWSwrQ0FBQTtBakQ4cUlsQjs7QWlEOXFJTTtFQUFZLGtEQUFBO0FqRGtySWxCOztBaURscklNO0VBQVksOEVBQUE7QWpEc3JJbEI7O0FpRHRySU07RUFBWSwrRUFBQTtBakQwcklsQjs7QWlEMXJJTTtFQUFZLDhFQUFBO0FqRDhySWxCOztBaUR4cklNO0VBQWtCLGtDQUFBO0FqRDRySXhCOztBaUQ1cklNO0VBQWtCLGtDQUFBO0FqRGdzSXhCOztBaUR4cklFO0VPdkVBLHVCQUFBO0F4RG13SUY7QWtEN3ZJRTtFQUdJO0lBR0kseUJBQUE7RWxEMnZJUjtFa0Q5dklJO0lBR0ksMEJBQUE7RWxEOHZJUjtBQUNGOztBaURuc0lFO0VPeEVBLDZCQUFBO0F4RCt3SUY7QWtEendJRTtFQUdJO0lBR0kseUJBQUE7RWxEdXdJUjtFa0Qxd0lJO0lBR0ksb0JBQUE7RWxEMHdJUjtBQUNGOztBaUQ5c0lFO0VPekVBLDhCQUFBO0F4RDJ4SUY7QWtEcnhJRTtFQUdJO0lBR0ksb0JBQUE7RWxEbXhJUjtFa0R0eElJO0lBR0kseUJBQUE7RWxEc3hJUjtBQUNGOztBaUR6dElFO0VPMUVBLDJCQUFBO0F4RHV5SUY7QWtEanlJRTtFQUdJO0lBR0ksdUJBQUE7RWxEK3hJUjtFa0RseUlJO0lBR0ksd0JBQUE7RWxEa3lJUjtFa0RyeUlJO0lBR0ksb0JBQUE7RWxEcXlJUjtBQUNGOztBaUR0dUlFOzs7O0VBSUUseUJBQUE7QWpEeXVJSjs7QWlEcHVJRTtFQUFZLG1DQUFBO0FqRHd1SWQ7O0FpRHB1SU07RUFBWSxvQ0FBQTtBakR3dUlsQjs7QWlEeHVJTTtFQUFZLG9DQUFBO0FqRDR1SWxCOztBaUR0dUlNO0VBQVksNENBQUE7QWpEMHVJbEI7O0FpRDF1SU07RUFBWSwwQ0FBQTtBakQ4dUlsQjs7QWlEOXVJTTtFQUFZLDZDQUFBO0FqRGt2SWxCOztBaURsdklNO0VBQVksOENBQUE7QWpEc3ZJbEI7O0FpRHR2SU07RUFBWSxpREFBQTtBakQwdklsQjs7QWlEMXZJTTtFQUFZLDZFQUFBO0FqRDh2SWxCOztBaUQ5dklNO0VBQVksOEVBQUE7QWpEa3dJbEI7O0FpRGx3SU07RUFBWSw2RUFBQTtBakRzd0ls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aktFO0VBQ0MsZ0JBQUE7RUFDQSxzQkFBQTtFQUNBLGtCQUFBO0VBQ0EsT0FBQTtFQUNBLFFBQUE7RUFDQSwwQkFBQTtFQUNBLGNBQUE7RUFDQSxjQUFBO0F6RXNqS0g7O0EwRXBvS0U7RUFDQywyQkFBQTtFQUNBLHVCQUFBO0ExRXVvS0g7QW1CdCtKTTtFdUQ3Skg7SUFDQyxhQUFBO0lBQ0EsdUJBQUE7RTFFc29LRjtBQUNGOztBMkVscEtBO0VBQ0MscUJBQUE7RUFDQSxnQm5FeUd5QjtFbUV4R3pCLDBCQUFBO0VBQ0EscUJBQUE7QTNFcXBLRDtBMkVscEtFO0VBQ0MsY25FOERrQjtBUnNsS3JCO0EyRWxwS0c7RUFDQyx3REFBQTtBM0VvcEtKO0EyRXhwS0U7RUFDQyxjbkU4RGtCO0FSNGxLckI7QTJFeHBLRztFQUNDLHdEQUFBO0EzRTBwS0o7QTJFOXBLRTtFQUNDLGNuRThEa0I7QVJrbUtyQjtBMkU5cEtHO0VBQ0Msd0RBQUE7QTNFZ3FLSjtBMkVwcUtFO0VBQ0MsY25FOERrQjtBUndtS3JCO0EyRXBxS0c7RUFDQyx3REFBQTtBM0VzcUtKO0EyRTFxS0U7RUFDQyxjbkU4RGtCO0FSOG1LckI7QTJFMXFLRztFQUNDLHVEQUFBO0EzRTRxS0o7QTJFaHJLRTtFQUNDLGNuRThEa0I7QVJvbktyQjtBMkVocktHO0VBQ0Msd0RBQUE7QTNFa3JLSjtBMkV0cktFO0VBQ0MsY25FOERrQjtBUjBuS3JCO0EyRXRyS0c7RUFDQyx5REFBQTtBM0V3cktKO0EyRTVyS0U7RUFDQyxjbkU4RGtCO0FSZ29LckI7QTJFNXJLRztFQUNDLHVEQUFBO0EzRThyS0o7QTJFbHNLRTtFQUNDLGNuRThEa0I7QVJzb0tyQjtBMkVsc0tHO0VBQ0MsOENBQUE7QTNFb3NLSjtBMkV4c0tFO0VBQ0MsY25FOERrQjtBUjRvS3JCO0EyRXhzS0c7RUFDQyx3REFBQTtBM0Uwc0tKO0EyRTlzS0U7RUFDQyxjbkU4RGtCO0FSa3BLckI7QTJFOXNLRztFQUNDLDBEQUFBO0EzRWd0S0o7O0E0RXR0S0M7RUFDQywwQkFBQTtFQUNBLGNBQUE7RUFDQSxlQUFBO0VBQ0EsVUFBQTtBNUV5dEtGO0FtQnZqS007RXlEN0pIO0lBQ0MsYUFBQTtFNUV1dEtGO0U0RWx0S0M7SUFDQywwQkFBQTtFNUVvdEtGO0U0RS9zS0s7SUFDRCxnQkFBQTtFNUVpdEtKO0FBQ0Y7QW1CbGtLTTtFeUR4S047SUFnQ0Usd0JBQUE7RTVFOHNLQTtFNEU1c0tBO0lBQ0MsMkJBQUE7RTVFOHNLRDtFNEUzc0tBO0lBQ0Msa0JBQUE7RTVFNnNLRDtFNEUzc0tDO0lBQ0MscUJBQUE7RTVFNnNLRjtFNEUzc0tFO0lBQ0MsZUFBQTtJQUNBLGlCcEUyRGdCO0VSa3BLbkI7RTRFenNLQztJQUNDLHFCQUFBO0lBQ0EsaUJwRXFEaUI7RVJzcEtuQjtFNEV4c0tDO0lBQ0MsMEJBQUE7RTVFMHNLRjtFNEV4c0tFO0lBQ0MsU0FBQTtJQUNBLGtCQUFBO0U1RTBzS0g7QUFDRjtBbUIvbEtNO0V5RHBHSjtJQUNDLG1CQUFBO0U1RXNzS0Q7RTRFbHNLQztJQUNDLGNBQUE7SUFDQSwwQkFBQTtJQUNBLGlCcEU2QmlCO0lvRTVCakIsZ0NBQUE7RTVFb3NLRjtFNEVsc0tFO0lBQ0MsbUJBQUE7SUFDQSxjcEVJRztFUmdzS047RTRFaHNLQztJQUNDLDJCQUFBO0lBQ0EsZ0JBQUE7RTVFa3NLRjtFNEVoc0tFO0lBQ0MsdUJBQUE7SUFDQSxzQkFBQTtFNUVrc0tIO0U0RS9yS0U7SUFDQyxtREFBQTtFNUVpc0tIO0U0RS9yS0c7SUFDQyxtQnBFYkU7SW9FY0YsWUFBQTtFNUVpc0tKO0U0RTdyS0U7SUFDQyxlQUFBO0lBQ0Esd0NBQUE7RTVFK3JLSDtFNEU3cktHO0lBQ0MsWUFBQTtFNUUrcktKO0U0RXhyS0U7SUFDQyxtQkFBQTtJQUNBLFlBQUE7SUFDQSx3Q0FBQTtFNUUwcktIO0U0RXhyS0c7SUFDQyxjQUFBO0lBQ0EsaUJBQUE7RTVFMHJLSjtFNEVucktHO0lBQ0MsZ0JBQUE7RTVFcXJLSjtBQUNGO0E0RS9xS0M7RUFDQyx1QkFBQTtFQUNBLDJDQUFBO0VBQ0EsOEJwRWxDYztFb0VtQ2QsK0JwRW5DYztFb0VvQ2QsZ0JBQUE7QTVFaXJLRjs7QTZFaDBLQztFQUNDLDRCQUFBO0E3RW0wS0Y7QTZFaDBLQztFQUNDLG1CckVrRlc7QVJndktiO0E2RTd6S0U7RUFDQyxrQnJFZ0dhO0VxRS9GYixnQkFBQTtBN0UrektIO0FtQmxxS007RTBEL0pKO0lBS0UsOEJBQUE7RTdFZzBLRjtBQUNGO0E2RTd6S0U7RUFDQywyQkFBQTtFQUNBLDJCQUFBO0VBQ0EsNEJBQUE7RUFDQSxzQkFBQTtFQUNBLGtDQUFBO0E3RSt6S0g7QW1COXFLTTtFMER0Sko7SUFRRSxpQkFBQTtFN0VnMEtGO0FBQ0Y7QTZFN3pLRTtFQUNDLG1CckV1RFU7RXFFdERWLGNBQUE7RUFDQSxhQUFBO0VBQ0csc0JBQUE7RUFDQSx1QkFBQTtFQUNILHdCQUFBO0E3RSt6S0g7QTZFN3pLRztFQUNDLHNCQUFBO0E3RSt6S0o7QTZFMXpLRztFQUNDLDJCQUFBO0E3RTR6S0o7QW1CanNLTTtFMEQ1SEg7SUFJRSw4QkFBQTtFN0U2ektIO0FBQ0Y7QTZFcnpLRztFQUNDLDBCQUFBO0E3RXV6S0o7QTZFbHpLRztFQUNDLGNBQUE7QTdFb3pLSjs7QThFdjNLQTtFQWtCQzs7OztLQUFBO0VBTUE7Ozs7S0FBQTtBOUU0MktEO0E4RWw0S0M7O0VBRUMsYUFBQTtBOUVvNEtGO0E4RWo0S0M7RUFDQyxhQUFBO0E5RW00S0Y7QThFLzNLRTtFQUVDLGFBQUE7QTlFZzRLSDs7QStFOTRLQTtFQUNDLDhCQUFBO0EvRWk1S0Q7O0FnRmw1S0E7RUFDQyx5QnhFd0ZZO0FSNnpLYjtBZ0ZuNUtDO0VBQ0MsaUJBQUE7RUFDQSxrQnhFd0djO0V3RXZHZCwyQ0FBQTtFQUNBLFlBQUE7RUFDQSxhQUFBO0VBQ0Esc0JBQUE7QWhGcTVLRjtBZ0ZsNUtDO0VBQ0MseUJBQUE7RUFDQSxjeEUwRU07RXdFekVOLGdCQUFBO0VBQ0Esd0RBQUE7QWhGbzVLRjtBZ0ZsNUtFO0VBQ0MsWUFBQTtFQUNBLFNBQUE7QWhGbzVLSDtBZ0ZoNUtDO0VBQ0MsMERBQUE7QWhGazVLRjtBZ0YvNEtDO0VBQ0MsMEJBQUE7RUFDQSw4QkFBQTtFQUNBLDZCQUFBO0FoRmk1S0Y7QWdGLzRLRTtFQUNDLFNBQUE7QWhGaTVLSDtBbUI3d0tNO0U2RDlISDtJQUNDLDJCQUFBO0VoRjg0S0Y7QUFDRjtBbUI3d0tNO0U2RDVISjtJQUNDLDhCQUFBO0VoRjQ0S0Q7QUFDRjtBZ0Z2NEtDO0VBQ0MsU0FBQTtFQUNBLFVBQUE7QWhGeTRLRjtBZ0Z2NEtFO0VBQ0MsNENBQUE7RUFDQSxTQUFBO0VBQ0Esa0JBQUE7QWhGeTRLSDtBZ0Z2NEtHO0VBQ0MsZ0JBQUE7RUFDQSxjQUFBO0VBRUEsc0JBQUE7RUFDQSxrQkFBQTtFQUNBLE9BQUE7RUFDQSxRQUFBO0VBQ0EsMEJBQUE7RUFDQSxjQUFBO0FoRnc0S0o7O0FtQnJ5S007RThEektMO0lBRUUsMkJBQUE7RWpGaTlLRDtBQUNGO0FtQjN5S007RThEbktMO0lBRUUsOEJBQUE7RWpGZzlLRDtBQUNGOztBa0YzOUtBO0VBQ0MsdURBQUE7QWxGODlLRDtBa0Y1OUtDO0VBQ0MsMkNBQUE7RUFDQSx5QkFBQTtBbEY4OUtGO0FrRjM5S0M7RUFDQyx3Q0FBQTtFQUNBLGlCQUFBO0FsRjY5S0Y7QWtGMzlLRTtFQUNDLGNBQUE7QWxGNjlLSDtBa0Z6OUtDO0VBQ0MsYzFFeUVVO0UwRXhFViwwQkFBQTtFQUNBLDhCQUFBO0FsRjI5S0Y7QWtGeDlLQztFQUVDLHFCQUFBO0VBQ0EsU0FBQTtFQUNBLFVBQUE7RUFDQSxrQkFBQTtBbEZ5OUtGO0FrRnY5S0U7RUFDQyxxQkFBQTtBbEZ5OUtIO0FrRnY5S0c7RUFDQyxxQkFBQTtFQUNBLFlBQUE7RUFDQSx5QkFBQTtFQUNBLHdDQUFBO0FsRnk5S0o7QWtGdjlLSTtFQUNDLHlCQUFBO0FsRnk5S0w7QWtGdDlLSTtFQUNDLHlCQUFBO0FsRnc5S0w7QWtGdDlLSztFQUNDLHlCQUFBO0FsRnc5S047O0FrRmg5S0E7RUFDQyxpQkFBQTtBbEZtOUtEO0FrRmo5S0M7RUFDQyw2QkFBQTtBbEZtOUtGO0FrRmg5S0M7RUFDQyw2QkFBQTtBbEZrOUtGO0FrRi84S0M7RUFDQyxjQUFBO0FsRmk5S0Y7O0FtRmxoTEM7RUFDQyxhQUFBO0FuRnFoTEY7QW1GbmhMRTtFQUNDLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLGVBQUE7RUFDQSwrREFBQTtFQUNBLGNBQUE7RUFDQSxnQjNFZ0d1QjtFMkUvRnZCLGtCM0VpR2E7RTJFaEdiLHlCQUFBO0VBQ0EsNkJBQUE7QW5GcWhMSDtBbUZsaExJO0VBQ0MsbUIzRXdFUztBUjQ4S2Q7QW1GaGhMRztFQUNDLGtCQUFBO0VBQ0EsVUFBQTtFQUNHLFNBQUE7RUFDSCxXQUFBO0VBQ0Esc0JBQUE7RUFDQSx1QkFBQTtFQUNBLGtCQUFBO0VBQ0EseUJBQUE7RUFDQSxtQ0FBQTtBbkZraExKO0FtRi9nTEc7RUFDQyxxQkFBQTtFQUNBLHlCQUFBO0VBQ0EsY0FBQTtBbkZpaExKO0FtRjdnTEU7RUFDQyx5QkFBQTtBbkYrZ0xIO0FtRjdnTEc7RUFDQyxtQkFBQTtFQUNBLHlCQUFBO0VBQ0EsbUNBQUE7QW5GK2dMSjtBbUZ4Z0xHO0VBQ0MsWUFBQTtFQUNBLDBCQUFBO0VBQ0EsYzNFNEJHO0UyRTNCSCxtQjNFK0NtQjtFMkU5Q25CLHdFQUFBO0VBQ0EsU0FBQTtBbkYwZ0xKO0FtRnhnTEk7RUFDQyxTQUFBO0VBQ0EsU0FBQTtBbkYwZ0xMO0FtRnRnTEc7RUFDQyxZQUFBO0FuRndnTEo7QW1GdGdMSTtFQUNDLG1CQUFBO0FuRndnTEw7QW1GamdMRTtFQUNDLGFBQUE7QW5GbWdMSDtBbUZqZ0xHO0VBQ0MsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7RUFDQSxzQkFBQTtFQUVBLG1CQUFBO0VBQ0Esc0JBQUE7RUFDQSx1QkFBQTtFQUNBLHlCQUFBO0VBQ0Esa0IzRWlCWTtFMkVoQlosMkNBQUE7QW5Ga2dMSjtBbUZoZ0xJO0VBQ0MsMENBQUE7QW5Ga2dMTDtBbUYvL0tJO0VBQ0MsY0FBQTtFQUNBLGlCM0VPZ0I7RTJFTmhCLDBCQUFBO0VBQ0EsNkJBQUE7QW5GaWdMTDtBbUI3N0tNO0VnRXpGSDtJQXlCRSx5QkFBQTtJQUNBLFdBQUE7SUFDQSxZQUFBO0VuRmlnTEg7RW1GLy9LRztJQUNDLHNCQUFBO0lBQ0EsdUJBQUE7RW5GaWdMSjtFbUY5L0tHO0lBQ0MsMEJBQUE7RW5GZ2dMSjtBQUNGO0FtRjUvS0c7RUFDQyx5QkFBQTtBbkY4L0tKO0FtRnYvS0k7RUFDQyx1QkFBQTtFQUNBLDBCQUFBO0VBQ0EsV0FBQTtFQUNBLHlEQUFBO0FuRnkvS0w7QW1Gdi9LSztFQUNDLFNBQUE7RUFDQSwwQkFBQTtFQUNBLDBCQUFBO0FuRnkvS047QW1Gci9LSTtFQUNDLG1CQUFBO0VBQ0EsWUFBQTtBbkZ1L0tMO0FtRnIvS0s7RUFDQyxjM0U1REU7QVJtakxSOztBb0Yxb0xDO0VBQ0MsNkJBQUE7RUFDQSxZQUFBO0VBQ0csZ0JBQUE7RUFDQSwwQkFBQTtFQUNBLFlBQUE7RUFDSCx5QkFBQTtBcEY2b0xGO0FvRjNvTEU7RUFDQyw2QkFBQTtFQUNBLHlCQUFBO0VBQ0EsdUNBQUE7QXBGNm9MSDs7QW9GdG9MQTtFQUNDLHNCQUFBO0FwRnlvTEQ7QW9Gdm9MQztFQUNDLGtDQUFBO0VBQ0EsZ0NBQUE7QXBGeW9MRjtBb0Z2b0xFO0VBQ0MsZ0I1RWdGdUI7RTRFL0V2Qix5QkFBQTtFQUNBLHdDQUFBO0VBQ0EsdUNBQUE7QXBGeW9MSDtBb0Z0b0xFO0VBQ0MsYUFBQTtBcEZ3b0xIO0FvRnBvTEM7RUFDQyx5Q0FBQTtFQUNBLG1CNUVpRFc7RTRFaERSLHdDQUFBO0FwRnNvTEw7QW9Gam9MRTtFQUNDLG1CQUFBO0VBQ0Esb0NBQUE7QXBGbW9MSDtBb0Zob0xFO0VBQ0MseUJBQUE7QXBGa29MSDs7QXFGbHJMQztFQUNDLGFBQUE7RUFDQSxtQkFBQTtFQUNBLHVCQUFBO0VBQ0Esd0JBQUE7RUFDQSxXQUFBO0FyRnFyTEY7QW1CbmhMTTtFa0UvSkw7SUFFRSxnQ0FBQTtJQUNBLDRCQUFBO0lBQ0EsMkNBQUE7RXJGb3JMRDtBQUNGO0FxRmpyTEM7RUFDQyx3REFBQTtFQUNBLHVCQUFBO0VBQ0EsbUNBQUE7RUFDQSwyQkFBQTtFQUNBLFlBQUE7QXJGbXJMRjtBbUJqaUxNO0VrRXZKTDtJQVFFLHdCQUFBO0VyRm9yTEQ7QUFDRjtBcUZsckxFO0VBQ0MsZ0NBQUE7RUFDQSxTQUFBO0VBQ0EsK0JBQUE7QXJGb3JMSDtBcUZockxDO0VBQ0MsMkJBQUE7QXJGa3JMRjtBcUYvcUxDO0VBQ0MsZUFBQTtBckZpckxGO0FtQmpqTE07RWtFN0hMO0lBRUUsVUFBQTtFckZnckxEO0FBQ0Y7QXFGN3FMQztFQUNDLGtCQUFBO0VBQ0csdUJBQUE7RUFDQSxXQUFBO0FyRitxTEw7QXFGMXFMRTtFQUNDLGFBQUE7RUFDQSxhQUFBO0FyRjRxTEg7O0FzRnZ1TEM7O0VBQ0ksVUFBQTtFQUNBLGNBQUE7QXRGMnVMTDtBc0Z6dUxLOztFQUNPLDhCQUFBO0VBQ04sNkJBQUE7RUFDQSxrQkFBQTtBdEY0dUxOO0FzRnp1TEU7O0VBQ0ksYUFBQTtFQUNBLGtCQUFBO0VBQ0EsT0FBQTtFQUNBLFNBQUE7RUFDQSwwQkFBQTtFQUNBLGNBQUE7RUFDQSxjQUFBO0F0RjR1TE47O0FzRnJ1TEE7RUFDSSxhQUFBO0F0Rnd1TEo7O0F1RnB3TEE7RUFHQyxnQ0FBQTtBdkZxd0xEO0F1RnJ2TEM7RUFDQyxnQkFBQTtBdkZ1dkxGOztBdUZsdkxJO0VBQ0ksbUJBQUE7QXZGcXZMUjs7QXdGNXdMQTtFQUNDLFdBQUE7RUFDQSxZQUp1QjtFQUt2QixtQmhGa0ZPO0VnRmpGUCwyQ0FBQTtFQUNBLGNBQUE7QXhGK3dMRDtBbUJqbkxNO0VxRW5LTjtJQVFFLFlBWGU7RXhGMnhMZjtBQUNGO0FtQnRuTE07RXFFeEpMO0lBR0UsYUFBQTtJQUNBLG1CQUFBO0lBQ0EsOEJBQUE7SUFDQSxZQXBCYztFeEZteUxmO0FBQ0Y7QW1Cem5MTTtFcUVsSko7SUFDQyxtQkFBQTtJQUNBLGVBQUE7SUFDRyxhQUFBO0lBQ0EsV0FBQTtFeEY4d0xKO0V3RjV3TEk7SUFDQyx5QkFBQTtFeEY4d0xMO0V3RjN3TEk7SUFDQyxZQUFBO0V4RjZ3TEw7RXdGMXdMSTtJQUNDLFlBQUE7RXhGNHdMTDtFd0Yxd0xLO0lBQ0MsZ0JBQUE7RXhGNHdMTjtBQUNGO0F3RnZ3TEM7RUFDQyxlQUFBO0VBQ0csVUFBQTtFQUNBLFdBQUE7RUFDQSxTQUFBO0F4Rnl3TEw7QW1CbnBMTTtFcUUxSEw7SUFPRSxhQUFBO0V4RjB3TEQ7QUFDRjs7QXlGajBMQztFQUNDLGNBQUE7QXpGbzBMRjtBeUZqMExDO0VBQ0MsbUJqRmtGVztFaUZqRlgsd0RBQUE7RUFDQSxrQmpGb0djO0FSK3RMaEI7QXlGaDBMQztFQUNDLHFCQUFBO0F6RmswTEY7QXlGL3pMQztFQUNDLDJCQUFBO0F6RmkwTEY7O0EwRmgxTEE7RUFDQyxrQkFBQTtFQUNBLHNCQUFBO0VBQ0EsU0FBQTtFQUNBLGdCQUFBO0ExRm0xTEQ7QTBGajFMQztFQUNDLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtBMUZtMUxGOztBRzF4TEE7OytFQUFBO0F3RnRFQTtFQUNDLGtCQUFBO0EzRnMyTEQ7O0EyRm4yTEE7RUFDQyxnQkFBQTtBM0ZzMkxEOztBMkZuMkxBO0VBQ0MsaUJBQUE7QTNGczJMRDs7QTJGbjJMQTtFQUNDLFdBQUE7QTNGczJMRDs7QTJGbjJMQTtFQUNDLFlBQUE7QTNGczJMRDs7QTJGbjJMQTtFQUNDLGdGbkY4RWtCO0FSd3hMbkI7O0EyRm4yTEE7RUFDQyxpQkFBQTtBM0ZzMkxEOztBNEY5M0xDO0VBQ0MsY3BGb0VtQjtBUjZ6THJCOztBNEZsNExDO0VBQ0MsY3BGb0VtQjtBUmkwTHJCOztBNEZ0NExDO0VBQ0MsY3BGb0VtQjtBUnEwTHJCOztBNEYxNExDO0VBQ0MsY3BGb0VtQjtBUnkwTHJCOztBNEY5NExDO0VBQ0MsY3BGb0VtQjtBUjYwTHJCOztBNEZsNUxDO0VBQ0MsY3BGb0VtQjtBUmkxTHJCOztBNEZ0NUxDO0VBQ0MsY3BGb0VtQjtBUnExTHJCOztBNEYxNUxDO0VBQ0MsY3BGb0VtQjtBUnkxTHJCOztBNEY5NUxDO0VBQ0MsY3BGb0VtQjtBUjYxTHJCOztBNEZsNkxDO0VBQ0MsY3BGb0VtQjtBUmkyTHJCOztBNEZ0NkxDO0VBQ0MsY3BGb0VtQjtBUnEyTHJCOztBNEZwNkxDO0VBQ0MsbUJwRjhEbUI7QVJ5MkxyQjs7QTRGeDZMQztFQUNDLG1CcEY4RG1CO0FSNjJMckI7O0E0RjU2TEM7RUFDQyxtQnBGOERtQjtBUmkzTHJCOztBNEZoN0xDO0VBQ0MsbUJwRjhEbUI7QVJxM0xyQjs7QTRGcDdMQztFQUNDLG1CcEY4RG1CO0FSeTNMckI7O0E0Rng3TEM7RUFDQyxtQnBGOERtQjtBUjYzTHJCOztBNEY1N0xDO0VBQ0MsbUJwRjhEbUI7QVJpNExyQjs7QTRGaDhMQztFQUNDLG1CcEY4RG1CO0FScTRMckI7O0E0RnA4TEM7RUFDQyxtQnBGOERtQjtBUnk0THJCOztBNEZ4OExDO0VBQ0MsbUJwRjhEbUI7QVI2NExyQjs7QTRGNThMQztFQUNDLG1CcEY4RG1CO0FSaTVMckI7O0E0RjM4TEE7RUFDQyx5QkFBQTtBNUY4OExEOztBNkZ2OUxBOzsrRUFBQTtBQUdBO0VBQ0MscUJBQUE7QTdGMDlMRDs7QTZGdjlMQTtFQUNDLDRCQUFBO0E3RjA5TEQ7O0E2RnY5TEE7RUFDQyx5QkFBQTtBN0YwOUxEOztBNkZ2OUxBO0VBQ0MsMEJBQUE7QTdGMDlMRDs7QTZGdjlMQTtFQUNDLDJCQUFBO0E3RjA5TEQ7O0E2RnQ5TEM7RUFDQyx3QkFBQTtBN0Z5OUxGOztBNkZ0OUxDO0VBQ0MsNEJBQUE7RUFDQSwrQkFBQTtBN0Z5OUxGOztBNkZ0OUxDO0VBQ0MsK0JBQUE7QTdGeTlMRjs7QTZGdDlMQztFQUNDLDRCQUFBO0E3Rnk5TEY7O0E2RnQ5TEM7RUFDQyw2QkFBQTtFQUNBLDhCQUFBO0E3Rnk5TEY7O0E2RnQ5TEM7RUFDQyw2QkFBQTtBN0Z5OUxGOztBNkZ0OUxDO0VBQ0MsOEJBQUE7QTdGeTlMRjs7QTZGcC9MQztFQUNDLHdCQUFBO0E3RnUvTEY7O0E2RnAvTEM7RUFDQyw0QkFBQTtFQUNBLCtCQUFBO0E3RnUvTEY7O0E2RnAvTEM7RUFDQywrQkFBQTtBN0Z1L0xGOztBNkZwL0xDO0VBQ0MsNEJBQUE7QTdGdS9MRjs7QTZGcC9MQztFQUNDLDZCQUFBO0VBQ0EsOEJBQUE7QTdGdS9MRjs7QTZGcC9MQztFQUNDLDZCQUFBO0E3RnUvTEY7O0E2RnAvTEM7RUFDQyw4QkFBQTtBN0Z1L0xGOztBNkZsaE1DO0VBQ0Msd0JBQUE7QTdGcWhNRjs7QTZGbGhNQztFQUNDLDRCQUFBO0VBQ0EsK0JBQUE7QTdGcWhNRjs7QTZGbGhNQztFQUNDLCtCQUFBO0E3RnFoTUY7O0E2RmxoTUM7RUFDQyw0QkFBQTtBN0ZxaE1GOztBNkZsaE1DO0VBQ0MsNkJBQUE7RUFDQSw4QkFBQTtBN0ZxaE1GOztBNkZsaE1DO0VBQ0MsNkJBQUE7QTdGcWhNRjs7QTZGbGhNQztFQUNDLDhCQUFBO0E3RnFoTUY7O0E2RmhqTUM7RUFDQyx3QkFBQTtBN0Ztak1GOztBNkZoak1DO0VBQ0MsNEJBQUE7RUFDQSwrQkFBQTtBN0Ztak1GOztBNkZoak1DO0VBQ0MsK0JBQUE7QTdGbWpNRjs7QTZGaGpNQztFQUNDLDRCQUFBO0E3Rm1qTUY7O0E2RmhqTUM7RUFDQyw2QkFBQTtFQUNBLDhCQUFBO0E3Rm1qTUY7O0E2RmhqTUM7RUFDQyw2QkFBQTtBN0Ztak1GOztBNkZoak1DO0VBQ0MsOEJBQUE7QTdGbWpNRjs7QTZGOWtNQztFQUNDLHdCQUFBO0E3RmlsTUY7O0E2RjlrTUM7RUFDQyw0QkFBQTtFQUNBLCtCQUFBO0E3RmlsTUY7O0E2RjlrTUM7RUFDQywrQkFBQTtBN0ZpbE1GOztBNkY5a01DO0VBQ0MsNEJBQUE7QTdGaWxNRjs7QTZGOWtNQztFQUNDLDZCQUFBO0VBQ0EsOEJBQUE7QTdGaWxNRjs7QTZGOWtNQztFQUNDLDZCQUFBO0E3RmlsTUY7O0E2RjlrTUM7RUFDQyw4QkFBQTtBN0ZpbE1GOztBNkY1bU1DO0VBQ0Msd0JBQUE7QTdGK21NRjs7QTZGNW1NQztFQUNDLDRCQUFBO0VBQ0EsK0JBQUE7QTdGK21NRjs7QTZGNW1NQztFQUNDLCtCQUFBO0E3RittTUY7O0E2RjVtTUM7RUFDQyw0QkFBQTtBN0YrbU1GOztBNkY1bU1DO0VBQ0MsNkJBQUE7RUFDQSw4QkFBQTtBN0YrbU1GOztBNkY1bU1DO0VBQ0MsNkJBQUE7QTdGK21NRjs7QTZGNW1NQztFQUNDLDhCQUFBO0E3RittTUY7O0E2RjFvTUM7RUFDQyx3QkFBQTtBN0Y2b01GOztBNkYxb01DO0VBQ0MsNEJBQUE7RUFDQSwrQkFBQTtBN0Y2b01GOztBNkYxb01DO0VBQ0MsK0JBQUE7QTdGNm9NRjs7QTZGMW9NQztFQUNDLDRCQUFBO0E3RjZvTUY7O0E2RjFvTUM7RUFDQyw2QkFBQTtFQUNBLDhCQUFBO0E3RjZvTUY7O0E2RjFvTUM7RUFDQyw2QkFBQTtBN0Y2b01GOztBNkYxb01DO0VBQ0MsOEJBQUE7QTdGNm9NRjs7QTZGem9NQTs7K0VBQUE7QUFHQTtFQUNDLG9CQUFBO0E3RjRvTUQ7O0E2RnpvTUE7RUFDQywyQkFBQTtBN0Y0b01EOztBNkZ6b01BO0VBQ0Msd0JBQUE7QTdGNG9NRDs7QTZGem9NQTtFQUNDLHlCQUFBO0E3RjRvTUQ7O0E2RnpvTUE7RUFDQywwQkFBQTtBN0Y0b01EOztBNkZ4b01DO0VBQ0MsdUJBQUE7QTdGMm9NRjs7QTZGeG9NQztFQUNDLDJCQUFBO0VBQ0EsOEJBQUE7QTdGMm9NRjs7QTZGeG9NQztFQUNDLDhCQUFBO0E3RjJvTUY7O0E2RnhvTUM7RUFDQywyQkFBQTtBN0Yyb01GOztBNkZ4b01DO0VBQ0MsNEJBQUE7RUFDQSw2QkFBQTtBN0Yyb01GOztBNkZ4b01DO0VBQ0MsNEJBQUE7QTdGMm9NRjs7QTZGeG9NQztFQUNDLDZCQUFBO0E3RjJvTUY7O0E2RnRxTUM7RUFDQyx1QkFBQTtBN0Z5cU1GOztBNkZ0cU1DO0VBQ0MsMkJBQUE7RUFDQSw4QkFBQTtBN0Z5cU1GOztBNkZ0cU1DO0VBQ0MsOEJBQUE7QTdGeXFNRjs7QTZGdHFNQztFQUNDLDJCQUFBO0E3RnlxTUY7O0E2RnRxTUM7RUFDQyw0QkFBQTtFQUNBLDZCQUFBO0E3RnlxTUY7O0E2RnRxTUM7RUFDQyw0QkFBQTtBN0Z5cU1GOztBNkZ0cU1DO0VBQ0MsNkJBQUE7QTdGeXFNRjs7QTZGcHNNQztFQUNDLHVCQUFBO0E3RnVzTUY7O0E2RnBzTUM7RUFDQywyQkFBQTtFQUNBLDhCQUFBO0E3RnVzTUY7O0E2RnBzTUM7RUFDQyw4QkFBQTtBN0Z1c01GOztBNkZwc01DO0VBQ0MsMkJBQUE7QTdGdXNNRjs7QTZGcHNNQztFQUNDLDRCQUFBO0VBQ0EsNkJBQUE7QTdGdXNNRjs7QTZGcHNNQztFQUNDLDRCQUFBO0E3RnVzTUY7O0E2RnBzTUM7RUFDQyw2QkFBQTtBN0Z1c01GOztBNkZsdU1DO0VBQ0MsdUJBQUE7QTdGcXVNRjs7QTZGbHVNQztFQUNDLDJCQUFBO0VBQ0EsOEJBQUE7QTdGcXVNRjs7QTZGbHVNQztFQUNDLDhCQUFBO0E3RnF1TUY7O0E2Rmx1TUM7RUFDQywyQkFBQTtBN0ZxdU1GOztBNkZsdU1DO0VBQ0MsNEJBQUE7RUFDQSw2QkFBQTtBN0ZxdU1GOztBNkZsdU1DO0VBQ0MsNEJBQUE7QTdGcXVNRjs7QTZGbHVNQztFQUNDLDZCQUFBO0E3RnF1TUY7O0E2Rmh3TUM7RUFDQyx1QkFBQTtBN0Ztd01GOztBNkZod01DO0VBQ0MsMkJBQUE7RUFDQSw4QkFBQTtBN0Ztd01GOztBNkZod01DO0VBQ0MsOEJBQUE7QTdGbXdNRjs7QTZGaHdNQztFQUNDLDJCQUFBO0E3Rm13TUY7O0E2Rmh3TUM7RUFDQyw0QkFBQTtFQUNBLDZCQUFBO0E3Rm13TUY7O0E2Rmh3TUM7RUFDQyw0QkFBQTtBN0Ztd01GOztBNkZod01DO0VBQ0MsNkJBQUE7QTdGbXdNRjs7QTZGOXhNQztFQUNDLHVCQUFBO0E3Rml5TUY7O0E2Rjl4TUM7RUFDQywyQkFBQTtFQUNBLDhCQUFBO0E3Rml5TUY7O0E2Rjl4TUM7RUFDQyw4QkFBQTtBN0ZpeU1GOztBNkY5eE1DO0VBQ0MsMkJBQUE7QTdGaXlNRjs7QTZGOXhNQztFQUNDLDRCQUFBO0VBQ0EsNkJBQUE7QTdGaXlNRjs7QTZGOXhNQztFQUNDLDRCQUFBO0E3Rml5TUY7O0E2Rjl4TUM7RUFDQyw2QkFBQTtBN0ZpeU1GOztBNkY1ek1DO0VBQ0MsdUJBQUE7QTdGK3pNRjs7QTZGNXpNQztFQUNDLDJCQUFBO0VBQ0EsOEJBQUE7QTdGK3pNRjs7QTZGNXpNQztFQUNDLDhCQUFBO0E3Rit6TUY7O0E2RjV6TUM7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QkFBQTtFL0Y4eU8zRjtBQUNGO0ErRi95T2lIO0VBQXdIO0lBQWtCLE1BQUE7RS9GbXpPelA7RStGbnpPK1A7SUFBcUIsU0FBQTtFL0Zzek9wUjtFK0Z0ek82UjtJQUFtRixPQUFBO0lBQU8sUUFBQTtFL0Ywek92WDtFK0Yxek8rWDtJQUF3RyxzQkFBQTtFL0ZnME92ZTtFK0ZoME82ZjtJQUF5RSxjQUFBO0UvRnEwT3RrQjtFK0ZyME9vbEI7SUFBdUIsZUFBQTtFL0Z3ME8zbUI7RStGeDBPMG5CO0lBQXVCLGtCQUFBO0UvRjIwT2pwQjtFK0YzME9tcUI7SUFBa0Usa0JBQUE7RS9GZzFPcnVCO0UrRmgxT3V2QjtJQUFpQyxlQUFBO0UvRm0xT3h4QjtBQUNGO0ErRm4xT0E7RUFBOEIsY0FBQTtFQUFjLGtCQUFBO0EvRnUxTzVDOztBK0Z2MU84RDtFQUEwRCxrQkFBQTtFQUFrQixlQUFBO0VBQWdELFVBQUE7QS9GKzFPMUw7O0ErRi8xT29NO0VBQTBCLGtCQUFBO0EvRm0yTzlOOztBK0ZuMk9nUDtFQUFxQyxnQkFBQTtBL0Z1Mk9yUjs7QStGdjJPcVM7RUFBbUQscUJBQUE7QS9GMjJPeFY7O0ErRjEyT0E7RUFBNkIsVUFBQTtBL0Y4Mk83Qjs7QStGOTJPdUM7RUFBMkMsV0FBQTtFQUFXLG9CQUFBO0EvRm0zTzdGOztBK0ZuM09pSDtFQUFxQyxTQUFBO0VBQVMsb0JBQUE7RUFBbUIsWUFBQTtBL0Z5M09sTDs7QStGejNPOEw7RUFBeUMsZ0JBQUE7QS9GNjNPdk87O0ErRjczT3VQO0VBQStDLGNBQUE7QS9GaTRPdFMiLCJmaWxlIjoiYXNzZXRzL3NyYy9zY3NzL21haW4uc2NzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbkBpbXBvcnQgdXJsKFwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU9wZW4rU2FuczozMDAsNDAwLDQwMGksNjAwLDcwMCw4MDBcIik7XG5AaW1wb3J0IHVybChcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1TcGVjaWFsK0VsaXRlXCIpO1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pY29tb29uLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pY29tb29uLmVvdCNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvaWNvbW9vbi50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL2ljb21vb24ud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9pY29tb29uLnN2ZyNpY29tb29uXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuW2NsYXNzXj1pY29uLV0sIFtjbGFzcyo9XCIgaWNvbi1cIl0ge1xuICAvKiB1c2UgIWltcG9ydGFudCB0byBwcmV2ZW50IGlzc3VlcyB3aXRoIGJyb3dzZXIgZXh0ZW5zaW9ucyB0aGF0IGNoYW5nZSBmb250cyAqL1xuICBmb250LWZhbWlseTogXCJpY29tb29uXCIgIWltcG9ydGFudDtcbiAgc3BlYWs6IG5vbmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4uaWNvbi1mYWNlYm9vazI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGVhOTFcIjtcbn1cblxuLmljb24tdHdpdHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWE5NlwiO1xufVxuXG4uaWNvbi1jaGVja21hcmsxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAwXCI7XG59XG5cbi5pY29uLWNoZXZlcm9uLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDFcIjtcbn1cblxuLmljb24tY2hldmVyb24tbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMlwiO1xufVxuXG4uaWNvbi1jaGV2ZXJvbi1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwM1wiO1xufVxuXG4uaWNvbi1jaGV2ZXJvbi11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNFwiO1xufVxuXG4uaWNvbi1jbG9zZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNVwiO1xufVxuXG4uaWNvbi1kb3dubG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNlwiO1xufVxuXG4uaWNvbi1pbmZvcm1hdGlvbi1zb2xpZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwN1wiO1xufVxuXG4uaWNvbi1tZW51OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA4XCI7XG59XG5cbi5pY29uLWNoZWNrbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwOVwiO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgU2V0dGluZ3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBQcmludFxuPT09PT09PT09PVxuKi9cbkBtZWRpYSBwcmludCB7XG4gICoge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDsgLyogQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vcyAqL1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIEBwYWdlIHtcbiAgICBzaXplOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiA1bW0gMzVtbSAzNW1tIDM1bW0gIWltcG9ydGFudDtcbiAgfVxuICBhLFxuICBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG4gIGFbaHJlZl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICB9XG4gIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gIH1cbiAgLypcbiAgICogRG9uJ3Qgc2hvdyBsaW5rcyBmb3IgaW1hZ2VzLCBvciBqYXZhc2NyaXB0L2ludGVybmFsIGxpbmtzXG4gICAqL1xuICAuaXIgYTphZnRlcixcbiAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyLFxuICBhW2hyZWZePVwiI1wiXTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuICBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgcHJlLFxuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuICB0aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyAvKiBoNWJwLmNvbS90ICovXG4gIH1cbiAgdHIsXG4gIGltZyxcbiAgaWZyYW1lIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzO1xuICB9XG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gIH1cbiAgLm5vcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAucHJpbnRvbmx5IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIGgxIHtcbiAgICBjb2xvcjogI0Q1MUQ2NyAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG4gIGgyLCBoMyB7XG4gICAgY29sb3I6ICM2MTZGQTAgIWltcG9ydGFudDtcbiAgICAtd2Via2l0LXByaW50LWNvbG9yLWFkanVzdDogZXhhY3Q7XG4gICAgcHJpbnQtY29sb3ItYWRqdXN0OiBleGFjdDtcbiAgfVxuICBoMiB7XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG4gIH1cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICB9XG4gIC5yb3cuYWxpZ24tY2VudGVyIC5sYXJnZS04IHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gIH1cbiAgLmMtdG9wLWJhcixcbiAgLmMtaGVhZGVyLFxuICAuYy1mb290ZXIsXG4gIC5jLWJyZWFkY3J1bWIsXG4gIC5jLWZvb3Rlcl9fYm90dG9tIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmMtbWVkaWFfX2ltYWdlIC5tZWRpYS1vYmplY3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5wcmludG9ubHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRm91bmRhdGlvblxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjUuMC1yYy4xXG4gKiBmb3VuZGF0aW9uLnp1cmIuY29tXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG59XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICBtYXJnaW46IDA7XG59XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG5idXR0b24sXG5bdHlwZT1idXR0b25dLFxuW3R5cGU9cmVzZXRdLFxuW3R5cGU9c3VibWl0XSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1idXR0b25dOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9cmVzZXRdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9c3VibWl0XTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9YnV0dG9uXTotbW96LWZvY3VzcmluZyxcblt0eXBlPXJlc2V0XTotbW96LWZvY3VzcmluZyxcblt0eXBlPXN1Ym1pdF06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZGlzcGxheTogdGFibGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cblt0eXBlPWNoZWNrYm94XSxcblt0eXBlPXJhZGlvXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDA7XG59XG5cblt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5bdHlwZT1zZWFyY2hdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xufVxuXG5bdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIGZvbnQ6IGluaGVyaXQ7XG59XG5cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5mb3VuZGF0aW9uLW1xIHtcbiAgZm9udC1mYW1pbHk6IFwic21hbGw9MGVtJmlwaG9uZTU9MjBlbSZtZWRpdW09NDBlbSZ4bWVkaXVtPTUwZW0mbGFyZ2U9NjRlbSZ4bGFyZ2U9NzVlbSZ4eGxhcmdlPTkwZW1cIjtcbn1cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG59XG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMyNzJDNDA7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5pbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xufVxuXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogNTBweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG5zZWxlY3Qge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG4ubWFwX2NhbnZhcyBpbWcsXG4ubWFwX2NhbnZhcyBlbWJlZCxcbi5tYXBfY2FudmFzIG9iamVjdCxcbi5tcWEtZGlzcGxheSBpbWcsXG4ubXFhLWRpc3BsYXkgZW1iZWQsXG4ubXFhLWRpc3BsYXkgb2JqZWN0IHtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGN1cnNvcjogYXV0bztcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gYnV0dG9uIHtcbiAgb3V0bGluZTogMDtcbn1cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xufVxuXG4uaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cblt0eXBlPXRleHRdLCBbdHlwZT1wYXNzd29yZF0sIFt0eXBlPWRhdGVdLCBbdHlwZT1kYXRldGltZV0sIFt0eXBlPWRhdGV0aW1lLWxvY2FsXSwgW3R5cGU9bW9udGhdLCBbdHlwZT13ZWVrXSwgW3R5cGU9ZW1haWxdLCBbdHlwZT1udW1iZXJdLCBbdHlwZT1zZWFyY2hdLCBbdHlwZT10ZWxdLCBbdHlwZT10aW1lXSwgW3R5cGU9dXJsXSwgW3R5cGU9Y29sb3JdLFxudGV4dGFyZWEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMi44MzMzMzMzMzMzcmVtO1xuICBtYXJnaW46IDAgMCAxLjM4ODg4ODg4ODlyZW07XG4gIHBhZGRpbmc6IDAuNzc3Nzc3Nzc3OHJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0Y1RjVGNTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGNUY1O1xuICBib3gtc2hhZG93OiBub25lO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjg4ODg4ODg4ODlyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMjcyQzQwO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblt0eXBlPXRleHRdOmZvY3VzLCBbdHlwZT1wYXNzd29yZF06Zm9jdXMsIFt0eXBlPWRhdGVdOmZvY3VzLCBbdHlwZT1kYXRldGltZV06Zm9jdXMsIFt0eXBlPWRhdGV0aW1lLWxvY2FsXTpmb2N1cywgW3R5cGU9bW9udGhdOmZvY3VzLCBbdHlwZT13ZWVrXTpmb2N1cywgW3R5cGU9ZW1haWxdOmZvY3VzLCBbdHlwZT1udW1iZXJdOmZvY3VzLCBbdHlwZT1zZWFyY2hdOmZvY3VzLCBbdHlwZT10ZWxdOmZvY3VzLCBbdHlwZT10aW1lXTpmb2N1cywgW3R5cGU9dXJsXTpmb2N1cywgW3R5cGU9Y29sb3JdOmZvY3VzLFxudGV4dGFyZWE6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjNjE2RkEwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBib3gtc2hhZG93OiAwIDAgMHB4ICM2MTZGQTA7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xufVxuXG50ZXh0YXJlYSB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbnRleHRhcmVhW3Jvd3NdIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5pbnB1dDpkaXNhYmxlZCwgaW5wdXRbcmVhZG9ubHldLFxudGV4dGFyZWE6ZGlzYWJsZWQsXG50ZXh0YXJlYVtyZWFkb25seV0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGNUY1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG5bdHlwZT1zdWJtaXRdLFxuW3R5cGU9YnV0dG9uXSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxuaW5wdXRbdHlwZT1zZWFyY2hdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjNzQ3ODg1O1xufVxuXG5bdHlwZT1maWxlXSxcblt0eXBlPWNoZWNrYm94XSxcblt0eXBlPXJhZGlvXSB7XG4gIG1hcmdpbjogMCAwIDEuMzg4ODg4ODg4OXJlbTtcbn1cblxuW3R5cGU9Y2hlY2tib3hdICsgbGFiZWwsXG5bdHlwZT1yYWRpb10gKyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBtYXJnaW4tbGVmdDogMC42OTQ0NDQ0NDQ0cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDEuMzg4ODg4ODg4OXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblt0eXBlPWNoZWNrYm94XSArIGxhYmVsW2Zvcl0sXG5bdHlwZT1yYWRpb10gKyBsYWJlbFtmb3JdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5sYWJlbCA+IFt0eXBlPWNoZWNrYm94XSxcbmxhYmVsID4gW3R5cGU9cmFkaW9dIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjY5NDQ0NDQ0NDRyZW07XG59XG5cblt0eXBlPWZpbGVdIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjg4ODg4ODg4ODlyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIGNvbG9yOiAjMjcyQzQwO1xufVxubGFiZWwubWlkZGxlIHtcbiAgbWFyZ2luOiAwIDAgMS4zODg4ODg4ODg5cmVtO1xuICBwYWRkaW5nOiAwLjc1cmVtIDA7XG59XG5cbi5oZWxwLXRleHQge1xuICBtYXJnaW4tdG9wOiAtMC42OTQ0NDQ0NDQ0cmVtO1xuICBmb250LXNpemU6IDAuNzIyMjIyMjIyMnJlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzI3MkM0MDtcbn1cblxuLmlucHV0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDEuMzg4ODg4ODg4OXJlbTtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG59XG4uaW5wdXQtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiA0cHggMCAwIDRweDtcbn1cbi5pbnB1dC1ncm91cCA+IDpsYXN0LWNoaWxkID4gKiB7XG4gIGJvcmRlci1yYWRpdXM6IDAgNHB4IDRweCAwO1xufVxuXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGEsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24sXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsLCAuaW5wdXQtZ3JvdXAtYnV0dG9uLCAuaW5wdXQtZ3JvdXAtZmllbGQsIC5pbnB1dC1ncm91cC1sYWJlbCB7XG4gIG1hcmdpbjogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgcGFkZGluZzogMCAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjQ0RDRkQ4O1xuICBiYWNrZ3JvdW5kOiAjRjVGNUY1O1xuICBjb2xvcjogIzI3MkM0MDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDAgYXV0bztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5pbnB1dC1ncm91cC1sYWJlbDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yaWdodDogMDtcbn1cbi5pbnB1dC1ncm91cC1sYWJlbDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG5cbi5pbnB1dC1ncm91cC1maWVsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZsZXg6IDEgMSAwcHg7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDAgYXV0bztcbn1cbi5pbnB1dC1ncm91cC1idXR0b24gYSxcbi5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbixcbi5pbnB1dC1ncm91cC1idXR0b24gbGFiZWwge1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAwLjg4ODg4ODg4ODlyZW07XG59XG5cbmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbmxlZ2VuZCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMC42OTQ0NDQ0NDQ0cmVtO1xufVxuXG4uZmllbGRzZXQge1xuICBtYXJnaW46IDFyZW0gMDtcbiAgcGFkZGluZzogMS4xMTExMTExMTExcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjQ0RDRkQ4O1xufVxuLmZpZWxkc2V0IGxlZ2VuZCB7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLWxlZnQ6IC0wLjE2NjY2NjY2NjdyZW07XG4gIHBhZGRpbmc6IDAgMC4xNjY2NjY2NjY3cmVtO1xufVxuXG5zZWxlY3Qge1xuICBoZWlnaHQ6IDIuODMzMzMzMzMzM3JlbTtcbiAgbWFyZ2luOiAwIDAgMS4zODg4ODg4ODg5cmVtO1xuICBwYWRkaW5nOiAwLjc3Nzc3Nzc3NzhyZW07XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGNUY1RjU7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMC44ODg4ODg4ODg5cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzI3MkM0MDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiByZ2IlMjgyNTUsIDI1NSwgMjU1JTI5Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IC0xLjM4ODg4ODg4ODlyZW0gY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIuMDgzMzMzMzMzM3JlbTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwICkge1xuICBzZWxlY3Qge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBTUJKUkVGVWVOckVsbHNPaENBTVJWc3pDOUlselU3S0NtVkhUSnNvTVdZTVV0cHl2OUJnYnVYUUI1WlNkZ0JZWVk0eWNnQml2azhLWUZzUU1mTWlUVEJQNG8zblV6Q0t6T2FiTEpiTHkyL2czMWV2R2tBZ2luUjQvWmVnS0g1cVgzYkpDc2NBM3QweDNrZ081dFFGeWhoRmY1MHhScUZMYnlNVU5KUXpneWpHUy93Z0Nwdktxa1JCcHVXckU0VjlkKzFFNGRQVVhxSWcxMDdTUU9FLzJEUlF4TXdURHlnSUluVkRFVDlUM2xDb2ovNmovVkNtR2paT2wybEtwWjhBQXdEUVA3eklpbURHRlFBQUFBQkpSVTVFcmtKZ2dnPT1cIik7XG4gIH1cbn1cbnNlbGVjdDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM2MTZGQTA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIGJveC1zaGFkb3c6IDAgMCAwcHggIzYxNkZBMDtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG59XG5zZWxlY3Q6ZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGNUY1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbnNlbGVjdFttdWx0aXBsZV0ge1xuICBoZWlnaHQ6IGF1dG87XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpIHtcbiAgYm9yZGVyLWNvbG9yOiAjRUEyOTQxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjUyLjksIDIzMy42LCAyMzYpO1xufVxuLmlzLWludmFsaWQtaW5wdXQ6bm90KDpmb2N1cyk6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNFQTI5NDE7XG59XG5cbi5pcy1pbnZhbGlkLWxhYmVsIHtcbiAgY29sb3I6ICNFQTI5NDE7XG59XG5cbi5mb3JtLWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogLTAuNjk0NDQ0NDQ0NHJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS4zODg4ODg4ODg5cmVtO1xuICBmb250LXNpemU6IDAuNjY2NjY2NjY2N3JlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjRUEyOTQxO1xufVxuLmZvcm0tZXJyb3IuaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5kaXYsXG5kbCxcbmR0LFxuZGQsXG51bCxcbm9sLFxubGksXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG5wcmUsXG5mb3JtLFxucCxcbmJsb2NrcXVvdGUsXG50aCxcbnRkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4xMTExMTExMTExcmVtO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbmVtLFxuaSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbnN0cm9uZyxcbmIge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4OCU7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5oMSwgLmgxLFxuaDIsIC5oMixcbmgzLCAuaDMsXG5oNCwgLmg0LFxuaDUsIC5oNSxcbmg2LCAuaDYge1xuICBmb250LWZhbWlseTogXCJTcGVjaWFsIEVsaXRlXCIsIGN1cnNpdmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICM2MTZGQTA7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5oMSBzbWFsbCwgLmgxIHNtYWxsLFxuaDIgc21hbGwsIC5oMiBzbWFsbCxcbmgzIHNtYWxsLCAuaDMgc21hbGwsXG5oNCBzbWFsbCwgLmg0IHNtYWxsLFxuaDUgc21hbGwsIC5oNSBzbWFsbCxcbmg2IHNtYWxsLCAuaDYgc21hbGwge1xuICBsaW5lLWhlaWdodDogMDtcbiAgY29sb3I6ICNDRENGRDg7XG59XG5cbmgxLCAuaDEge1xuICBmb250LXNpemU6IDEuNDQ0NDQ0NDQ0NHJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oMiwgLmgyIHtcbiAgZm9udC1zaXplOiAxLjMzMzMzMzMzMzNyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuaDMsIC5oMyB7XG4gIGZvbnQtc2l6ZTogMS4yMjIyMjIyMjIycmVtO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbmg0LCAuaDQge1xuICBmb250LXNpemU6IDEuMTExMTExMTExMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oNSwgLmg1IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbmg2LCAuaDYge1xuICBmb250LXNpemU6IDAuODg4ODg4ODg4OXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBoMSwgLmgxIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cbiAgaDIsIC5oMiB7XG4gICAgZm9udC1zaXplOiAxLjc3Nzc3Nzc3NzhyZW07XG4gIH1cbiAgaDMsIC5oMyB7XG4gICAgZm9udC1zaXplOiAxLjU1NTU1NTU1NTZyZW07XG4gIH1cbiAgaDQsIC5oNCB7XG4gICAgZm9udC1zaXplOiAxLjIyMjIyMjIyMjJyZW07XG4gIH1cbiAgaDUsIC5oNSB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG4gIGg2LCAuaDYge1xuICAgIGZvbnQtc2l6ZTogMC44ODg4ODg4ODg5cmVtO1xuICB9XG59XG5hIHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAjRDUxRDY3O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbmE6aG92ZXIsIGE6Zm9jdXMge1xuICBjb2xvcjogcmdiKDE4My4xOCwgMjQuOTQsIDg4LjU4KTtcbn1cbmEgaW1nIHtcbiAgYm9yZGVyOiAwO1xufVxuXG5ociB7XG4gIGNsZWFyOiBib3RoO1xuICBtYXgtd2lkdGg6IDY2LjY2NjY2NjY2NjdyZW07XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAxLjExMTExMTExMTFyZW0gYXV0bztcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0NEQ0ZEODtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG5cbnVsLFxub2wsXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDEuMTExMTExMTExMXJlbTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxubGkge1xuICBmb250LXNpemU6IGluaGVyaXQ7XG59XG5cbnVsIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbn1cblxub2wge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbn1cblxudWwgdWwsIHVsIG9sLCBvbCB1bCwgb2wgb2wge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuZGwgZHQge1xuICBtYXJnaW4tYm90dG9tOiAwLjNyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMS4xMTExMTExMTExcmVtO1xuICBwYWRkaW5nOiAwLjVyZW0gMS4xMTExMTExMTExcmVtIDAgMS4wNTU1NTU1NTU2cmVtO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNDRENGRDg7XG59XG5ibG9ja3F1b3RlLCBibG9ja3F1b3RlIHAge1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogIzc0Nzg4NTtcbn1cblxuY2l0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuNzIyMjIyMjIyMnJlbTtcbiAgY29sb3I6ICM3NDc4ODU7XG59XG5jaXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oCUIFwiO1xufVxuXG5hYmJyLCBhYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgIzI3MkM0MDtcbiAgY3Vyc29yOiBoZWxwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuY29kZSB7XG4gIHBhZGRpbmc6IDAuMTExMTExMTExMXJlbSAwLjI3Nzc3Nzc3NzhyZW0gMC4wNTU1NTU1NTU2cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjQ0RDRkQ4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGNUY1O1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMyNzJDNDA7XG59XG5cbmtiZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC4xMTExMTExMTExcmVtIDAuMjIyMjIyMjIyMnJlbSAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjVGNUY1O1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgY29sb3I6ICMyNzJDNDA7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxuLnN1YmhlYWRlciB7XG4gIG1hcmdpbi10b3A6IDAuMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBjb2xvcjogIzc0Nzg4NTtcbn1cblxuLmxlYWQge1xuICBmb250LXNpemU6IDEuNDA2MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG5cbi5zdGF0IHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxucCArIC5zdGF0IHtcbiAgbWFyZ2luLXRvcDogLTFyZW07XG59XG5cbnVsLm5vLWJ1bGxldCwgb2wubm8tYnVsbGV0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4udGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi50ZXh0LWp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICAubWVkaXVtLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG4gIC5tZWRpdW0tdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAubWVkaXVtLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICAubGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbiAgLmxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLmxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgfVxufVxuLnNob3ctZm9yLXByaW50IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICAqIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAuaGlkZS1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICB0YWJsZS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcbiAgfVxuICB0aGVhZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGJvZHkuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50O1xuICB9XG4gIHRyLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcbiAgfVxuICB0ZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG4gIHRoLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSxcbiAgYTp2aXNpdGVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgfVxuICAuaXIgYTphZnRlcixcbiAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyLFxuICBhW2hyZWZePVwiI1wiXTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuICBhYmJyW3RpdGxlXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICB9XG4gIHByZSxcbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzc0Nzg4NTtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cbiAgdGhlYWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcbiAgfVxuICB0cixcbiAgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICBAcGFnZSB7XG4gICAgbWFyZ2luOiAwLjVjbTtcbiAgfVxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzO1xuICB9XG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gIH1cbiAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87XG4gIH1cbn1cbi5yb3cge1xuICBtYXgtd2lkdGg6IDY2LjY2NjY2NjY2NjdyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG59XG4ucm93IC5yb3cge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjgzMzMzMzMzMzNyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC44MzMzMzMzMzMzcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnJvdyAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjgzMzMzMzMzMzNyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjgzMzMzMzMzMzNyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5yb3cgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC44MzMzMzMzMzMzcmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC44MzMzMzMzMzMzcmVtO1xuICB9XG59XG4ucm93IC5yb3cuY29sbGFwc2Uge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLnJvdy5leHBhbmRlZCB7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cbi5yb3cuZXhwYW5kZWQgLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG4ucm93Om5vdCguZXhwYW5kZWQpIC5yb3cge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG4ucm93LmNvbGxhcHNlID4gLmNvbHVtbiwgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuLnJvdy5pcy1jb2xsYXBzZS1jaGlsZCwgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW4gPiAucm93LCAucm93LmNvbGxhcHNlID4gLmNvbHVtbnMgPiAucm93IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmNvbHVtbiwgLmNvbHVtbnMge1xuICBmbGV4OiAxIDEgMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjgzMzMzMzMzMzNyZW07XG4gIHBhZGRpbmctbGVmdDogMC44MzMzMzMzMzMzcmVtO1xuICBtaW4td2lkdGg6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuY29sdW1uLCAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC44MzMzMzMzMzMzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC44MzMzMzMzMzMzcmVtO1xuICB9XG59XG5cbi5jb2x1bW4ucm93LnJvdywgLnJvdy5yb3cuY29sdW1ucyB7XG4gIGZsb2F0OiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnJvdyAuY29sdW1uLnJvdy5yb3csIC5yb3cgLnJvdy5yb3cuY29sdW1ucyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLnNtYWxsLTEge1xuICBmbGV4OiAwIDAgOC4zMzMzMzMzMzMzJTtcbiAgbWF4LXdpZHRoOiA4LjMzMzMzMzMzMzMlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogMCU7XG59XG5cbi5zbWFsbC0yIHtcbiAgZmxleDogMCAwIDE2LjY2NjY2NjY2NjclO1xuICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLTMge1xuICBmbGV4OiAwIDAgMjUlO1xuICBtYXgtd2lkdGg6IDI1JTtcbn1cblxuLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtNCB7XG4gIGZsZXg6IDAgMCAzMy4zMzMzMzMzMzMzJTtcbiAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLW9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTtcbn1cblxuLnNtYWxsLTUge1xuICBmbGV4OiAwIDAgNDEuNjY2NjY2NjY2NyU7XG4gIG1heC13aWR0aDogNDEuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLTYge1xuICBmbGV4OiAwIDAgNTAlO1xuICBtYXgtd2lkdGg6IDUwJTtcbn1cblxuLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtNyB7XG4gIGZsZXg6IDAgMCA1OC4zMzMzMzMzMzMzJTtcbiAgbWF4LXdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLW9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTtcbn1cblxuLnNtYWxsLTgge1xuICBmbGV4OiAwIDAgNjYuNjY2NjY2NjY2NyU7XG4gIG1heC13aWR0aDogNjYuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC1vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLTkge1xuICBmbGV4OiAwIDAgNzUlO1xuICBtYXgtd2lkdGg6IDc1JTtcbn1cblxuLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtMTAge1xuICBmbGV4OiAwIDAgODMuMzMzMzMzMzMzMyU7XG4gIG1heC13aWR0aDogODMuMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC1vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiA3NSU7XG59XG5cbi5zbWFsbC0xMSB7XG4gIGZsZXg6IDAgMCA5MS42NjY2NjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLTEyIHtcbiAgZmxleDogMCAwIDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnNtYWxsLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLXVwLTEge1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4uc21hbGwtdXAtMSA+IC5jb2x1bW4sIC5zbWFsbC11cC0xID4gLmNvbHVtbnMge1xuICBmbGV4OiAwIDAgMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uc21hbGwtdXAtMiB7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbi5zbWFsbC11cC0yID4gLmNvbHVtbiwgLnNtYWxsLXVwLTIgPiAuY29sdW1ucyB7XG4gIGZsZXg6IDAgMCA1MCU7XG4gIG1heC13aWR0aDogNTAlO1xufVxuXG4uc21hbGwtdXAtMyB7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbi5zbWFsbC11cC0zID4gLmNvbHVtbiwgLnNtYWxsLXVwLTMgPiAuY29sdW1ucyB7XG4gIGZsZXg6IDAgMCAzMy4zMzMzMzMzMzMzJTtcbiAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLXVwLTQge1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4uc21hbGwtdXAtNCA+IC5jb2x1bW4sIC5zbWFsbC11cC00ID4gLmNvbHVtbnMge1xuICBmbGV4OiAwIDAgMjUlO1xuICBtYXgtd2lkdGg6IDI1JTtcbn1cblxuLnNtYWxsLXVwLTUge1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4uc21hbGwtdXAtNSA+IC5jb2x1bW4sIC5zbWFsbC11cC01ID4gLmNvbHVtbnMge1xuICBmbGV4OiAwIDAgMjAlO1xuICBtYXgtd2lkdGg6IDIwJTtcbn1cblxuLnNtYWxsLXVwLTYge1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4uc21hbGwtdXAtNiA+IC5jb2x1bW4sIC5zbWFsbC11cC02ID4gLmNvbHVtbnMge1xuICBmbGV4OiAwIDAgMTYuNjY2NjY2NjY2NyU7XG4gIG1heC13aWR0aDogMTYuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC11cC03IHtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLnNtYWxsLXVwLTcgPiAuY29sdW1uLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zIHtcbiAgZmxleDogMCAwIDE0LjI4NTcxNDI4NTclO1xuICBtYXgtd2lkdGg6IDE0LjI4NTcxNDI4NTclO1xufVxuXG4uc21hbGwtdXAtOCB7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbi5zbWFsbC11cC04ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTggPiAuY29sdW1ucyB7XG4gIGZsZXg6IDAgMCAxMi41JTtcbiAgbWF4LXdpZHRoOiAxMi41JTtcbn1cblxuLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5zbWFsbC11bmNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuODMzMzMzMzMzM3JlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjgzMzMzMzMzMzNyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgfVxuICAubWVkaXVtLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tMyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIC5tZWRpdW0tNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tNiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIC5tZWRpdW0tOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tOSB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuICAubWVkaXVtLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tdXAtMSB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG4gIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lZGl1bS11cC0yIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbiAgLm1lZGl1bS11cC0yID4gLmNvbHVtbiwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnMge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgLm1lZGl1bS11cC0zIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbiAgLm1lZGl1bS11cC0zID4gLmNvbHVtbiwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnMge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tdXAtNCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG4gIC5tZWRpdW0tdXAtNSB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG4gIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICAgIG1heC13aWR0aDogMjAlO1xuICB9XG4gIC5tZWRpdW0tdXAtNiB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXVwLTcge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuICAubWVkaXVtLXVwLTcgPiAuY29sdW1uLCAubWVkaXVtLXVwLTcgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDE0LjI4NTcxNDI4NTclO1xuICAgIG1heC13aWR0aDogMTQuMjg1NzE0Mjg1NyU7XG4gIH1cbiAgLm1lZGl1bS11cC04IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbiAgLm1lZGl1bS11cC04ID4gLmNvbHVtbiwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnMge1xuICAgIGZsZXg6IDAgMCAxMi41JTtcbiAgICBtYXgtd2lkdGg6IDEyLjUlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1leHBhbmQge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gIH1cbn1cbi5yb3cubWVkaXVtLXVuc3RhY2sgPiAuY29sdW1uLCAucm93Lm1lZGl1bS11bnN0YWNrID4gLmNvbHVtbnMge1xuICBmbGV4OiAwIDAgMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5yb3cubWVkaXVtLXVuc3RhY2sgPiAuY29sdW1uLCAucm93Lm1lZGl1bS11bnN0YWNrID4gLmNvbHVtbnMge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gIH1cbiAgLm1lZGl1bS1jb2xsYXBzZSA+IC5jb2x1bW4sIC5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLm1lZGl1bS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLm1lZGl1bS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuODMzMzMzMzMzM3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuODMzMzMzMzMzM3JlbTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlO1xuICB9XG4gIC5sYXJnZS0yIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgLmxhcmdlLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgLmxhcmdlLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIC5sYXJnZS0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtdXAtMSB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG4gIC5sYXJnZS11cC0xID4gLmNvbHVtbiwgLmxhcmdlLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5sYXJnZS11cC0yIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbiAgLmxhcmdlLXVwLTIgPiAuY29sdW1uLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIC5sYXJnZS11cC0zIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbiAgLmxhcmdlLXVwLTMgPiAuY29sdW1uLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtdXAtNCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG4gIC5sYXJnZS11cC00ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuICAubGFyZ2UtdXAtNSB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG4gIC5sYXJnZS11cC01ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTtcbiAgfVxuICAubGFyZ2UtdXAtNiB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG4gIC5sYXJnZS11cC02ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLXVwLTcge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuICAubGFyZ2UtdXAtNyA+IC5jb2x1bW4sIC5sYXJnZS11cC03ID4gLmNvbHVtbnMge1xuICAgIGZsZXg6IDAgMCAxNC4yODU3MTQyODU3JTtcbiAgICBtYXgtd2lkdGg6IDE0LjI4NTcxNDI4NTclO1xuICB9XG4gIC5sYXJnZS11cC04IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbiAgLmxhcmdlLXVwLTggPiAuY29sdW1uLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMTIuNSU7XG4gICAgbWF4LXdpZHRoOiAxMi41JTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1leHBhbmQge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gIH1cbn1cbi5yb3cubGFyZ2UtdW5zdGFjayA+IC5jb2x1bW4sIC5yb3cubGFyZ2UtdW5zdGFjayA+IC5jb2x1bW5zIHtcbiAgZmxleDogMCAwIDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucm93LmxhcmdlLXVuc3RhY2sgPiAuY29sdW1uLCAucm93LmxhcmdlLXVuc3RhY2sgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgfVxuICAubGFyZ2UtY29sbGFwc2UgPiAuY29sdW1uLCAubGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLmxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1uLCAubGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjgzMzMzMzMzMzNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjgzMzMzMzMzMzNyZW07XG4gIH1cbn1cblxuLnNocmluayB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5jb2x1bW4tYmxvY2sge1xuICBtYXJnaW4tYm90dG9tOiAxLjY2NjY2NjY2NjdyZW07XG59XG4uY29sdW1uLWJsb2NrID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmNvbHVtbi1ibG9jayB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS42NjY2NjY2NjY3cmVtO1xuICB9XG4gIC5jb2x1bW4tYmxvY2sgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIHBhZGRpbmc6IDAuODVlbSAxZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzYxNkZBMDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5idXR0b24ge1xuICBvdXRsaW5lOiAwO1xufVxuLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYig4Mi4wMjY2Nzk4NDE5LCA5NC4xMTQ4MjIxMzQ0LCAxMzYuNDIzMzIwMTU4MSk7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmJ1dHRvbi50aW55IHtcbiAgZm9udC1zaXplOiAwLjY1cmVtO1xufVxuLmJ1dHRvbi5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC43cmVtO1xufVxuLmJ1dHRvbi5sYXJnZSB7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xufVxuLmJ1dHRvbi5odWdlIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLmJ1dHRvbi5leHBhbmRlZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5idXR0b24ucHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNENTFENjc7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmJ1dHRvbi5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLnByaW1hcnk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTcwLjQsIDIzLjIsIDgyLjQpO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5idXR0b24ucHJpbWFyeS1kYXJrZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQkYxQTVDO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5idXR0b24ucHJpbWFyeS1kYXJrZW46aG92ZXIsIC5idXR0b24ucHJpbWFyeS1kYXJrZW46Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTUyLjgsIDIwLjgsIDczLjYpO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5idXR0b24uc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzYxNkZBMDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4uYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoNzcuMjAxNTgxMDI3NywgODguNTc4NjU2MTI2NSwgMTI4LjM5ODQxODk3MjMpO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5idXR0b24uc2Vjb25kYXJ5LWRhcmtlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NzY0OTA7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmJ1dHRvbi5zZWNvbmRhcnktZGFya2VuOmhvdmVyLCAuYnV0dG9uLnNlY29uZGFyeS1kYXJrZW46Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoNjkuNiwgODAsIDExNS4yKTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4uYnV0dG9uLnRlcnRpYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzgxQkIyNztcbiAgY29sb3I6ICMyNzJDNDA7XG59XG4uYnV0dG9uLnRlcnRpYXJ5OmhvdmVyLCAuYnV0dG9uLnRlcnRpYXJ5OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwMy4yLCAxNDkuNiwgMzEuMik7XG4gIGNvbG9yOiAjMjcyQzQwO1xufVxuLmJ1dHRvbi50ZXJ0aWFyeS1kYXJrZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzNBNzIzO1xuICBjb2xvcjogIzI3MkM0MDtcbn1cbi5idXR0b24udGVydGlhcnktZGFya2VuOmhvdmVyLCAuYnV0dG9uLnRlcnRpYXJ5LWRhcmtlbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYig5MiwgMTMzLjYsIDI4KTtcbiAgY29sb3I6ICMyNzJDNDA7XG59XG4uYnV0dG9uLnF1YXRlcm5hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJCQkQxO1xuICBjb2xvcjogIzI3MkM0MDtcbn1cbi5idXR0b24ucXVhdGVybmFyeTpob3ZlciwgLmJ1dHRvbi5xdWF0ZXJuYXJ5OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIyOC4yMjk2Mjk2Mjk2LCAxMTQuOTcwMzcwMzcwNCwgMTYwLjI3NDA3NDA3NDEpO1xuICBjb2xvcjogIzI3MkM0MDtcbn1cbi5idXR0b24uc3VjY2VzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3NUFEMDE7XG4gIGNvbG9yOiAjMjcyQzQwO1xufVxuLmJ1dHRvbi5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoOTMuNiwgMTM4LjQsIDAuOCk7XG4gIGNvbG9yOiAjMjcyQzQwO1xufVxuLmJ1dHRvbi53YXJuaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YzOTcyMTtcbiAgY29sb3I6ICMyNzJDNDA7XG59XG4uYnV0dG9uLndhcm5pbmc6aG92ZXIsIC5idXR0b24ud2FybmluZzpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMDkuNDc2OTIzMDc2OSwgMTIyLjY2NjY2NjY2NjcsIDExLjMyMzA3NjkyMzEpO1xuICBjb2xvcjogIzI3MkM0MDtcbn1cbi5idXR0b24uYWxlcnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUEyOTQxO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5idXR0b24uYWxlcnQ6aG92ZXIsIC5idXR0b24uYWxlcnQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjAwLjM0MDQyNTUzMTksIDE5LjY1OTU3NDQ2ODEsIDQyLjEyNzY1OTU3NDUpO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5idXR0b24uYWxlcnQtbGlnaHRlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGREVBRUM7XG4gIGNvbG9yOiAjMjcyQzQwO1xufVxuLmJ1dHRvbi5hbGVydC1saWdodGVuOmhvdmVyLCAuYnV0dG9uLmFsZXJ0LWxpZ2h0ZW46Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjQ0LjUzMDQzNDc4MjYsIDE0NS4wNjk1NjUyMTc0LCAxNTUuNTM5MTMwNDM0OCk7XG4gIGNvbG9yOiAjMjcyQzQwO1xufVxuLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbltkaXNhYmxlZF0ge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2MTZGQTA7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5IHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5idXR0b24uZGlzYWJsZWQucHJpbWFyeSwgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnk6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnksIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnk6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDUxRDY3O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5idXR0b24uZGlzYWJsZWQucHJpbWFyeS1kYXJrZW4sIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnktZGFya2VuIHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5idXR0b24uZGlzYWJsZWQucHJpbWFyeS1kYXJrZW4sIC5idXR0b24uZGlzYWJsZWQucHJpbWFyeS1kYXJrZW46aG92ZXIsIC5idXR0b24uZGlzYWJsZWQucHJpbWFyeS1kYXJrZW46Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnktZGFya2VuLCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5LWRhcmtlbjpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeS1kYXJrZW46Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQkYxQTVDO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnkge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnksIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeTpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2MTZGQTA7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnktZGFya2VuLCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnktZGFya2VuIHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5LWRhcmtlbiwgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnktZGFya2VuOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeS1kYXJrZW46Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeS1kYXJrZW4sIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeS1kYXJrZW46aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeS1kYXJrZW46Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTc2NDkwO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5idXR0b24uZGlzYWJsZWQudGVydGlhcnksIC5idXR0b25bZGlzYWJsZWRdLnRlcnRpYXJ5IHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5idXR0b24uZGlzYWJsZWQudGVydGlhcnksIC5idXR0b24uZGlzYWJsZWQudGVydGlhcnk6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQudGVydGlhcnk6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnRlcnRpYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS50ZXJ0aWFyeTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0udGVydGlhcnk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODFCQjI3O1xuICBjb2xvcjogIzI3MkM0MDtcbn1cbi5idXR0b24uZGlzYWJsZWQudGVydGlhcnktZGFya2VuLCAuYnV0dG9uW2Rpc2FibGVkXS50ZXJ0aWFyeS1kYXJrZW4ge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuLmJ1dHRvbi5kaXNhYmxlZC50ZXJ0aWFyeS1kYXJrZW4sIC5idXR0b24uZGlzYWJsZWQudGVydGlhcnktZGFya2VuOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnRlcnRpYXJ5LWRhcmtlbjpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0udGVydGlhcnktZGFya2VuLCAuYnV0dG9uW2Rpc2FibGVkXS50ZXJ0aWFyeS1kYXJrZW46aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnRlcnRpYXJ5LWRhcmtlbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3M0E3MjM7XG4gIGNvbG9yOiAjMjcyQzQwO1xufVxuLmJ1dHRvbi5kaXNhYmxlZC5xdWF0ZXJuYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5xdWF0ZXJuYXJ5IHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5idXR0b24uZGlzYWJsZWQucXVhdGVybmFyeSwgLmJ1dHRvbi5kaXNhYmxlZC5xdWF0ZXJuYXJ5OmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnF1YXRlcm5hcnk6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnF1YXRlcm5hcnksIC5idXR0b25bZGlzYWJsZWRdLnF1YXRlcm5hcnk6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnF1YXRlcm5hcnk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjJCQkQxO1xuICBjb2xvcjogIzI3MkM0MDtcbn1cbi5idXR0b24uZGlzYWJsZWQuc3VjY2VzcywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2VzcyB7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG4uYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3MsIC5idXR0b24uZGlzYWJsZWQuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc1QUQwMTtcbiAgY29sb3I6ICMyNzJDNDA7XG59XG4uYnV0dG9uLmRpc2FibGVkLndhcm5pbmcsIC5idXR0b25bZGlzYWJsZWRdLndhcm5pbmcge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nLCAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmc6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMzk3MjE7XG4gIGNvbG9yOiAjMjcyQzQwO1xufVxuLmJ1dHRvbi5kaXNhYmxlZC5hbGVydCwgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuLmJ1dHRvbi5kaXNhYmxlZC5hbGVydCwgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFQTI5NDE7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmJ1dHRvbi5kaXNhYmxlZC5hbGVydC1saWdodGVuLCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydC1saWdodGVuIHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5idXR0b24uZGlzYWJsZWQuYWxlcnQtbGlnaHRlbiwgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydC1saWdodGVuOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0LWxpZ2h0ZW46Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0LWxpZ2h0ZW4sIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0LWxpZ2h0ZW46aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0LWxpZ2h0ZW46Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkRFQUVDO1xuICBjb2xvcjogIzI3MkM0MDtcbn1cbi5idXR0b24uaG9sbG93IHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzYxNkZBMDtcbiAgY29sb3I6ICM2MTZGQTA7XG59XG4uYnV0dG9uLmhvbGxvdywgLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnV0dG9uLmhvbGxvdy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnV0dG9uLmhvbGxvdzpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYig0OC4yNTA5ODgxNDIzLCA1NS4zNjE2NjAwNzkxLCA4MC4yNDkwMTE4NTc3KTtcbiAgY29sb3I6IHJnYig0OC4yNTA5ODgxNDIzLCA1NS4zNjE2NjAwNzkxLCA4MC4yNDkwMTE4NTc3KTtcbn1cbi5idXR0b24uaG9sbG93OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdzpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdzpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNjE2RkEwO1xuICBjb2xvcjogIzYxNkZBMDtcbn1cbi5idXR0b24uaG9sbG93LnByaW1hcnkge1xuICBib3JkZXI6IDFweCBzb2xpZCAjRDUxRDY3O1xuICBjb2xvcjogI0Q1MUQ2Nztcbn1cbi5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYigxMDYuNSwgMTQuNSwgNTEuNSk7XG4gIGNvbG9yOiByZ2IoMTA2LjUsIDE0LjUsIDUxLjUpO1xufVxuLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0Q1MUQ2NztcbiAgY29sb3I6ICNENTFENjc7XG59XG4uYnV0dG9uLmhvbGxvdy5wcmltYXJ5LWRhcmtlbiB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNCRjFBNUM7XG4gIGNvbG9yOiAjQkYxQTVDO1xufVxuLmJ1dHRvbi5ob2xsb3cucHJpbWFyeS1kYXJrZW46aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnktZGFya2VuOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoOTUuNSwgMTMsIDQ2KTtcbiAgY29sb3I6IHJnYig5NS41LCAxMywgNDYpO1xufVxuLmJ1dHRvbi5ob2xsb3cucHJpbWFyeS1kYXJrZW46aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnByaW1hcnktZGFya2VuOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeS1kYXJrZW46Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnByaW1hcnktZGFya2VuOmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNCRjFBNUM7XG4gIGNvbG9yOiAjQkYxQTVDO1xufVxuLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5IHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzYxNkZBMDtcbiAgY29sb3I6ICM2MTZGQTA7XG59XG4uYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDQ4LjI1MDk4ODE0MjMsIDU1LjM2MTY2MDA3OTEsIDgwLjI0OTAxMTg1NzcpO1xuICBjb2xvcjogcmdiKDQ4LjI1MDk4ODE0MjMsIDU1LjM2MTY2MDA3OTEsIDgwLjI0OTAxMTg1NzcpO1xufVxuLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNjE2RkEwO1xuICBjb2xvcjogIzYxNkZBMDtcbn1cbi5idXR0b24uaG9sbG93LnNlY29uZGFyeS1kYXJrZW4ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNTc2NDkwO1xuICBjb2xvcjogIzU3NjQ5MDtcbn1cbi5idXR0b24uaG9sbG93LnNlY29uZGFyeS1kYXJrZW46aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeS1kYXJrZW46Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYig0My41LCA1MCwgNzIpO1xuICBjb2xvcjogcmdiKDQzLjUsIDUwLCA3Mik7XG59XG4uYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnktZGFya2VuOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnktZGFya2VuOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5LWRhcmtlbjpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5LWRhcmtlbjpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNTc2NDkwO1xuICBjb2xvcjogIzU3NjQ5MDtcbn1cbi5idXR0b24uaG9sbG93LnRlcnRpYXJ5IHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzgxQkIyNztcbiAgY29sb3I6ICM4MUJCMjc7XG59XG4uYnV0dG9uLmhvbGxvdy50ZXJ0aWFyeTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cudGVydGlhcnk6Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYig2NC41LCA5My41LCAxOS41KTtcbiAgY29sb3I6IHJnYig2NC41LCA5My41LCAxOS41KTtcbn1cbi5idXR0b24uaG9sbG93LnRlcnRpYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy50ZXJ0aWFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnRlcnRpYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy50ZXJ0aWFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjODFCQjI3O1xuICBjb2xvcjogIzgxQkIyNztcbn1cbi5idXR0b24uaG9sbG93LnRlcnRpYXJ5LWRhcmtlbiB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3M0E3MjM7XG4gIGNvbG9yOiAjNzNBNzIzO1xufVxuLmJ1dHRvbi5ob2xsb3cudGVydGlhcnktZGFya2VuOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy50ZXJ0aWFyeS1kYXJrZW46Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYig1Ny41LCA4My41LCAxNy41KTtcbiAgY29sb3I6IHJnYig1Ny41LCA4My41LCAxNy41KTtcbn1cbi5idXR0b24uaG9sbG93LnRlcnRpYXJ5LWRhcmtlbjpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cudGVydGlhcnktZGFya2VuOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cudGVydGlhcnktZGFya2VuOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy50ZXJ0aWFyeS1kYXJrZW46Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzczQTcyMztcbiAgY29sb3I6ICM3M0E3MjM7XG59XG4uYnV0dG9uLmhvbGxvdy5xdWF0ZXJuYXJ5IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0YyQkJEMTtcbiAgY29sb3I6ICNGMkJCRDE7XG59XG4uYnV0dG9uLmhvbGxvdy5xdWF0ZXJuYXJ5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5xdWF0ZXJuYXJ5OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMTgwLjA3NDA3NDA3NDEsIDM0LjQyNTkyNTkyNTksIDkyLjY4NTE4NTE4NTIpO1xuICBjb2xvcjogcmdiKDE4MC4wNzQwNzQwNzQxLCAzNC40MjU5MjU5MjU5LCA5Mi42ODUxODUxODUyKTtcbn1cbi5idXR0b24uaG9sbG93LnF1YXRlcm5hcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnF1YXRlcm5hcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5xdWF0ZXJuYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5xdWF0ZXJuYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGMkJCRDE7XG4gIGNvbG9yOiAjRjJCQkQxO1xufVxuLmJ1dHRvbi5ob2xsb3cuc3VjY2VzcyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3NUFEMDE7XG4gIGNvbG9yOiAjNzVBRDAxO1xufVxuLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDU4LjUsIDg2LjUsIDAuNSk7XG4gIGNvbG9yOiByZ2IoNTguNSwgODYuNSwgMC41KTtcbn1cbi5idXR0b24uaG9sbG93LnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3NUFEMDE7XG4gIGNvbG9yOiAjNzVBRDAxO1xufVxuLmJ1dHRvbi5ob2xsb3cud2FybmluZyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGMzk3MjE7XG4gIGNvbG9yOiAjRjM5NzIxO1xufVxuLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDEzMC45MjMwNzY5MjMxLCA3Ni42NjY2NjY2NjY3LCA3LjA3NjkyMzA3NjkpO1xuICBjb2xvcjogcmdiKDEzMC45MjMwNzY5MjMxLCA3Ni42NjY2NjY2NjY3LCA3LjA3NjkyMzA3NjkpO1xufVxuLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0YzOTcyMTtcbiAgY29sb3I6ICNGMzk3MjE7XG59XG4uYnV0dG9uLmhvbGxvdy5hbGVydCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNFQTI5NDE7XG4gIGNvbG9yOiAjRUEyOTQxO1xufVxuLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXIsIC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMTI1LjIxMjc2NTk1NzQsIDEyLjI4NzIzNDA0MjYsIDI2LjMyOTc4NzIzNCk7XG4gIGNvbG9yOiByZ2IoMTI1LjIxMjc2NTk1NzQsIDEyLjI4NzIzNDA0MjYsIDI2LjMyOTc4NzIzNCk7XG59XG4uYnV0dG9uLmhvbGxvdy5hbGVydDpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0VBMjk0MTtcbiAgY29sb3I6ICNFQTI5NDE7XG59XG4uYnV0dG9uLmhvbGxvdy5hbGVydC1saWdodGVuIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0ZERUFFQztcbiAgY29sb3I6ICNGREVBRUM7XG59XG4uYnV0dG9uLmhvbGxvdy5hbGVydC1saWdodGVuOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydC1saWdodGVuOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMjIyLjMyNjA4Njk1NjUsIDIxLjE3MzkxMzA0MzUsIDQyLjM0NzgyNjA4Nyk7XG4gIGNvbG9yOiByZ2IoMjIyLjMyNjA4Njk1NjUsIDIxLjE3MzkxMzA0MzUsIDQyLjM0NzgyNjA4Nyk7XG59XG4uYnV0dG9uLmhvbGxvdy5hbGVydC1saWdodGVuOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5hbGVydC1saWdodGVuOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQtbGlnaHRlbjpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQtbGlnaHRlbjpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjRkRFQUVDO1xuICBjb2xvcjogI0ZERUFFQztcbn1cbi5idXR0b24uY2xlYXIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNjE2RkEwO1xuICBjb2xvcjogIzYxNkZBMDtcbn1cbi5idXR0b24uY2xlYXIsIC5idXR0b24uY2xlYXI6aG92ZXIsIC5idXR0b24uY2xlYXI6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idXR0b24uY2xlYXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idXR0b24uY2xlYXI6aG92ZXIsIC5idXR0b24uY2xlYXI6Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYig0OC4yNTA5ODgxNDIzLCA1NS4zNjE2NjAwNzkxLCA4MC4yNDkwMTE4NTc3KTtcbiAgY29sb3I6IHJnYig0OC4yNTA5ODgxNDIzLCA1NS4zNjE2NjAwNzkxLCA4MC4yNDkwMTE4NTc3KTtcbn1cbi5idXR0b24uY2xlYXI6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyOmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM2MTZGQTA7XG4gIGNvbG9yOiAjNjE2RkEwO1xufVxuLmJ1dHRvbi5jbGVhciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXI6aG92ZXIsIC5idXR0b24uY2xlYXI6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyOmZvY3VzLCAuYnV0dG9uLmNsZWFyOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyOmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnV0dG9uLmNsZWFyLnByaW1hcnkge1xuICBib3JkZXI6IDFweCBzb2xpZCAjRDUxRDY3O1xuICBjb2xvcjogI0Q1MUQ2Nztcbn1cbi5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMTA2LjUsIDE0LjUsIDUxLjUpO1xuICBjb2xvcjogcmdiKDEwNi41LCAxNC41LCA1MS41KTtcbn1cbi5idXR0b24uY2xlYXIucHJpbWFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0Q1MUQ2NztcbiAgY29sb3I6ICNENTFENjc7XG59XG4uYnV0dG9uLmNsZWFyLnByaW1hcnksIC5idXR0b24uY2xlYXIucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cywgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idXR0b24uY2xlYXIucHJpbWFyeS1kYXJrZW4ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjQkYxQTVDO1xuICBjb2xvcjogI0JGMUE1Qztcbn1cbi5idXR0b24uY2xlYXIucHJpbWFyeS1kYXJrZW46aG92ZXIsIC5idXR0b24uY2xlYXIucHJpbWFyeS1kYXJrZW46Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYig5NS41LCAxMywgNDYpO1xuICBjb2xvcjogcmdiKDk1LjUsIDEzLCA0Nik7XG59XG4uYnV0dG9uLmNsZWFyLnByaW1hcnktZGFya2VuOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnktZGFya2VuOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LWRhcmtlbjpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LWRhcmtlbjpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjQkYxQTVDO1xuICBjb2xvcjogI0JGMUE1Qztcbn1cbi5idXR0b24uY2xlYXIucHJpbWFyeS1kYXJrZW4sIC5idXR0b24uY2xlYXIucHJpbWFyeS1kYXJrZW4uZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeS1kYXJrZW5bZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnByaW1hcnktZGFya2VuOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnktZGFya2VuOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnktZGFya2VuOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LWRhcmtlbjpmb2N1cywgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LWRhcmtlbjpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LWRhcmtlbjpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNjE2RkEwO1xuICBjb2xvcjogIzYxNkZBMDtcbn1cbi5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDQ4LjI1MDk4ODE0MjMsIDU1LjM2MTY2MDA3OTEsIDgwLjI0OTAxMTg1NzcpO1xuICBjb2xvcjogcmdiKDQ4LjI1MDk4ODE0MjMsIDU1LjM2MTY2MDA3OTEsIDgwLjI0OTAxMTg1NzcpO1xufVxuLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM2MTZGQTA7XG4gIGNvbG9yOiAjNjE2RkEwO1xufVxuLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnksIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeVtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cywgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnV0dG9uLmNsZWFyLnNlY29uZGFyeS1kYXJrZW4ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNTc2NDkwO1xuICBjb2xvcjogIzU3NjQ5MDtcbn1cbi5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LWRhcmtlbjpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnktZGFya2VuOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoNDMuNSwgNTAsIDcyKTtcbiAgY29sb3I6IHJnYig0My41LCA1MCwgNzIpO1xufVxuLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnktZGFya2VuOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS1kYXJrZW46aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS1kYXJrZW46Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LWRhcmtlbjpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNTc2NDkwO1xuICBjb2xvcjogIzU3NjQ5MDtcbn1cbi5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LWRhcmtlbiwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnktZGFya2VuLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS1kYXJrZW5bZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS1kYXJrZW46aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LWRhcmtlbjpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnktZGFya2VuOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnktZGFya2VuOmZvY3VzLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS1kYXJrZW46Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LWRhcmtlbjpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi5jbGVhci50ZXJ0aWFyeSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4MUJCMjc7XG4gIGNvbG9yOiAjODFCQjI3O1xufVxuLmJ1dHRvbi5jbGVhci50ZXJ0aWFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci50ZXJ0aWFyeTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDY0LjUsIDkzLjUsIDE5LjUpO1xuICBjb2xvcjogcmdiKDY0LjUsIDkzLjUsIDE5LjUpO1xufVxuLmJ1dHRvbi5jbGVhci50ZXJ0aWFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci50ZXJ0aWFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIudGVydGlhcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIudGVydGlhcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzgxQkIyNztcbiAgY29sb3I6ICM4MUJCMjc7XG59XG4uYnV0dG9uLmNsZWFyLnRlcnRpYXJ5LCAuYnV0dG9uLmNsZWFyLnRlcnRpYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnRlcnRpYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci50ZXJ0aWFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci50ZXJ0aWFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci50ZXJ0aWFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIudGVydGlhcnk6Zm9jdXMsIC5idXR0b24uY2xlYXIudGVydGlhcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIudGVydGlhcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idXR0b24uY2xlYXIudGVydGlhcnktZGFya2VuIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzczQTcyMztcbiAgY29sb3I6ICM3M0E3MjM7XG59XG4uYnV0dG9uLmNsZWFyLnRlcnRpYXJ5LWRhcmtlbjpob3ZlciwgLmJ1dHRvbi5jbGVhci50ZXJ0aWFyeS1kYXJrZW46Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYig1Ny41LCA4My41LCAxNy41KTtcbiAgY29sb3I6IHJnYig1Ny41LCA4My41LCAxNy41KTtcbn1cbi5idXR0b24uY2xlYXIudGVydGlhcnktZGFya2VuOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnRlcnRpYXJ5LWRhcmtlbjpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIudGVydGlhcnktZGFya2VuOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnRlcnRpYXJ5LWRhcmtlbjpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNzNBNzIzO1xuICBjb2xvcjogIzczQTcyMztcbn1cbi5idXR0b24uY2xlYXIudGVydGlhcnktZGFya2VuLCAuYnV0dG9uLmNsZWFyLnRlcnRpYXJ5LWRhcmtlbi5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci50ZXJ0aWFyeS1kYXJrZW5bZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnRlcnRpYXJ5LWRhcmtlbjpob3ZlciwgLmJ1dHRvbi5jbGVhci50ZXJ0aWFyeS1kYXJrZW46aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIudGVydGlhcnktZGFya2VuOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci50ZXJ0aWFyeS1kYXJrZW46Zm9jdXMsIC5idXR0b24uY2xlYXIudGVydGlhcnktZGFya2VuOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnRlcnRpYXJ5LWRhcmtlbjpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi5jbGVhci5xdWF0ZXJuYXJ5IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0YyQkJEMTtcbiAgY29sb3I6ICNGMkJCRDE7XG59XG4uYnV0dG9uLmNsZWFyLnF1YXRlcm5hcnk6aG92ZXIsIC5idXR0b24uY2xlYXIucXVhdGVybmFyeTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDE4MC4wNzQwNzQwNzQxLCAzNC40MjU5MjU5MjU5LCA5Mi42ODUxODUxODUyKTtcbiAgY29sb3I6IHJnYigxODAuMDc0MDc0MDc0MSwgMzQuNDI1OTI1OTI1OSwgOTIuNjg1MTg1MTg1Mik7XG59XG4uYnV0dG9uLmNsZWFyLnF1YXRlcm5hcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucXVhdGVybmFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIucXVhdGVybmFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5xdWF0ZXJuYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGMkJCRDE7XG4gIGNvbG9yOiAjRjJCQkQxO1xufVxuLmJ1dHRvbi5jbGVhci5xdWF0ZXJuYXJ5LCAuYnV0dG9uLmNsZWFyLnF1YXRlcm5hcnkuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucXVhdGVybmFyeVtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIucXVhdGVybmFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5xdWF0ZXJuYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnF1YXRlcm5hcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnF1YXRlcm5hcnk6Zm9jdXMsIC5idXR0b24uY2xlYXIucXVhdGVybmFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5xdWF0ZXJuYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnV0dG9uLmNsZWFyLnN1Y2Nlc3Mge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNzVBRDAxO1xuICBjb2xvcjogIzc1QUQwMTtcbn1cbi5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoNTguNSwgODYuNSwgMC41KTtcbiAgY29sb3I6IHJnYig1OC41LCA4Ni41LCAwLjUpO1xufVxuLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNzVBRDAxO1xuICBjb2xvcjogIzc1QUQwMTtcbn1cbi5idXR0b24uY2xlYXIuc3VjY2VzcywgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3NbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi5jbGVhci53YXJuaW5nIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0YzOTcyMTtcbiAgY29sb3I6ICNGMzk3MjE7XG59XG4uYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXIsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDEzMC45MjMwNzY5MjMxLCA3Ni42NjY2NjY2NjY3LCA3LjA3NjkyMzA3NjkpO1xuICBjb2xvcjogcmdiKDEzMC45MjMwNzY5MjMxLCA3Ni42NjY2NjY2NjY3LCA3LjA3NjkyMzA3NjkpO1xufVxuLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjRjM5NzIxO1xuICBjb2xvcjogI0YzOTcyMTtcbn1cbi5idXR0b24uY2xlYXIud2FybmluZywgLmJ1dHRvbi5jbGVhci53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmdbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXIsIC5idXR0b24uY2xlYXIud2FybmluZzpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi5jbGVhci5hbGVydCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNFQTI5NDE7XG4gIGNvbG9yOiAjRUEyOTQxO1xufVxuLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlciwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDEyNS4yMTI3NjU5NTc0LCAxMi4yODcyMzQwNDI2LCAyNi4zMjk3ODcyMzQpO1xuICBjb2xvcjogcmdiKDEyNS4yMTI3NjU5NTc0LCAxMi4yODcyMzQwNDI2LCAyNi4zMjk3ODcyMzQpO1xufVxuLmJ1dHRvbi5jbGVhci5hbGVydDpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0VBMjk0MTtcbiAgY29sb3I6ICNFQTI5NDE7XG59XG4uYnV0dG9uLmNsZWFyLmFsZXJ0LCAuYnV0dG9uLmNsZWFyLmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlciwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idXR0b24uY2xlYXIuYWxlcnQtbGlnaHRlbiB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGREVBRUM7XG4gIGNvbG9yOiAjRkRFQUVDO1xufVxuLmJ1dHRvbi5jbGVhci5hbGVydC1saWdodGVuOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0LWxpZ2h0ZW46Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYigyMjIuMzI2MDg2OTU2NSwgMjEuMTczOTEzMDQzNSwgNDIuMzQ3ODI2MDg3KTtcbiAgY29sb3I6IHJnYigyMjIuMzI2MDg2OTU2NSwgMjEuMTczOTEzMDQzNSwgNDIuMzQ3ODI2MDg3KTtcbn1cbi5idXR0b24uY2xlYXIuYWxlcnQtbGlnaHRlbjpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydC1saWdodGVuOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydC1saWdodGVuOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0LWxpZ2h0ZW46Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0ZERUFFQztcbiAgY29sb3I6ICNGREVBRUM7XG59XG4uYnV0dG9uLmNsZWFyLmFsZXJ0LWxpZ2h0ZW4sIC5idXR0b24uY2xlYXIuYWxlcnQtbGlnaHRlbi5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydC1saWdodGVuW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydC1saWdodGVuOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0LWxpZ2h0ZW46aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQtbGlnaHRlbjpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWxlcnQtbGlnaHRlbjpmb2N1cywgLmJ1dHRvbi5jbGVhci5hbGVydC1saWdodGVuOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0LWxpZ2h0ZW46Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idXR0b24uZHJvcGRvd246OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgMC40ZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICNGRkZGRkYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwLjRlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1sZWZ0OiAxZW07XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdzo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjNjE2RkEwO1xufVxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cucHJpbWFyeTo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjRDUxRDY3O1xufVxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cucHJpbWFyeS1kYXJrZW46OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI0JGMUE1Qztcbn1cbi5idXR0b24uZHJvcGRvd24uaG9sbG93LnNlY29uZGFyeTo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjNjE2RkEwO1xufVxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc2Vjb25kYXJ5LWRhcmtlbjo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjNTc2NDkwO1xufVxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cudGVydGlhcnk6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzgxQkIyNztcbn1cbi5idXR0b24uZHJvcGRvd24uaG9sbG93LnRlcnRpYXJ5LWRhcmtlbjo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjNzNBNzIzO1xufVxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cucXVhdGVybmFyeTo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjRjJCQkQxO1xufVxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc3VjY2Vzczo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjNzVBRDAxO1xufVxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cud2FybmluZzo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjRjM5NzIxO1xufVxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuYWxlcnQ6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI0VBMjk0MTtcbn1cbi5idXR0b24uZHJvcGRvd24uaG9sbG93LmFsZXJ0LWxpZ2h0ZW46OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI0ZERUFFQztcbn1cbi5idXR0b24uYXJyb3ctb25seTo6YWZ0ZXIge1xuICB0b3A6IC0wLjFlbTtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG5hLmJ1dHRvbjpob3ZlciwgYS5idXR0b246Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICBmb250LXNpemU6IDAuNzc3Nzc3Nzc3OHJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYmFja2dyb3VuZDogI0Q1MUQ2NztcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4ubGFiZWwucHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6ICNENTFENjc7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmxhYmVsLnByaW1hcnktZGFya2VuIHtcbiAgYmFja2dyb3VuZDogI0JGMUE1QztcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4ubGFiZWwuc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZDogIzYxNkZBMDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4ubGFiZWwuc2Vjb25kYXJ5LWRhcmtlbiB7XG4gIGJhY2tncm91bmQ6ICM1NzY0OTA7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmxhYmVsLnRlcnRpYXJ5IHtcbiAgYmFja2dyb3VuZDogIzgxQkIyNztcbiAgY29sb3I6ICMyNzJDNDA7XG59XG4ubGFiZWwudGVydGlhcnktZGFya2VuIHtcbiAgYmFja2dyb3VuZDogIzczQTcyMztcbiAgY29sb3I6ICMyNzJDNDA7XG59XG4ubGFiZWwucXVhdGVybmFyeSB7XG4gIGJhY2tncm91bmQ6ICNGMkJCRDE7XG4gIGNvbG9yOiAjMjcyQzQwO1xufVxuLmxhYmVsLnN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kOiAjNzVBRDAxO1xuICBjb2xvcjogIzI3MkM0MDtcbn1cbi5sYWJlbC53YXJuaW5nIHtcbiAgYmFja2dyb3VuZDogI0YzOTcyMTtcbiAgY29sb3I6ICMyNzJDNDA7XG59XG4ubGFiZWwuYWxlcnQge1xuICBiYWNrZ3JvdW5kOiAjRUEyOTQxO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5sYWJlbC5hbGVydC1saWdodGVuIHtcbiAgYmFja2dyb3VuZDogI0ZERUFFQztcbiAgY29sb3I6ICMyNzJDNDA7XG59XG5cbi5wcm9ncmVzcyB7XG4gIGhlaWdodDogMC41NTU1NTU1NTU2cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQ0RDRkQ4O1xufVxuLnByb2dyZXNzLnByaW1hcnkgLnByb2dyZXNzLW1ldGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Q1MUQ2Nztcbn1cbi5wcm9ncmVzcy5wcmltYXJ5LWRhcmtlbiAucHJvZ3Jlc3MtbWV0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQkYxQTVDO1xufVxuLnByb2dyZXNzLnNlY29uZGFyeSAucHJvZ3Jlc3MtbWV0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjE2RkEwO1xufVxuLnByb2dyZXNzLnNlY29uZGFyeS1kYXJrZW4gLnByb2dyZXNzLW1ldGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU3NjQ5MDtcbn1cbi5wcm9ncmVzcy50ZXJ0aWFyeSAucHJvZ3Jlc3MtbWV0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODFCQjI3O1xufVxuLnByb2dyZXNzLnRlcnRpYXJ5LWRhcmtlbiAucHJvZ3Jlc3MtbWV0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzNBNzIzO1xufVxuLnByb2dyZXNzLnF1YXRlcm5hcnkgLnByb2dyZXNzLW1ldGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YyQkJEMTtcbn1cbi5wcm9ncmVzcy5zdWNjZXNzIC5wcm9ncmVzcy1tZXRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3NUFEMDE7XG59XG4ucHJvZ3Jlc3Mud2FybmluZyAucHJvZ3Jlc3MtbWV0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjM5NzIxO1xufVxuLnByb2dyZXNzLmFsZXJ0IC5wcm9ncmVzcy1tZXRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFQTI5NDE7XG59XG4ucHJvZ3Jlc3MuYWxlcnQtbGlnaHRlbiAucHJvZ3Jlc3MtbWV0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkRFQUVDO1xufVxuXG4ucHJvZ3Jlc3MtbWV0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Q1MUQ2Nztcbn1cblxuLnByb2dyZXNzLW1ldGVyLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbnByb2dyZXNzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDAuNTU1NTU1NTU1NnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kOiAjQ0RDRkQ4O1xufVxucHJvZ3Jlc3M6Oi13ZWJraXQtcHJvZ3Jlc3MtYmFyIHtcbiAgYmFja2dyb3VuZDogI0NEQ0ZEODtcbn1cbnByb2dyZXNzOjotd2Via2l0LXByb2dyZXNzLXZhbHVlIHtcbiAgYmFja2dyb3VuZDogI0Q1MUQ2Nztcbn1cbnByb2dyZXNzOjotbW96LXByb2dyZXNzLWJhciB7XG4gIGJhY2tncm91bmQ6ICNENTFENjc7XG59XG5wcm9ncmVzcy5wcmltYXJ5IHtcbiAgY29sb3I6ICNENTFENjc7XG59XG5wcm9ncmVzcy5wcmltYXJ5Ojotd2Via2l0LXByb2dyZXNzLXZhbHVlIHtcbiAgYmFja2dyb3VuZDogI0Q1MUQ2Nztcbn1cbnByb2dyZXNzLnByaW1hcnk6Oi1tb3otcHJvZ3Jlc3MtYmFyIHtcbiAgYmFja2dyb3VuZDogI0Q1MUQ2Nztcbn1cbnByb2dyZXNzLnByaW1hcnktZGFya2VuIHtcbiAgY29sb3I6ICNCRjFBNUM7XG59XG5wcm9ncmVzcy5wcmltYXJ5LWRhcmtlbjo6LXdlYmtpdC1wcm9ncmVzcy12YWx1ZSB7XG4gIGJhY2tncm91bmQ6ICNCRjFBNUM7XG59XG5wcm9ncmVzcy5wcmltYXJ5LWRhcmtlbjo6LW1vei1wcm9ncmVzcy1iYXIge1xuICBiYWNrZ3JvdW5kOiAjQkYxQTVDO1xufVxucHJvZ3Jlc3Muc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICM2MTZGQTA7XG59XG5wcm9ncmVzcy5zZWNvbmRhcnk6Oi13ZWJraXQtcHJvZ3Jlc3MtdmFsdWUge1xuICBiYWNrZ3JvdW5kOiAjNjE2RkEwO1xufVxucHJvZ3Jlc3Muc2Vjb25kYXJ5OjotbW96LXByb2dyZXNzLWJhciB7XG4gIGJhY2tncm91bmQ6ICM2MTZGQTA7XG59XG5wcm9ncmVzcy5zZWNvbmRhcnktZGFya2VuIHtcbiAgY29sb3I6ICM1NzY0OTA7XG59XG5wcm9ncmVzcy5zZWNvbmRhcnktZGFya2VuOjotd2Via2l0LXByb2dyZXNzLXZhbHVlIHtcbiAgYmFja2dyb3VuZDogIzU3NjQ5MDtcbn1cbnByb2dyZXNzLnNlY29uZGFyeS1kYXJrZW46Oi1tb3otcHJvZ3Jlc3MtYmFyIHtcbiAgYmFja2dyb3VuZDogIzU3NjQ5MDtcbn1cbnByb2dyZXNzLnRlcnRpYXJ5IHtcbiAgY29sb3I6ICM4MUJCMjc7XG59XG5wcm9ncmVzcy50ZXJ0aWFyeTo6LXdlYmtpdC1wcm9ncmVzcy12YWx1ZSB7XG4gIGJhY2tncm91bmQ6ICM4MUJCMjc7XG59XG5wcm9ncmVzcy50ZXJ0aWFyeTo6LW1vei1wcm9ncmVzcy1iYXIge1xuICBiYWNrZ3JvdW5kOiAjODFCQjI3O1xufVxucHJvZ3Jlc3MudGVydGlhcnktZGFya2VuIHtcbiAgY29sb3I6ICM3M0E3MjM7XG59XG5wcm9ncmVzcy50ZXJ0aWFyeS1kYXJrZW46Oi13ZWJraXQtcHJvZ3Jlc3MtdmFsdWUge1xuICBiYWNrZ3JvdW5kOiAjNzNBNzIzO1xufVxucHJvZ3Jlc3MudGVydGlhcnktZGFya2VuOjotbW96LXByb2dyZXNzLWJhciB7XG4gIGJhY2tncm91bmQ6ICM3M0E3MjM7XG59XG5wcm9ncmVzcy5xdWF0ZXJuYXJ5IHtcbiAgY29sb3I6ICNGMkJCRDE7XG59XG5wcm9ncmVzcy5xdWF0ZXJuYXJ5Ojotd2Via2l0LXByb2dyZXNzLXZhbHVlIHtcbiAgYmFja2dyb3VuZDogI0YyQkJEMTtcbn1cbnByb2dyZXNzLnF1YXRlcm5hcnk6Oi1tb3otcHJvZ3Jlc3MtYmFyIHtcbiAgYmFja2dyb3VuZDogI0YyQkJEMTtcbn1cbnByb2dyZXNzLnN1Y2Nlc3Mge1xuICBjb2xvcjogIzc1QUQwMTtcbn1cbnByb2dyZXNzLnN1Y2Nlc3M6Oi13ZWJraXQtcHJvZ3Jlc3MtdmFsdWUge1xuICBiYWNrZ3JvdW5kOiAjNzVBRDAxO1xufVxucHJvZ3Jlc3Muc3VjY2Vzczo6LW1vei1wcm9ncmVzcy1iYXIge1xuICBiYWNrZ3JvdW5kOiAjNzVBRDAxO1xufVxucHJvZ3Jlc3Mud2FybmluZyB7XG4gIGNvbG9yOiAjRjM5NzIxO1xufVxucHJvZ3Jlc3Mud2FybmluZzo6LXdlYmtpdC1wcm9ncmVzcy12YWx1ZSB7XG4gIGJhY2tncm91bmQ6ICNGMzk3MjE7XG59XG5wcm9ncmVzcy53YXJuaW5nOjotbW96LXByb2dyZXNzLWJhciB7XG4gIGJhY2tncm91bmQ6ICNGMzk3MjE7XG59XG5wcm9ncmVzcy5hbGVydCB7XG4gIGNvbG9yOiAjRUEyOTQxO1xufVxucHJvZ3Jlc3MuYWxlcnQ6Oi13ZWJraXQtcHJvZ3Jlc3MtdmFsdWUge1xuICBiYWNrZ3JvdW5kOiAjRUEyOTQxO1xufVxucHJvZ3Jlc3MuYWxlcnQ6Oi1tb3otcHJvZ3Jlc3MtYmFyIHtcbiAgYmFja2dyb3VuZDogI0VBMjk0MTtcbn1cbnByb2dyZXNzLmFsZXJ0LWxpZ2h0ZW4ge1xuICBjb2xvcjogI0ZERUFFQztcbn1cbnByb2dyZXNzLmFsZXJ0LWxpZ2h0ZW46Oi13ZWJraXQtcHJvZ3Jlc3MtdmFsdWUge1xuICBiYWNrZ3JvdW5kOiAjRkRFQUVDO1xufVxucHJvZ3Jlc3MuYWxlcnQtbGlnaHRlbjo6LW1vei1wcm9ncmVzcy1iYXIge1xuICBiYWNrZ3JvdW5kOiAjRkRFQUVDO1xufVxucHJvZ3Jlc3M6Oi1tcy1maWxsIHtcbiAgYm9yZGVyOiAwO1xufVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG50aGVhZCxcbnRib2R5LFxudGZvb3Qge1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2IoMjQyLjI1LCAyNDIuMjUsIDI0Mi4yNSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG59XG5cbmNhcHRpb24ge1xuICBwYWRkaW5nOiAwLjQ0NDQ0NDQ0NDRyZW0gMC41NTU1NTU1NTU2cmVtIDAuNTU1NTU1NTU1NnJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbnRoZWFkIHtcbiAgYmFja2dyb3VuZDogIzYxNkZBMDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbnRmb290IHtcbiAgYmFja2dyb3VuZDogcmdiKDI0Mi4yNSwgMjQyLjI1LCAyNDIuMjUpO1xuICBjb2xvcjogIzI3MkM0MDtcbn1cblxudGhlYWQgdHIsXG50Zm9vdCB0ciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxudGhlYWQgdGgsXG50aGVhZCB0ZCxcbnRmb290IHRoLFxudGZvb3QgdGQge1xuICBwYWRkaW5nOiAwLjQ0NDQ0NDQ0NDRyZW0gMC41NTU1NTU1NTU2cmVtIDAuNTU1NTU1NTU1NnJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbnRib2R5IHRoLFxudGJvZHkgdGQge1xuICBwYWRkaW5nOiAwLjQ0NDQ0NDQ0NDRyZW0gMC41NTU1NTU1NTU2cmVtIDAuNTU1NTU1NTU1NnJlbTtcbn1cblxudGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI0Mi4yNSwgMjQyLjI1LCAyNDIuMjUpO1xufVxuXG50YWJsZS51bnN0cmlwZWQgdGJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xufVxudGFibGUudW5zdHJpcGVkIHRib2R5IHRyIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYigyNDIuMjUsIDI0Mi4yNSwgMjQyLjI1KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDkuOTk4NzVlbSkge1xuICB0YWJsZS5zdGFjayB0aGVhZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICB0YWJsZS5zdGFjayB0Zm9vdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICB0YWJsZS5zdGFjayB0cixcbiAgdGFibGUuc3RhY2sgdGgsXG4gIHRhYmxlLnN0YWNrIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICB0YWJsZS5zdGFjayB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG50YWJsZS5zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbnRhYmxlLmhvdmVyIHRoZWFkIHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDkyLjY3MTkzNjc1ODksIDEwNi4zMjg4NTM3NTQ5LCAxNTQuMTI4MDYzMjQxMSk7XG59XG50YWJsZS5ob3ZlciB0Zm9vdCB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMzcuMTUsIDIzNy4xNSwgMjM3LjE1KTtcbn1cbnRhYmxlLmhvdmVyIHRib2R5IHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI0OS45LCAyNDkuOSwgMjQ5LjkpO1xufVxudGFibGUuaG92ZXI6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIzNy4xNSwgMjM3LjE1LCAyMzcuMTUpO1xufVxuXG4udGFibGUtc2Nyb2xsIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6IDIuMWVtO1xuICBwYWRkaW5nOiAwLjNlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBmb250LXNpemU6IDAuNnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjRDUxRDY3O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5iYWRnZS5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogI0Q1MUQ2NztcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4uYmFkZ2UucHJpbWFyeS1kYXJrZW4ge1xuICBiYWNrZ3JvdW5kOiAjQkYxQTVDO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5iYWRnZS5zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kOiAjNjE2RkEwO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5iYWRnZS5zZWNvbmRhcnktZGFya2VuIHtcbiAgYmFja2dyb3VuZDogIzU3NjQ5MDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4uYmFkZ2UudGVydGlhcnkge1xuICBiYWNrZ3JvdW5kOiAjODFCQjI3O1xuICBjb2xvcjogIzI3MkM0MDtcbn1cbi5iYWRnZS50ZXJ0aWFyeS1kYXJrZW4ge1xuICBiYWNrZ3JvdW5kOiAjNzNBNzIzO1xuICBjb2xvcjogIzI3MkM0MDtcbn1cbi5iYWRnZS5xdWF0ZXJuYXJ5IHtcbiAgYmFja2dyb3VuZDogI0YyQkJEMTtcbiAgY29sb3I6ICMyNzJDNDA7XG59XG4uYmFkZ2Uuc3VjY2VzcyB7XG4gIGJhY2tncm91bmQ6ICM3NUFEMDE7XG4gIGNvbG9yOiAjMjcyQzQwO1xufVxuLmJhZGdlLndhcm5pbmcge1xuICBiYWNrZ3JvdW5kOiAjRjM5NzIxO1xuICBjb2xvcjogIzI3MkM0MDtcbn1cbi5iYWRnZS5hbGVydCB7XG4gIGJhY2tncm91bmQ6ICNFQTI5NDE7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmJhZGdlLmFsZXJ0LWxpZ2h0ZW4ge1xuICBiYWNrZ3JvdW5kOiAjRkRFQUVDO1xuICBjb2xvcjogIzI3MkM0MDtcbn1cblxuLmJyZWFkY3J1bWJzIHtcbiAgbWFyZ2luOiAwLjU1NTU1NTU1NTZyZW0gMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi5icmVhZGNydW1iczo6YmVmb3JlLCAuYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBmbGV4LWJhc2lzOiAwO1xuICBvcmRlcjogMTtcbn1cbi5icmVhZGNydW1iczo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cbi5icmVhZGNydW1icyBsaSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBmb250LXNpemU6IDAuODg4ODg4ODg4OXJlbTtcbiAgY29sb3I6ICNENTFENjc7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5icmVhZGNydW1icyBsaTpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIDAuNXJlbTtcbiAgb3BhY2l0eTogMTtcbiAgY29udGVudDogXCJcXGU5MDNcIjtcbiAgY29sb3I6ICNDRENGRDg7XG59XG4uYnJlYWRjcnVtYnMgYSB7XG4gIGNvbG9yOiAjNzQ3ODg1O1xufVxuLmJyZWFkY3J1bWJzIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi5icmVhZGNydW1icyAuZGlzYWJsZWQge1xuICBjb2xvcjogI0NEQ0ZEODtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmNhbGxvdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMXJlbSAwIDFyZW0gMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0VBMjk0MTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgY29sb3I6ICMyNzJDNDA7XG59XG4uY2FsbG91dCA+IDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4uY2FsbG91dCA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5jYWxsb3V0LnByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjUwLjE4MjY0NDYyODEsIDIxOS42MTczNTUzNzE5LCAyMzEuOTA5OTE3MzU1NCk7XG4gIGNvbG9yOiAjMjcyQzQwO1xufVxuLmNhbGxvdXQucHJpbWFyeS1kYXJrZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjQ5LjczNDEwMTM4MjUsIDIxNi4zMTU4OTg2MTc1LCAyMjkuNjgzMTc5NzIzNSk7XG4gIGNvbG9yOiAjMjcyQzQwO1xufVxuLmNhbGxvdXQuc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIzMS4zLCAyMzMuNCwgMjQwLjc1KTtcbiAgY29sb3I6ICMyNzJDNDA7XG59XG4uY2FsbG91dC5zZWNvbmRhcnktZGFya2VuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIyOC45MTE2ODgzMTE3LCAyMzEuMjY2ODgzMTE2OSwgMjM5LjIzODMxMTY4ODMpO1xuICBjb2xvcjogIzI3MkM0MDtcbn1cbi5jYWxsb3V0LnRlcnRpYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIzNi43MTU5MjkyMDM1LCAyNDcuNjQ4NjcyNTY2NCwgMjE5Ljc1MTMyNzQzMzYpO1xuICBjb2xvcjogIzI3MkM0MDtcbn1cbi5jYWxsb3V0LnRlcnRpYXJ5LWRhcmtlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMzUuMTAxOTgwMTk4LCAyNDYuOTk1MDQ5NTA1LCAyMTYuODA0OTUwNDk1KTtcbiAgY29sb3I6ICMyNzJDNDA7XG59XG4uY2FsbG91dC5xdWF0ZXJuYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1My4wNSwgMjQ0LjgsIDI0OC4xKTtcbiAgY29sb3I6ICMyNzJDNDA7XG59XG4uY2FsbG91dC5zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIzOC40ODk2NTUxNzI0LCAyNTQuNzEwMzQ0ODI3NiwgMjA0Ljg4OTY1NTE3MjQpO1xuICBjb2xvcjogIzI3MkM0MDtcbn1cbi5jYWxsb3V0Lndhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjUzLjIsIDIzOS40LCAyMjEuNyk7XG4gIGNvbG9yOiAjMjcyQzQwO1xufVxuLmNhbGxvdXQuYWxlcnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjUxLjg1LCAyMjIuOSwgMjI2LjUpO1xuICBjb2xvcjogIzI3MkM0MDtcbn1cbi5jYWxsb3V0LmFsZXJ0LWxpZ2h0ZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU0LjcsIDI1MS44NSwgMjUyLjE1KTtcbiAgY29sb3I6ICMyNzJDNDA7XG59XG4uY2FsbG91dC5zbWFsbCB7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG59XG4uY2FsbG91dC5sYXJnZSB7XG4gIHBhZGRpbmctdG9wOiAzcmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgcGFkZGluZy1sZWZ0OiAzcmVtO1xufVxuXG4uY2FyZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtZ3JvdzogMTtcbiAgbWFyZ2luLWJvdHRvbTogMS42NjY2NjY2NjY3cmVtO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6ICMyNzJDNDA7XG59XG4uY2FyZCA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtZGl2aWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kOiAjRjVGNUY1O1xufVxuLmNhcmQtZGl2aWRlciA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtc2VjdGlvbiB7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuLmNhcmQtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtaW1hZ2Uge1xuICBtaW4taGVpZ2h0OiAxcHg7XG59XG5cbi5oYXMtdGlwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjdXJzb3I6IGhlbHA7XG59XG5cbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwJSArIDAuNjQ5NXJlbSk7XG4gIHotaW5kZXg6IDEyMDA7XG4gIG1heC13aWR0aDogMzMuMzMzMzMzMzMzM3JlbTtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBmb250LXNpemU6IDg4JTtcbiAgY29sb3I6ICMyNzJDNDA7XG59XG4udG9vbHRpcDo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLnRvb2x0aXAuYm90dG9tOjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCAwLjc1cmVtO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjRkZGRkZGO1xuICBib3R0b206IDEwMCU7XG59XG4udG9vbHRpcC5ib3R0b20uYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cbi50b29sdGlwLnRvcDo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgMC43NXJlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogI0ZGRkZGRiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgdG9wOiAxMDAlO1xuICBib3R0b206IGF1dG87XG59XG4udG9vbHRpcC50b3AuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cbi50b29sdGlwLmxlZnQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNGRkZGRkY7XG4gIGxlZnQ6IDEwMCU7XG59XG4udG9vbHRpcC5sZWZ0LmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgYm90dG9tOiBhdXRvO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuLnRvb2x0aXAucmlnaHQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICNGRkZGRkYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xufVxuLnRvb2x0aXAucmlnaHQuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICBib3R0b206IGF1dG87XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG4udG9vbHRpcC5hbGlnbi10b3A6OmJlZm9yZSB7XG4gIGJvdHRvbTogYXV0bztcbiAgdG9wOiAxMCU7XG59XG4udG9vbHRpcC5hbGlnbi1ib3R0b206OmJlZm9yZSB7XG4gIGJvdHRvbTogMTAlO1xuICB0b3A6IGF1dG87XG59XG4udG9vbHRpcC5hbGlnbi1sZWZ0OjpiZWZvcmUge1xuICBsZWZ0OiAxMCU7XG4gIHJpZ2h0OiBhdXRvO1xufVxuLnRvb2x0aXAuYWxpZ24tcmlnaHQ6OmJlZm9yZSB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxMCU7XG59XG5cbi5tZWRpYS1vYmplY3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tYm90dG9tOiAyLjc3Nzc3Nzc3NzhyZW07XG4gIGZsZXgtd3JhcDogbm93cmFwO1xufVxuLm1lZGlhLW9iamVjdCBpbWcge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxOS45OTg3NWVtKSB7XG4gIC5tZWRpYS1vYmplY3Quc3RhY2stZm9yLXNtYWxsIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbn1cblxuLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgZmxleDogMCAxIGF1dG87XG59XG4ubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjExMTExMTExMTFyZW07XG59XG4ubWVkaWEtb2JqZWN0LXNlY3Rpb246bGFzdC1jaGlsZDpub3QoOm50aC1jaGlsZCgyKSkge1xuICBwYWRkaW5nLWxlZnQ6IDEuMTExMTExMTExMXJlbTtcbn1cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE5Ljk5ODc1ZW0pIHtcbiAgLnN0YWNrLWZvci1zbWFsbCAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDEuMTExMTExMTExMXJlbTtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAuc3RhY2stZm9yLXNtYWxsIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4ubWVkaWEtb2JqZWN0LXNlY3Rpb24ubWFpbi1zZWN0aW9uIHtcbiAgZmxleDogMSAxIDBweDtcbn1cblxuLm9yYml0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ub3JiaXQtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm9yYml0LXNsaWRlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5vcmJpdC1zbGlkZS5uby1tb3Rpb251aS5pcy1hY3RpdmUge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG59XG5cbi5vcmJpdC1maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cbi5vcmJpdC1pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbn1cblxuLm9yYml0LWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzksIDQ0LCA2NCwgMC41KTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi5vcmJpdC1uZXh0LCAub3JiaXQtcHJldmlvdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLm9yYml0LW5leHQsIFtkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLm9yYml0LXByZXZpb3VzIHtcbiAgb3V0bGluZTogMDtcbn1cbi5vcmJpdC1uZXh0OmhvdmVyLCAub3JiaXQtcHJldmlvdXM6aG92ZXIsIC5vcmJpdC1uZXh0OmFjdGl2ZSwgLm9yYml0LXByZXZpb3VzOmFjdGl2ZSwgLm9yYml0LW5leHQ6Zm9jdXMsIC5vcmJpdC1wcmV2aW91czpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzksIDQ0LCA2NCwgMC41KTtcbn1cblxuLm9yYml0LXByZXZpb3VzIHtcbiAgbGVmdDogMDtcbn1cblxuLm9yYml0LW5leHQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbn1cblxuLm9yYml0LWJ1bGxldHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDAuOHJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5vcmJpdC1idWxsZXRzIHtcbiAgb3V0bGluZTogMDtcbn1cbi5vcmJpdC1idWxsZXRzIGJ1dHRvbiB7XG4gIHdpZHRoOiAxLjJyZW07XG4gIGhlaWdodDogMS4ycmVtO1xuICBtYXJnaW46IDAuMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xufVxuLm9yYml0LWJ1bGxldHMgYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzYxNkZBMDtcbn1cbi5vcmJpdC1idWxsZXRzIGJ1dHRvbi5pcy1hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjE2RkEwO1xufVxuXG4ubWVudSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5tZW51IGxpIHtcbiAgb3V0bGluZTogMDtcbn1cbi5tZW51IGEsXG4ubWVudSAuYnV0dG9uIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuN3JlbSAwLjhyZW07XG59XG4ubWVudSBpbnB1dCxcbi5tZW51IHNlbGVjdCxcbi5tZW51IGEsXG4ubWVudSBidXR0b24ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLm1lbnUgaW5wdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4ubWVudSwgLm1lbnUuaG9yaXpvbnRhbCB7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbn1cbi5tZW51LnZlcnRpY2FsIHtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4ubWVudS5leHBhbmRlZCBsaSB7XG4gIGZsZXg6IDEgMSAwcHg7XG59XG4ubWVudS5zaW1wbGUge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLm1lbnUuc2ltcGxlIGxpICsgbGkge1xuICBtYXJnaW4tbGVmdDogMnJlbTtcbn1cbi5tZW51LnNpbXBsZSBhIHtcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZW51Lm1lZGl1bS1ob3Jpem9udGFsIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubWVudS5tZWRpdW0tdmVydGljYWwge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLm1lbnUubWVkaXVtLWV4cGFuZGVkIGxpIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICB9XG4gIC5tZW51Lm1lZGl1bS1zaW1wbGUgbGkge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tZW51LmxhcmdlLWhvcml6b250YWwge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5tZW51LmxhcmdlLXZlcnRpY2FsIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gIC5tZW51LmxhcmdlLWV4cGFuZGVkIGxpIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICB9XG4gIC5tZW51LmxhcmdlLXNpbXBsZSBsaSB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgfVxufVxuLm1lbnUubmVzdGVkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbn1cbi5tZW51Lmljb25zIGEge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLm1lbnUuaWNvbi10b3AgYSwgLm1lbnUuaWNvbi1yaWdodCBhLCAubWVudS5pY29uLWJvdHRvbSBhLCAubWVudS5pY29uLWxlZnQgYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4ubWVudS5pY29uLWxlZnQgbGkgYSB7XG4gIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbn1cbi5tZW51Lmljb24tbGVmdCBsaSBhIGltZyxcbi5tZW51Lmljb24tbGVmdCBsaSBhIGksXG4ubWVudS5pY29uLWxlZnQgbGkgYSBzdmcge1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG59XG4ubWVudS5pY29uLXJpZ2h0IGxpIGEge1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG59XG4ubWVudS5pY29uLXJpZ2h0IGxpIGEgaW1nLFxuLm1lbnUuaWNvbi1yaWdodCBsaSBhIGksXG4ubWVudS5pY29uLXJpZ2h0IGxpIGEgc3ZnIHtcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG59XG4ubWVudS5pY29uLXRvcCBsaSBhIHtcbiAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xufVxuLm1lbnUuaWNvbi10b3AgbGkgYSBpbWcsXG4ubWVudS5pY29uLXRvcCBsaSBhIGksXG4ubWVudS5pY29uLXRvcCBsaSBhIHN2ZyB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5tZW51Lmljb24tYm90dG9tIGxpIGEge1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG59XG4ubWVudS5pY29uLWJvdHRvbSBsaSBhIGltZyxcbi5tZW51Lmljb24tYm90dG9tIGxpIGEgaSxcbi5tZW51Lmljb24tYm90dG9tIGxpIGEgc3ZnIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLm1lbnUgLmlzLWFjdGl2ZSA+IGEge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4ubWVudSAuYWN0aXZlID4gYSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5tZW51LmFsaWduLWxlZnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG4ubWVudS5hbGlnbi1yaWdodCBsaSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG4ubWVudS5hbGlnbi1yaWdodCBsaSAuc3VibWVudSBsaSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cbi5tZW51LmFsaWduLXJpZ2h0LnZlcnRpY2FsIGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLm1lbnUuYWxpZ24tcmlnaHQudmVydGljYWwgbGkgLnN1Ym1lbnUgbGkge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi5tZW51LmFsaWduLXJpZ2h0IC5uZXN0ZWQge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLm1lbnUuYWxpZ24tY2VudGVyIGxpIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4ubWVudS5hbGlnbi1jZW50ZXIgbGkgLnN1Ym1lbnUgbGkge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG4ubWVudSAubWVudS10ZXh0IHtcbiAgcGFkZGluZzogMC43cmVtIDAuOHJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLm1lbnUtY2VudGVyZWQgPiAubWVudSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLm1lbnUtY2VudGVyZWQgPiAubWVudSBsaSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLm1lbnUtY2VudGVyZWQgPiAubWVudSBsaSAuc3VibWVudSBsaSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cblxuLm5vLWpzIFtkYXRhLXJlc3BvbnNpdmUtbWVudV0gdWwge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubWVudS1pY29uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5tZW51LWljb246OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJveC1zaGFkb3c6IDAgN3B4IDAgI0ZGRkZGRiwgMCAxNHB4IDAgI0ZGRkZGRjtcbiAgY29udGVudDogXCJcIjtcbn1cbi5tZW51LWljb246aG92ZXI6OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogI0NEQ0ZEODtcbiAgYm94LXNoYWRvdzogMCA3cHggMCAjQ0RDRkQ4LCAwIDE0cHggMCAjQ0RDRkQ4O1xufVxuXG4ubWVudS1pY29uLmRhcmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMTZweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLm1lbnUtaWNvbi5kYXJrOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMnB4O1xuICBiYWNrZ3JvdW5kOiAjMjcyQzQwO1xuICBib3gtc2hhZG93OiAwIDdweCAwICMyNzJDNDAsIDAgMTRweCAwICMyNzJDNDA7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG4ubWVudS1pY29uLmRhcms6aG92ZXI6OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogIzc0Nzg4NTtcbiAgYm94LXNoYWRvdzogMCA3cHggMCAjNzQ3ODg1LCAwIDE0cHggMCAjNzQ3ODg1O1xufVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG59XG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwO1xufVxuLmRyb3Bkb3duLm1lbnUgYSB7XG4gIHBhZGRpbmc6IDEuNzc3Nzc3Nzc3OHJlbSAwLjgzMzMzMzMzMzNyZW07XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5kcm9wZG93bi5tZW51IGEge1xuICBvdXRsaW5lOiAwO1xufVxuLmRyb3Bkb3duLm1lbnUgLmlzLWFjdGl2ZSA+IGEge1xuICBiYWNrZ3JvdW5kOiAjNjE2RkEwO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5uby1qcyAuZHJvcGRvd24ubWVudSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZHJvcGRvd24ubWVudSAubmVzdGVkLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMDtcbn1cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAwO1xuICByaWdodDogMTAwJTtcbiAgbGVmdDogYXV0bztcbn1cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgfVxufVxuLmRyb3Bkb3duLm1lbnUuYWxpZ24tcmlnaHQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuZmlyc3Qtc3ViIHtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcbn1cblxuLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICB3aWR0aDogMTAwcHg7XG59XG4uaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbC5hbGlnbi1yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IGE6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDVweDtcbiAgbGVmdDogYXV0bztcbiAgbWFyZ2luLXRvcDogLTZweDtcbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1pbm5lciA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTAwJTtcbn1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWluLXdpZHRoOiA0MHB4O1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG59XG4uZHJvcGRvd24gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgYSB7XG4gIHBhZGRpbmc6IDAuOXJlbSAwLjhyZW0gMC45cmVtIDAuOHJlbTtcbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51ID4gbGkge1xuICB3aWR0aDogMTAwJTtcbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51LmpzLWRyb3Bkb3duLWFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc3RpY2t5LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnN0aWNreSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnN0aWNreS5pcy1zdHVjayB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogNTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uc3RpY2t5LmlzLXN0dWNrLmlzLWF0LXRvcCB7XG4gIHRvcDogMDtcbn1cbi5zdGlja3kuaXMtc3R1Y2suaXMtYXQtYm90dG9tIHtcbiAgYm90dG9tOiAwO1xufVxuXG4uc3RpY2t5LmlzLWFuY2hvcmVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogYXV0bztcbn1cbi5zdGlja3kuaXMtYW5jaG9yZWQuaXMtYXQtYm90dG9tIHtcbiAgYm90dG9tOiAwO1xufVxuXG4udG9wLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLnRvcC1iYXIsXG4udG9wLWJhciB1bCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnRvcC1iYXIgdWwgdWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDUxRDY3O1xufVxuLnRvcC1iYXIgaW5wdXQge1xuICBtYXgtd2lkdGg6IDIwMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG4udG9wLWJhciAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLnRvcC1iYXIgaW5wdXQuYnV0dG9uIHtcbiAgd2lkdGg6IGF1dG87XG59XG4udG9wLWJhciAudG9wLWJhci1sZWZ0LFxuLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQge1xuICBmbGV4OiAwIDAgMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRvcC1iYXIge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC50b3AtYmFyIC50b3AtYmFyLWxlZnQge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuICAudG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ5Ljk5ODc1ZW0pIHtcbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbWVkaXVtIC50b3AtYmFyLWxlZnQsXG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSAudG9wLWJhci1yaWdodCB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLWxhcmdlIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbGFyZ2UgLnRvcC1iYXItbGVmdCxcbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbGFyZ2UgLnRvcC1iYXItcmlnaHQge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuXG4udG9wLWJhci10aXRsZSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBtYXJnaW46IDAuNXJlbSAxcmVtIDAuNXJlbSAwO1xufVxuXG4udG9wLWJhci1sZWZ0LFxuLnRvcC1iYXItcmlnaHQge1xuICBmbGV4OiAwIDAgYXV0bztcbn1cblxuLmFsaWduLWxlZnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi5hbGlnbi1yaWdodCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi5hbGlnbi1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmFsaWduLWp1c3RpZnkge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5hbGlnbi1zcGFjZWQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbn1cblxuLmFsaWduLWxlZnQudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cblxuLmFsaWduLXJpZ2h0LnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4uYWxpZ24tY2VudGVyLnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmFsaWduLXRvcCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4uYWxpZ24tc2VsZi10b3Age1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xufVxuXG4uYWxpZ24tYm90dG9tIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuXG4uYWxpZ24tc2VsZi1ib3R0b20ge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbn1cblxuLmFsaWduLW1pZGRsZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5hbGlnbi1zZWxmLW1pZGRsZSB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbn1cblxuLmFsaWduLXN0cmV0Y2gge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbn1cblxuLmFsaWduLXNlbGYtc3RyZXRjaCB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG59XG5cbi5hbGlnbi1jZW50ZXItbWlkZGxlIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnNtYWxsLW9yZGVyLTEge1xuICBvcmRlcjogMTtcbn1cblxuLnNtYWxsLW9yZGVyLTIge1xuICBvcmRlcjogMjtcbn1cblxuLnNtYWxsLW9yZGVyLTMge1xuICBvcmRlcjogMztcbn1cblxuLnNtYWxsLW9yZGVyLTQge1xuICBvcmRlcjogNDtcbn1cblxuLnNtYWxsLW9yZGVyLTUge1xuICBvcmRlcjogNTtcbn1cblxuLnNtYWxsLW9yZGVyLTYge1xuICBvcmRlcjogNjtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTtcbiAgfVxuICAubWVkaXVtLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyO1xuICB9XG4gIC5tZWRpdW0tb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7XG4gIH1cbiAgLm1lZGl1bS1vcmRlci00IHtcbiAgICBvcmRlcjogNDtcbiAgfVxuICAubWVkaXVtLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1O1xuICB9XG4gIC5tZWRpdW0tb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTtcbiAgfVxuICAubGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7XG4gIH1cbiAgLmxhcmdlLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzO1xuICB9XG4gIC5sYXJnZS1vcmRlci00IHtcbiAgICBvcmRlcjogNDtcbiAgfVxuICAubGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7XG4gIH1cbiAgLmxhcmdlLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2O1xuICB9XG59XG4uZmxleC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4uZmxleC1jaGlsZC1hdXRvIHtcbiAgZmxleDogMSAxIGF1dG87XG59XG5cbi5mbGV4LWNoaWxkLWdyb3cge1xuICBmbGV4OiAxIDAgYXV0bztcbn1cblxuLmZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgZmxleDogMCAxIGF1dG87XG59XG5cbi5mbGV4LWRpci1yb3cge1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuXG4uZmxleC1kaXItcm93LXJldmVyc2Uge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG59XG5cbi5mbGV4LWRpci1jb2x1bW4ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4uZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuICAubWVkaXVtLWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubWVkaXVtLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbiAgLm1lZGl1bS1mbGV4LWRpci1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLm1lZGl1bS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuICAubGFyZ2UtZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5sYXJnZS1mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICB9XG4gIC5sYXJnZS1mbGV4LWRpci1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLmxhcmdlLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gIH1cbn1cbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxOS45OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMGVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAyMGVtKSB7XG4gIC5zaG93LWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA0OS45OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1tZWRpdW0tb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDUwZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhpZGUtZm9yLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNob3ctZm9yLWxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc2hvdy1mb3Itc3IsXG4uc2hvdy1vbi1mb2N1cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgYm9yZGVyOiAwO1xufVxuXG4uc2hvdy1vbi1mb2N1czphY3RpdmUsIC5zaG93LW9uLWZvY3VzOmZvY3VzIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxuLnNob3ctZm9yLWxhbmRzY2FwZSxcbi5oaWRlLWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmhpZGUtZm9yLWxhbmRzY2FwZSxcbi5zaG93LWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc2xpZGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1pbi1kb3duLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xufVxuXG4uc2xpZGUtaW4tbGVmdC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1pbi1sZWZ0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xufVxuXG4uc2xpZGUtaW4tdXAubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1pbi11cC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cblxuLnNsaWRlLWluLXJpZ2h0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtaW4tcmlnaHQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG59XG5cbi5zbGlkZS1vdXQtZG93bi5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWRlLW91dC1kb3duLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xufVxuXG4uc2xpZGUtb3V0LXJpZ2h0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtb3V0LXJpZ2h0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uc2xpZGUtb3V0LXVwLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtb3V0LXVwLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbn1cblxuLnNsaWRlLW91dC1sZWZ0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtb3V0LWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuXG4uZmFkZS1pbi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbn1cblxuLmZhZGUtaW4ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uZmFkZS1vdXQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG59XG5cbi5mYWRlLW91dC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLXRvcC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLXRvcC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1pbi1mcm9tLXJpZ2h0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1yaWdodC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLWluLWZyb20tYm90dG9tLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLWluLWZyb20tbGVmdC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS14Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXkubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteS5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS10b3AubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tdG9wLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tcmlnaHQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1yaWdodC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLW91dC1mcm9tLWJvdHRvbS5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1ib3R0b20ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tbGVmdC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tbGVmdC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2NhbGUtaW4tdXAubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2NhbGUtaW4tdXAubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc2NhbGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zY2FsZS1pbi1kb3duLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNjYWxlLW91dC11cC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc2NhbGUtb3V0LXVwLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2NhbGUtb3V0LWRvd24ubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNjYWxlLW91dC1kb3duLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3Bpbi1pbi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTAuNzV0dXJuKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3Bpbi1pbi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc3Bpbi1vdXQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zcGluLW91dC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNwaW4taW4tY2N3Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwLjc1dHVybik7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNwaW4taW4tY2N3Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zcGluLW91dC1jY3cubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zcGluLW91dC1jY3cubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMC43NXR1cm4pO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2xvdyB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1MG1zICFpbXBvcnRhbnQ7XG59XG5cbi5mYXN0IHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXMgIWltcG9ydGFudDtcbn1cblxuLmxpbmVhciB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWltcG9ydGFudDtcbn1cblxuLmVhc2Uge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZSAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1pbiB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1pbi1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQgIWltcG9ydGFudDtcbn1cblxuLmJvdW5jZS1pbiB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDtcbn1cblxuLmJvdW5jZS1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC41MTUsIDAuODQ1KSAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLWluLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDtcbn1cblxuLnNob3J0LWRlbGF5IHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMzAwbXMgIWltcG9ydGFudDtcbn1cblxuLmxvbmctZGVsYXkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiA3MDBtcyAhaW1wb3J0YW50O1xufVxuXG4uc2hha2Uge1xuICBhbmltYXRpb24tbmFtZTogc2hha2UtNztcbn1cbkBrZXlmcmFtZXMgc2hha2UtNyB7XG4gIDAlLCAxMCUsIDIwJSwgMzAlLCA0MCUsIDUwJSwgNjAlLCA3MCUsIDgwJSwgOTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNyUpO1xuICB9XG4gIDUlLCAxNSUsIDI1JSwgMzUlLCA0NSUsIDU1JSwgNjUlLCA3NSUsIDg1JSwgOTUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTclKTtcbiAgfVxufVxuXG4uc3Bpbi1jdyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzcGluLWN3LTF0dXJuO1xufVxuQGtleWZyYW1lcyBzcGluLWN3LTF0dXJuIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xdHVybik7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIH1cbn1cblxuLnNwaW4tY2N3IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNwaW4tY2N3LTF0dXJuO1xufVxuQGtleWZyYW1lcyBzcGluLWNjdy0xdHVybiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMXR1cm4pO1xuICB9XG59XG5cbi53aWdnbGUge1xuICBhbmltYXRpb24tbmFtZTogd2lnZ2xlLTdkZWc7XG59XG5Aa2V5ZnJhbWVzIHdpZ2dsZS03ZGVnIHtcbiAgNDAlLCA1MCUsIDYwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoN2RlZyk7XG4gIH1cbiAgMzUlLCA0NSUsIDU1JSwgNjUlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtN2RlZyk7XG4gIH1cbiAgMCUsIDMwJSwgNzAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgfVxufVxuXG4uc2hha2UsXG4uc3Bpbi1jdyxcbi5zcGluLWNjdyxcbi53aWdnbGUge1xuICBhbmltYXRpb24tZHVyYXRpb246IDUwMG1zO1xufVxuXG4uaW5maW5pdGUge1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbn1cblxuLnNsb3cge1xuICBhbmltYXRpb24tZHVyYXRpb246IDc1MG1zICFpbXBvcnRhbnQ7XG59XG5cbi5mYXN0IHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAyNTBtcyAhaW1wb3J0YW50O1xufVxuXG4ubGluZWFyIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZSAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1pbiB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4gIWltcG9ydGFudDtcbn1cblxuLmVhc2Utb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQgIWltcG9ydGFudDtcbn1cblxuLmVhc2UtaW4tb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQgIWltcG9ydGFudDtcbn1cblxuLmJvdW5jZS1pbiB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSkgIWltcG9ydGFudDtcbn1cblxuLmJvdW5jZS1pbi1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDtcbn1cblxuLnNob3J0LWRlbGF5IHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAzMDBtcyAhaW1wb3J0YW50O1xufVxuXG4ubG9uZy1kZWxheSB7XG4gIGFuaW1hdGlvbi1kZWxheTogNzAwbXMgIWltcG9ydGFudDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEdlbmVyaWNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udGVtcGxhdGUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5hIHtcbiAgY29sb3I6ICM2MTZGQTA7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xufVxuYTpob3ZlciB7XG4gIGNvbG9yOiAjRDUxRDY3O1xufVxuXG5oMSB7XG4gIGNvbG9yOiAjRDUxRDY3O1xufVxuXG5bY2xhc3NePWljb24tXSwgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gIGZvbnQtc2l6ZTogMC43NWVtO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRWxlbWVudHNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgT2JqZWN0c1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnRzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmMtYmxvY2tzIHtcbiAgYmFja2dyb3VuZDogI0Y1RjVGNTtcbiAgcGFkZGluZzogNC4xNjY2NjY2NjY3cmVtIDAgMi4yMjIyMjIyMjIycmVtO1xufVxuLmMtYmxvY2tzX19jb2x1bW4ge1xuICBtYXJnaW4tYm90dG9tOiAxLjY2NjY2NjY2NjdyZW07XG59XG4uYy1ibG9ja3NfX2l0ZW0ge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3gtc2hhZG93OiAwIDJweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHBhZGRpbmc6IDIuNXJlbSAwLjU1NTU1NTU1NTZyZW0gMS4xMTExMTExMTExcmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMnM7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtZ3JvdzogMTtcbn1cbi5jLWJsb2Nrc19faXRlbTpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cbi5jLWJsb2Nrc19faWNvbiB7XG4gIG1hcmdpbi1ib3R0b206IDEuMTExMTExMTExMXJlbTtcbn1cbi5jLWJsb2Nrc19faWNvbiBpbWcge1xuICBtYXgtaGVpZ2h0OiA0LjQ0NDQ0NDQ0NDRyZW07XG4gIGhlaWdodDogNC40NDQ0NDQ0NDQ0cmVtO1xufVxuLmMtYmxvY2tzX190ZXh0IHtcbiAgZmxleC1ncm93OiAxO1xufVxuLmMtYmxvY2tzX190ZXh0IHAge1xuICBjb2xvcjogIzYxNkZBMDtcbn1cblxuLmMtYnJlYWRjcnVtYiB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRjVGNUY1O1xufVxuLmMtYnJlYWRjcnVtYiBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmMtYnJlYWRjcnVtYiBsaTo6YWZ0ZXIge1xuICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXNpemU6IDAuNzVlbTtcbn1cblxuLmJ1dHRvbiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYnV0dG9uLS1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cbi5idXR0b24tLXNoYWRvdyB7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cbi5idXR0b24udGVydGlhcnkge1xuICBjb2xvcjogd2hpdGU7XG59XG4uYnV0dG9uLnRlcnRpYXJ5OmhvdmVyIHtcbiAgY29sb3I6IHdoaXRlO1xufVxuLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpob3ZlciB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZDogIzYxNkZBMDtcbiAgYm9yZGVyLWNvbG9yOiAjNjE2RkEwO1xufVxuLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3ZlciB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZDogI0Q1MUQ2NztcbiAgYm9yZGVyLWNvbG9yOiAjRDUxRDY3O1xufVxuLmJ1dHRvbi5ob2xsb3cudGVydGlhcnk6aG92ZXIge1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQ6ICM4MUJCMjc7XG4gIGJvcmRlci1jb2xvcjogIzgxQkIyNztcbn1cblxuLmNjLWJ0biB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmMtY2FyZCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjJzO1xufVxuLmMtY2FyZF9faW1hZ2Uge1xuICBoZWlnaHQ6IDEyLjIyMjIyMjIyMjJyZW07XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG4uYy1jYXJkX190aXRsZSB7XG4gIGNvbG9yOiAjNjE2RkEwO1xuICBmb250LXdlaWdodDogNjAwO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBmb250LXNpemU6IDAuODg4ODg4ODg4OXJlbTtcbn1cbi5jLWNhcmQtLWxpbms6aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDJweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuNCk7XG59XG4uYy1jYXJkLS1saW5rOmhvdmVyIC5jLWNhcmRfX3RpdGxlIHtcbiAgY29sb3I6ICNENTFENjc7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLmMtY2FyZCB7XG4gICAgbWF4LXdpZHRoOiAyNy43Nzc3Nzc3Nzc4cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxufVxuXG4uYy1jb250YWN0LS1ncmF5IHtcbiAgYmFja2dyb3VuZDogI0Y1RjVGNTtcbn1cbi5jLWNvbnRhY3QtLWdyYXkgaW5wdXQsIC5jLWNvbnRhY3QtLWdyYXkgdGV4dGFyZWEge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xufVxuLmMtY29udGFjdF9fZm9ybSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jLWNvbnRhY3RfX2luZm8gcCwgLmMtY29udGFjdF9faW5mbyBoNCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uYy1jb250YWN0X19pbmZvIGg1IHtcbiAgY29sb3I6ICNENTFENjc7XG59XG4uYy1jb250YWN0X19pbmZvIGltZyB7XG4gIG1heC13aWR0aDogOS40NDQ0NDQ0NDQ0cmVtO1xufVxuLmMtY29udGFjdF9faW5mbyBhIHtcbiAgY29sb3I6ICMyNzJDNDA7XG59XG4uYy1jb250YWN0X19pbmZvIGE6aG92ZXIge1xuICBjb2xvcjogI0Q1MUQ2Nztcbn1cbi5jLWNvbnRhY3RfX2luZm9fX2NvbHVtbiB7XG4gIG1hcmdpbi1ib3R0b206IDEuNjY2NjY2NjY2N3JlbTtcbn1cbi5jLWNvbnRhY3QgbGVnZW5kIHtcbiAgZm9udC1zaXplOiAwLjg4ODg4ODg4ODlyZW07XG59XG5cbi5jLWZvcm1fX3NlbmQge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICB0b3A6IDIuNzc3Nzc3Nzc3OHJlbTtcbn1cbi5jLWZvcm1fX3NlbmRfX3RleHQge1xuICBtYXJnaW4tYm90dG9tOiAxLjExMTExMTExMTFyZW07XG59XG4uYy1mb3JtX19zZW5kX190ZXh0IGg1IHtcbiAgY29sb3I6ICM4MUJCMjc7XG59XG5cbi5jLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbn1cbi5jLWNvbnRlbnQtLWl0ZW0ge1xuICBtYXJnaW46IDEuNjY2NjY2NjY2N3JlbSAwIDAgMDtcbn1cbi5jLWNvbnRlbnQtLWltYWdlLCAuYy1jb250ZW50LS12aWRlbyB7XG4gIG1hcmdpbjogMCAwIDEuNjY2NjY2NjY2N3JlbSAwO1xufVxuLmMtY29udGVudCBwIHtcbiAgY29sb3I6ICM4MUJCMjc7XG59XG4uYy1jb250ZW50LWRldGFpbC0taXRlbSB7XG4gIG1hcmdpbjogMS42NjY2NjY2NjY3cmVtIDAgMCAwO1xufVxuLmMtY29udGVudC1kZXRhaWwtLWl0ZW0gLmMtbWVkaWEge1xuICBtYXJnaW46IDAgMCAxLjY2NjY2NjY2NjdyZW0gMDtcbn1cblxuLmMtY291bnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2MTZGQTA7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiAwIDEuMTExMTExMTExMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MGVtKSB7XG4gIC5jLWNvdW50ZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgcGFkZGluZzogMC41NTU1NTU1NTU2cmVtIDA7XG4gIH1cbn1cbi5jLWNvdW50ZXJfX2l0ZW0ge1xuICBmbGV4OiAxIDA7XG4gIHBhZGRpbmc6IDEuNjY2NjY2NjY2N3JlbSAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5jLWNvdW50ZXJfX2l0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB3aGl0ZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1MGVtKSB7XG4gIC5jLWNvdW50ZXJfX2l0ZW0ge1xuICAgIHBhZGRpbmc6IDAuODMzMzMzMzMzM3JlbTtcbiAgICBoZWlnaHQ6IDcuMjIyMjIyMjIyMnJlbTtcbiAgfVxuICAuYy1jb3VudGVyX19pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkIHdoaXRlO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gIH1cbn1cbi5jLWNvdW50ZXJfX251bWJlciB7XG4gIGZvbnQtc2l6ZTogMi43Nzc3Nzc3Nzc4cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5jLWNvdW50ZXJfX3RpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbi5jLWNvdW50ZXJfX3RpdGxlIGEge1xuICBjb2xvcjogd2hpdGU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5jLWNvdW50ZXJfX3RpdGxlIGE6aG92ZXIge1xuICBvcGFjaXR5OiAwLjg7XG59XG5cbi5jLWNoZWNrYm94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmMtY2hlY2tib3ggaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmMtY2hlY2tib3ggaW5wdXRbdHlwZT1jaGVja2JveF0gKyBsYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgcGFkZGluZzogMC4zMzMzMzMzMzMzcmVtIDAuNTU1NTU1NTU1NnJlbSAwLjMzMzMzMzMzMzNyZW0gMi41cmVtO1xuICBjb2xvcjogIzYxNkZBMDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjQ0RDRkQ4O1xuICBtYXJnaW46IDAgMCAwLjU1NTU1NTU1NTZyZW0gMDtcbn1cbi5jLWNoZWNrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hdICsgbGFiZWw6aG92ZXI6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogI0NEQ0ZEODtcbn1cbi5jLWNoZWNrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hdICsgbGFiZWw6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAxN3B4O1xuICB0b3A6IDE1cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAwLjc3Nzc3Nzc3NzhyZW07XG4gIGhlaWdodDogMC43Nzc3Nzc3Nzc4cmVtO1xuICBib3JkZXI6IDJweCBzb2xpZCAjRkZGRkZGO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0NEQ0ZEODtcbn1cbi5jLWNoZWNrYm94IGlucHV0W3R5cGU9Y2hlY2tib3hdICsgbGFiZWwuaXMtaW52YWxpZC1sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogI0VBMjk0MTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZERUFFQztcbiAgY29sb3I6ICNFQTI5NDE7XG59XG4uYy1jaGVja2JveCBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgbGFiZWwge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNjE2RkEwO1xufVxuLmMtY2hlY2tib3ggaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICM2MTZGQTA7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNGRkZGRkY7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAjQ0RDRkQ4O1xufVxuLmMtY2hlY2tib3gtLWNsZWFuIGlucHV0W3R5cGU9Y2hlY2tib3hdICsgbGFiZWwge1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMC44ODg4ODg4ODg5cmVtO1xuICBjb2xvcjogIzE4MUIyNztcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgcGFkZGluZzogMC4zMzMzMzMzMzMzcmVtIDAuNTU1NTU1NTU1NnJlbSAwLjMzMzMzMzMzMzNyZW0gMS45NDQ0NDQ0NDQ0cmVtO1xufVxuLmMtY2hlY2tib3gtLWNsZWFuIGlucHV0W3R5cGU9Y2hlY2tib3hdICsgbGFiZWw6YmVmb3JlIHtcbiAgbGVmdDogMnB4O1xuICB0b3A6IDE0cHg7XG59XG4uYy1jaGVja2JveC0tY2xlYW4gaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIGxhYmVsIHtcbiAgYm9yZGVyOiBub25lO1xufVxuLmMtY2hlY2tib3hfX2JhZGdlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmb250LXNpemU6IDAuODg4ODg4ODg4OXJlbTtcbiAgY29sb3I6ICM3NDc4ODU7XG4gIG1hcmdpbjogMC4xMTExMTExMTExcmVtIDAgMCAwLjgzMzMzMzMzMzNyZW07XG59XG4uYy1jaGVja2JveF9fc21hbGwtYmFkZ2Uge1xuICB3aWR0aDogMTZweDtcbiAgbWluLXdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xufVxuLmMtY2hlY2tib3hfX3ByaWNlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmb250LXNpemU6IDAuODg4ODg4ODg4OXJlbTtcbiAgY29sb3I6ICM3NDc4ODU7XG4gIG1hcmdpbjogMC4xMTExMTExMTExcmVtIDAgMCAwLjgzMzMzMzMzMzNyZW07XG59XG5cbi5jLWhlYWRlci0tc21hbGwge1xuICBoZWlnaHQ6IDIuNzc3Nzc3Nzc3OHJlbTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2Fzc2V0cy9kaXN0L2ltZy9oZWFkZXItYmFja2dyb3VuZC5qcGdcIik7XG59XG4uYy1oZWFkZXItLXNtYWxsLS1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2Fzc2V0cy9kaXN0L2ltZy9oZWFkZXItcHJpbWFyeS5wbmdcIik7XG59XG4uYy1oZWFkZXItLXNtYWxsLS10ZXJ0aWFyeSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9hc3NldHMvZGlzdC9pbWcvaGVhZGVyLXN1Y2Nlc3MucG5nXCIpO1xufVxuLmMtaGVhZGVyLS1ob21lIHtcbiAgYmFja2dyb3VuZDogI0YyQkJEMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmMtaGVhZGVyLS1ob21lX19zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kOiAjRDJEOUYyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmMtaGVhZGVyLS1ob21lIHtcbiAgICBoZWlnaHQ6IDMwLjU1NTU1NTU1NTZyZW07XG4gIH1cbn1cbi5jLWhlYWRlci0taG9tZV9fY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmMtaGVhZGVyLS1ob21lX19jb250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1LjU1NTU1NTU1NTZyZW07XG4gIH1cbiAgLmMtaGVhZGVyLS1ob21lX19jb250ZW50IGgxIHtcbiAgICBmb250LXNpemU6IDIuNzc3Nzc3Nzc3OHJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTBlbSkge1xuICAuYy1oZWFkZXItLWhvbWVfX2NvbnRlbnQge1xuICAgIGhlaWdodDogMzAuNTU1NTU1NTU1NnJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDkuOTk4NzVlbSkge1xuICAuYy1oZWFkZXItLWhvbWVfX2NvbnRlbnQge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXRvcDogMS42NjY2NjY2NjY3cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjY2NjY2NjY2NjdyZW07XG4gIH1cbn1cbi5jLWhlYWRlci0taG9tZV9fY29udGVudCBoMSwgLmMtaGVhZGVyLS1ob21lX19jb250ZW50IHAge1xuICBjb2xvcjogIzI3MkM0MDtcbn1cbi5jLWhlYWRlci0taG9tZV9faW1hZ2Uge1xuICBoZWlnaHQ6IDMwLjU1NTU1NTU1NTZyZW07XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiA1MCU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0OS45OTg3NWVtKSB7XG4gIC5jLWhlYWRlci0taG9tZV9faW1hZ2Uge1xuICAgIGhlaWdodDogMTguODg4ODg4ODg4OXJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbn1cblxuLmMtaG91c2V0ZXN0IHtcbiAgbWluLWhlaWdodDogMzMuMzMzMzMzMzMzM3JlbTtcbiAgYmFja2dyb3VuZDogI0Y1RjVGNTtcbn1cbi5jLWhvdXNldGVzdCBoNCwgLmMtaG91c2V0ZXN0IGg1IHtcbiAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5jLWhvdXNldGVzdCBoNCB7XG4gIGZvbnQtc2l6ZTogMS4zMzMzMzMzMzMzcmVtO1xufVxuLmMtaG91c2V0ZXN0IGg1IHtcbiAgZm9udC1zaXplOiAxLjExMTExMTExMTFyZW07XG59XG4uYy1ob3VzZXRlc3RfX2Jhc2VpbmZvLXF1ZXN0aW9uIHtcbiAgcGFkZGluZy1ib3R0b206IDIuMjIyMjIyMjIyMnJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNGNUY1RjU7XG59XG4uYy1ob3VzZXRlc3RfX2Jhc2VpbmZvLXF1ZXN0aW9uOmxhc3Qtb2YtdHlwZSB7XG4gIGJvcmRlcjogbm9uZTtcbn1cbi5jLWhvdXNldGVzdF9fdGl0bGUge1xuICBtYXJnaW46IDEuNjY2NjY2NjY2N3JlbSAwO1xufVxuLmMtaG91c2V0ZXN0X19yb3cge1xuICBwYWRkaW5nOiA0LjQ0NDQ0NDQ0NDRyZW0gMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuYy1ob3VzZXRlc3RfX3JvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgIHBhZGRpbmc6IDEuMTExMTExMTExMXJlbSAwIDQuNDQ0NDQ0NDQ0NHJlbSAwO1xuICB9XG4gIC5jLWhvdXNldGVzdF9fcm93IC5jLWhvdXNldGVzdF9fY2FyZCB7XG4gICAgbWFyZ2luLXRvcDogNC40NDQ0NDQ0NDQ0cmVtO1xuICB9XG59XG4uYy1ob3VzZXRlc3RfX2Fuc3dlcnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2Mi41ZW0pIHtcbiAgLmMtaG91c2V0ZXN0X19hbnN3ZXJzIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG59XG4uYy1ob3VzZXRlc3RfX3JhZGlvLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5jLWhvdXNldGVzdF9fd3JhcHBlciB7XG4gIG1hcmdpbjogMi4yMjIyMjIyMjIycmVtIDAgMi43Nzc3Nzc3Nzc4cmVtIDA7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIHBhZGRpbmc6IDIuMjIyMjIyMjIyMnJlbSAxLjExMTExMTExMTFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYy1ob3VzZXRlc3RfX3dyYXBwZXIge1xuICAgIHBhZGRpbmc6IDIuMjIyMjIyMjIyMnJlbSAzLjMzMzMzMzMzMzNyZW07XG4gIH1cbn1cbi5jLWhvdXNldGVzdF9fd3JhcHBlciBmaWVsZHNldCB7XG4gIG1pbi1pbmxpbmUtc2l6ZTogYXV0bztcbn1cbi5jLWhvdXNldGVzdF9fcHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogMi4zMzMzMzMzMzMzcmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cbi5jLWhvdXNldGVzdF9fcHJvZ3Jlc3MgLnByb2dyZXNzLXF1ZXN0aW9ucyB7XG4gIGZvbnQtc2l6ZTogMS4xMTExMTExMTExcmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNENTFENjc7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNy41ZW0pIHtcbiAgLmMtaG91c2V0ZXN0X19wcm9ncmVzcyAucHJvZ3Jlc3MtcXVlc3Rpb25zIHtcbiAgICBmb250LXNpemU6IDAuODg4ODg4ODg4OXJlbTtcbiAgfVxufVxuLmMtaG91c2V0ZXN0X19wcm9ncmVzcyAuYy1saW5rIHtcbiAgZm9udC1zaXplOiAxLjExMTExMTExMTFyZW07XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNy41ZW0pIHtcbiAgLmMtaG91c2V0ZXN0X19wcm9ncmVzcyAucHJldi1xdWVzdGlvbiwgLmMtaG91c2V0ZXN0X19wcm9ncmVzcyAubmV4dC1xdWVzdGlvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuYy1ob3VzZXRlc3RfX3Byb2dyZXNzIC5jLWxpbmsgLmljb246YmVmb3JlIHtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgfVxufVxuLmMtaG91c2V0ZXN0X190YWJsZSB7XG4gIG92ZXJmbG93OiBzY3JvbGw7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLmMtaG91c2V0ZXN0X19jYXJkIGg1IHtcbiAgZm9udC1mYW1pbHk6IFwiU3BlY2lhbCBFbGl0ZVwiLCBjdXJzaXZlO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuLmMtaG91c2V0ZXN0X19zdmctd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbi5jLWhvdXNldGVzdF9fc3ZnLXdyYXBwZXIgYSB7XG4gIG91dGxpbmU6IDA7XG59XG4uYy1ob3VzZXRlc3RfX3N2Zy13cmFwcGVyIGE6Zm9jdXMsIC5jLWhvdXNldGVzdF9fc3ZnLXdyYXBwZXIgYTpob3ZlciB7XG4gIGNvbG9yOiAjNjE2RkEwO1xufVxuLmMtaG91c2V0ZXN0X19zdmcge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tcmlnaHQ6IDIuNzc3Nzc3Nzc3OHJlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzQuOTM3NWVtKSB7XG4gIC5jLWhvdXNldGVzdF9fc3ZnIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSA1MHB4KTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjY2NjY2NjY2NjdyZW07XG4gIH1cbn1cbi5jLWhvdXNldGVzdF9fc3ZnOmhvdmVyIHtcbiAgY29sb3I6ICM2MTZGQTA7XG4gIG9wYWNpdHk6IDAuODtcbn1cbi5jLWhvdXNldGVzdF9fc3ZnIHNwYW4ge1xuICBtYXJnaW4tdG9wOiAwLjI3Nzc3Nzc3NzhyZW07XG4gIGZvbnQtc2l6ZTogMC44ODg4ODg4ODg5cmVtO1xufVxuLmMtaG91c2V0ZXN0X19zdmcgaW1nIHtcbiAgaGVpZ2h0OiA0LjQ0NDQ0NDQ0NDRyZW07XG4gIHdpZHRoOiA0LjQ0NDQ0NDQ0NDRyZW07XG59XG4uYy1ob3VzZXRlc3Qgc2VsZWN0IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogIzYxNkZBMDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJvcmRlci1jb2xvcjogI0NEQ0ZEODtcbiAgbWFyZ2luLWJvdHRvbTogMC41NTU1NTU1NTU2cmVtO1xuICBwYWRkaW5nOiAwLjVyZW0gMC41NTU1NTU1NTU2cmVtIDAuNXJlbSAwLjgzMzMzMzMzMzNyZW07XG4gIGhlaWdodDogYXV0bztcbn1cbi5jLWhvdXNldGVzdCBzZWxlY3Q6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICM2MTZGQTA7XG59XG4uYy1ob3VzZXRlc3Qgc2VsZWN0OjpwbGFjZWhvbGRlciwgLmMtaG91c2V0ZXN0IHNlbGVjdDpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjQ0RDRkQ4O1xufVxuLmMtaG91c2V0ZXN0IC5jLXNlbGVjdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jLWhvdXNldGVzdCAuYy1zZWxlY3Q6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTkwMVwiO1xuICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gIGNvbG9yOiAjNjE2RkEwO1xuICBmb250LXNpemU6IDEuMjIyMjIyMjIyMnJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMTBweDtcbiAgdG9wOiA4cHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLmMtaG91c2V0ZXN0IC5jLXNlbGVjdCAuaXMtaW52YWxpZC1pbnB1dCB7XG4gIGNvbG9yOiAjRUEyOTQxO1xufVxuLmMtaG91c2V0ZXN0X19jYWxjdWxhdGUgZmllbGRzZXQge1xuICBtaW4taW5saW5lLXNpemU6IGF1dG87XG59XG4uYy1ob3VzZXRlc3RfX2NhbGN1bGF0ZSB0YWJsZSBpbnB1dCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIHdpZHRoOiA3MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uYy1ob3VzZXRlc3RfX2NhbGN1bGF0ZSB0YWJsZSB0ZCB7XG4gIHBhZGRpbmc6IDZweCAxMHB4O1xuICBoZWlnaHQ6IDUxcHg7XG59XG4uYy1ob3VzZXRlc3QgI3JlbnRhbC13YXJuaW5nIGRpdi5oNCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uYy1ob3VzZXRlc3QgI3JlbnRhbC13YXJuaW5nIHAge1xuICBmb250LXNpemU6IDAuODg4ODg4ODg4OXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnRhYmxlX193cmFwcGVyIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgbWFyZ2luOiAyMHB4IDA7XG59XG4udGFibGVfX3dyYXBwZXIgdGFibGUge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItZHJvcGRvd24gLnNlbGVjdDItcmVzdWx0cyB7XG4gIG1heC1oZWlnaHQ6IDQwMHB4O1xuICBtaW4taGVpZ2h0OiAyMDBweDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1kcm9wZG93biAuc2VsZWN0Mi1yZXN1bHRzID4gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9ucyB7XG4gIG1heC1oZWlnaHQ6IDQwMHB4O1xufVxuXG4uYy1pY29uX19sYXJnZSB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC1zaXplOiA0LjQ0NDQ0NDQ0NDRyZW07XG59XG5cbi5jLWlucHV0LS1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBjb2xvcjogIzYxNkZBMDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjQ0RDRkQ4O1xuICBmb250LXdlaWdodDogNjAwO1xufVxuLmMtaW5wdXQtLXNlY29uZGFyeTo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI0NEQ0ZEODtcbn1cblxuLmMtZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogIzYxNkZBMDtcbiAgcGFkZGluZzogMi43Nzc3Nzc3Nzc4cmVtIDAgMDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGZvbnQtc2l6ZTogMC44ODg4ODg4ODg5cmVtO1xufVxuLmMtZm9vdGVyX19jb2x1bW4ge1xuICBtYXJnaW4tYm90dG9tOiAxLjk0NDQ0NDQ0NDRyZW07XG59XG4uYy1mb290ZXIgYSB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmMtZm9vdGVyIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi5jLWZvb3Rlcl9fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwLjgzMzMzMzMzMzNyZW07XG59XG4uYy1mb290ZXJfX3RpdGxlIGEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLmMtZm9vdGVyX19tZW51IGxpIGEge1xuICBwYWRkaW5nOiAwLjQ0NDQ0NDQ0NDRyZW0gMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmMtZm9vdGVyX19tZW51LS1ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4uYy1mb290ZXJfX21lbnUtLXNvY2lhbCBhIHtcbiAgZm9udC1zaXplOiAycmVtO1xufVxuLmMtZm9vdGVyX19tZW51LS1zb2NpYWwgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgb3BhY2l0eTogMC44O1xufVxuXG4uYy1mb290ZXJfX2JvdHRvbSB7XG4gIGZvbnQtc2l6ZTogMC44ODg4ODg4ODg5cmVtO1xuICBjb2xvcjogd2hpdGU7XG59XG4uYy1mb290ZXJfX2JvdHRvbV9faW1hZ2UgaW1nIHtcbiAgbWF4LWhlaWdodDogMy44ODg4ODg4ODg5cmVtO1xufVxuLmMtZm9vdGVyX19ib3R0b21fX2xvZ28ge1xuICBtYXJnaW46IDAgMC41NTU1NTU1NTU2cmVtO1xufVxuLmMtZm9vdGVyX19ib3R0b20gLmxvZ28tYXRyaXZlIHtcbiAgd2lkdGg6IDIuMjIyMjIyMjIyMnJlbTtcbn1cbi5jLWZvb3Rlcl9fYm90dG9tIC5sb2dvLWdlZWYge1xuICB3aWR0aDogMy4zMzMzMzMzMzMzcmVtO1xufVxuXG4uYy1sYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNTU1NTU1NTU1NnJlbTtcbn1cbi5jLWxhYmVsLS1saW5rIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYy1sYWJlbC0tZ2hvc3Qge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuLmMtbGFiZWwuc3VjY2VzcyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3NUFEMDE7XG4gIGNvbG9yOiAjNzVBRDAxICFpbXBvcnRhbnQ7XG59XG4uYy1sYWJlbC5zdWNjZXNzOmhvdmVyIHtcbiAgb3BhY2l0eTogMC44O1xufVxuXG51bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5jLWxpc3RfX2ljb24ge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5jLWxpc3RfX2ljb24gbGkge1xuICBwYWRkaW5nLWxlZnQ6IDEuNTU1NTU1NTU1NnJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAwLjU1NTU1NTU1NTZyZW07XG59XG4uYy1saXN0X19pY29uIGxpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oCiIFwiO1xuICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiA4cHg7XG4gIGZvbnQtc2l6ZTogMC43Nzc3Nzc3Nzc4cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICM2MTZGQTA7XG59XG4uYy1saXN0X19pY29uLWNoZWNrbWFyayBsaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwOVwiO1xufVxuLmMtbGlzdF9faWNvbi1ob3VzZXRlc3QgbGk6YmVmb3JlIHtcbiAgZm9udC1zaXplOiAyNnB4O1xuICB0b3A6IC0xcHg7XG59XG4uYy1saXN0X19pY29uLS1wcmltYXJ5IGxpOmJlZm9yZSB7XG4gIGNvbG9yOiAjRDUxRDY3O1xufVxuLmMtbGlzdF9faWNvbi0tcHJpbWFyeS1kYXJrZW4gbGk6YmVmb3JlIHtcbiAgY29sb3I6ICNCRjFBNUM7XG59XG4uYy1saXN0X19pY29uLS1zZWNvbmRhcnkgbGk6YmVmb3JlIHtcbiAgY29sb3I6ICM2MTZGQTA7XG59XG4uYy1saXN0X19pY29uLS1zZWNvbmRhcnktZGFya2VuIGxpOmJlZm9yZSB7XG4gIGNvbG9yOiAjNTc2NDkwO1xufVxuLmMtbGlzdF9faWNvbi0tdGVydGlhcnkgbGk6YmVmb3JlIHtcbiAgY29sb3I6ICM4MUJCMjc7XG59XG4uYy1saXN0X19pY29uLS10ZXJ0aWFyeS1kYXJrZW4gbGk6YmVmb3JlIHtcbiAgY29sb3I6ICM3M0E3MjM7XG59XG4uYy1saXN0X19pY29uLS1xdWF0ZXJuYXJ5IGxpOmJlZm9yZSB7XG4gIGNvbG9yOiAjRjJCQkQxO1xufVxuLmMtbGlzdF9faWNvbi0tc3VjY2VzcyBsaTpiZWZvcmUge1xuICBjb2xvcjogIzc1QUQwMTtcbn1cbi5jLWxpc3RfX2ljb24tLXdhcm5pbmcgbGk6YmVmb3JlIHtcbiAgY29sb3I6ICNGMzk3MjE7XG59XG4uYy1saXN0X19pY29uLS1hbGVydCBsaTpiZWZvcmUge1xuICBjb2xvcjogI0VBMjk0MTtcbn1cbi5jLWxpc3RfX2ljb24tLWFsZXJ0LWxpZ2h0ZW4gbGk6YmVmb3JlIHtcbiAgY29sb3I6ICNGREVBRUM7XG59XG5cbi5jLWxpc3RfX2ljb24tY2hlY2ttYXJrIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLmMtbGlzdF9faWNvbi1jaGVja21hcmsgbGkge1xuICBwYWRkaW5nOiAwIDAgMS4xMTExMTExMTExcmVtIDEuNTU1NTU1NTU1NnJlbTtcbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uYy1saXN0X19pY29uLWNoZWNrbWFyayBsaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwOVwiO1xuICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiA4cHg7XG4gIGZvbnQtc2l6ZTogMC43Nzc3Nzc3Nzc4cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICNENTFENjc7XG59XG5cbi5jLWxvZ28tLXRvcC1iYXIgaW1nIHtcbiAgbWFyZ2luLXRvcDogMC41NTU1NTU1NTU2cmVtO1xuICBoZWlnaHQ6IDIuMjIyMjIyMjIyMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jLWxvZ28tLXRvcC1iYXIgaW1nIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGhlaWdodDogMy41NTU1NTU1NTU2cmVtO1xuICB9XG59XG5cbi5jLWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogMC44ODg4ODg4ODg5cmVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYy1saW5rLS1wcmltYXJ5IHtcbiAgY29sb3I6ICNENTFENjc7XG59XG4uYy1saW5rLS1wcmltYXJ5OmhvdmVyIHtcbiAgY29sb3I6IHJnYigxNjguMTExNTcwMjQ3OSwgMjIuODg4NDI5NzUyMSwgODEuMjkzMzg4NDI5OCk7XG59XG4uYy1saW5rLS1wcmltYXJ5LWRhcmtlbiB7XG4gIGNvbG9yOiAjQkYxQTVDO1xufVxuLmMtbGluay0tcHJpbWFyeS1kYXJrZW46aG92ZXIge1xuICBjb2xvcjogcmdiKDE0Ni4xMTA1OTkwNzgzLCAxOS44ODk0MDA5MjE3LCA3MC4zNzc4ODAxODQzKTtcbn1cbi5jLWxpbmstLXNlY29uZGFyeSB7XG4gIGNvbG9yOiAjNjE2RkEwO1xufVxuLmMtbGluay0tc2Vjb25kYXJ5OmhvdmVyIHtcbiAgY29sb3I6IHJnYig3Ny4zNTE3Nzg2NTYxLCA4OC43NTA5ODgxNDIzLCAxMjguNjQ4MjIxMzQzOSk7XG59XG4uYy1saW5rLS1zZWNvbmRhcnktZGFya2VuIHtcbiAgY29sb3I6ICM1NzY0OTA7XG59XG4uYy1saW5rLS1zZWNvbmRhcnktZGFya2VuOmhvdmVyIHtcbiAgY29sb3I6IHJnYig2Ny43OTIyMDc3OTIyLCA3Ny45MjIwNzc5MjIxLCAxMTIuMjA3NzkyMjA3OCk7XG59XG4uYy1saW5rLS10ZXJ0aWFyeSB7XG4gIGNvbG9yOiAjODFCQjI3O1xufVxuLmMtbGluay0tdGVydGlhcnk6aG92ZXIge1xuICBjb2xvcjogcmdiKDk5Ljg4OTM4MDUzMSwgMTQ0LjgwMDg4NDk1NTgsIDMwLjE5OTExNTA0NDIpO1xufVxuLmMtbGluay0tdGVydGlhcnktZGFya2VuIHtcbiAgY29sb3I6ICM3M0E3MjM7XG59XG4uYy1saW5rLS10ZXJ0aWFyeS1kYXJrZW46aG92ZXIge1xuICBjb2xvcjogcmdiKDg1Ljk2NTM0NjUzNDcsIDEyNC44MzY2MzM2NjM0LCAyNi4xNjMzNjYzMzY2KTtcbn1cbi5jLWxpbmstLXF1YXRlcm5hcnkge1xuICBjb2xvcjogI0YyQkJEMTtcbn1cbi5jLWxpbmstLXF1YXRlcm5hcnk6aG92ZXIge1xuICBjb2xvcjogcmdiKDIzMy44MTQ4MTQ4MTQ4LCAxNDQuMTg1MTg1MTg1MiwgMTgwLjAzNzAzNzAzNyk7XG59XG4uYy1saW5rLS1zdWNjZXNzIHtcbiAgY29sb3I6ICM3NUFEMDE7XG59XG4uYy1saW5rLS1zdWNjZXNzOmhvdmVyIHtcbiAgY29sb3I6IHJnYig4Mi43MDY4OTY1NTE3LCAxMjIuMjkzMTAzNDQ4MywgMC43MDY4OTY1NTE3KTtcbn1cbi5jLWxpbmstLXdhcm5pbmcge1xuICBjb2xvcjogI0YzOTcyMTtcbn1cbi5jLWxpbmstLXdhcm5pbmc6aG92ZXIge1xuICBjb2xvcjogcmdiKDIxMy40NjE1Mzg0NjE1LCAxMjUsIDExLjUzODQ2MTUzODUpO1xufVxuLmMtbGluay0tYWxlcnQge1xuICBjb2xvcjogI0VBMjk0MTtcbn1cbi5jLWxpbmstLWFsZXJ0OmhvdmVyIHtcbiAgY29sb3I6IHJnYigyMDMuOTgyOTc4NzIzNCwgMjAuMDE3MDIxMjc2NiwgNDIuODkzNjE3MDIxMyk7XG59XG4uYy1saW5rLS1hbGVydC1saWdodGVuIHtcbiAgY29sb3I6ICNGREVBRUM7XG59XG4uYy1saW5rLS1hbGVydC1saWdodGVuOmhvdmVyIHtcbiAgY29sb3I6IHJnYigyNDguNTY1MjE3MzkxMywgMTg3LjQzNDc4MjYwODcsIDE5My44Njk1NjUyMTc0KTtcbn1cblxuLmMtbWFpbi1uYXZfX3RyaWdnZXIge1xuICBmb250LXNpemU6IDEuNTU1NTU1NTU1NnJlbTtcbiAgY29sb3I6ICNENTFENjc7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3V0bGluZTogMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pIHtcbiAgLmMtbWFpbi1uYXZfX2l0ZW0tLXByaW50IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5jLW1haW4tbmF2X19pdGVtID4gc3BhbiBhIHtcbiAgICBmb250LXNpemU6IDAuNzc3Nzc3Nzc3OHJlbTtcbiAgfVxuICAuYy1tYWluLW5hdl9faXRlbVthcmlhLWV4cGFuZGVkPXRydWVdIC5pY29uLWNoZXZlcm9uLWRvd246OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGU5MDRcIjtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5jLW1haW4tbmF2IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmMtbWFpbi1uYXZfX2xpc3Qge1xuICAgIG1hcmdpbi10b3A6IDEuMTExMTExMTExMXJlbTtcbiAgfVxuICAuYy1tYWluLW5hdl9faXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5jLW1haW4tbmF2X19pdGVtID4gc3BhbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIC5jLW1haW4tbmF2X19pdGVtID4gc3BhbiBhIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgLmMtbWFpbi1uYXZfX2l0ZW0gPiBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgLmMtbWFpbi1uYXZfX2l0ZW0gLmljb24tY2hldmVyb24tZG93biB7XG4gICAgZm9udC1zaXplOiAxLjMzMzMzMzMzMzNyZW07XG4gIH1cbiAgLmMtbWFpbi1uYXZfX2l0ZW0gLmljb24tY2hldmVyb24tZG93bjo6YmVmb3JlIHtcbiAgICB0b3A6IDEycHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jLW1haW4tbmF2X19saXN0IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIC5jLW1haW4tbmF2X19pdGVtIGEge1xuICAgIGNvbG9yOiAjNjE2RkEwO1xuICAgIGZvbnQtc2l6ZTogMC44ODg4ODg4ODg5cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICB9XG4gIC5jLW1haW4tbmF2X19pdGVtIGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICM2MTZGQTA7XG4gICAgY29sb3I6ICNGRkZGRkY7XG4gIH1cbiAgLmMtbWFpbi1uYXZfX2l0ZW0tLXN2ZyB7XG4gICAgbWF4LWhlaWdodDogNC40NDQ0NDQ0NDQ0cmVtO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgLmMtbWFpbi1uYXZfX2l0ZW0tLXN2ZyBpbWcge1xuICAgIGhlaWdodDogMS4zODg4ODg4ODg5cmVtO1xuICAgIHdpZHRoOiAxLjM4ODg4ODg4ODlyZW07XG4gIH1cbiAgLmMtbWFpbi1uYXZfX2l0ZW0tLXN2ZyBhIHtcbiAgICBwYWRkaW5nOiAwLjU1NTU1NTU1NTZyZW0gMC44MzMzMzMzMzMzcmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmMtbWFpbi1uYXZfX2l0ZW0tLXN2ZyBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAgIG9wYWNpdHk6IDAuODtcbiAgfVxuICAuYy1tYWluLW5hdl9faXRlbS0tc3ZnIGJ1dHRvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBhZGRpbmc6IDAuNTU1NTU1NTU1NnJlbSAwLjgzMzMzMzMzMzNyZW07XG4gIH1cbiAgLmMtbWFpbi1uYXZfX2l0ZW0tLXN2ZyBidXR0b246aG92ZXIge1xuICAgIG9wYWNpdHk6IDAuODtcbiAgfVxuICAuYy1tYWluLW5hdl9faXRlbS0tYnVzaW5lc3MgYSB7XG4gICAgYmFja2dyb3VuZDogIzYxNkZBMDtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgcGFkZGluZzogMS43Nzc3Nzc3Nzc4cmVtIDAuODMzMzMzMzMzM3JlbTtcbiAgfVxuICAuYy1tYWluLW5hdl9faXRlbS0tYnVzaW5lc3MgYTpob3ZlciB7XG4gICAgY29sb3I6ICM2MTZGQTA7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gIH1cbiAgLmMtbWFpbi1uYXZfX2l0ZW0uaXMtYWN0aXZlIC5pY29uLWNoZXZlcm9uLWRvd246OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGU5MDRcIjtcbiAgfVxufVxuLmMtbWFpbi1uYXYgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB3aWR0aDogMTIuMjIyMjIyMjIyMnJlbTtcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uYy1tZWRpYS0tcGFkZGluZy10b3Age1xuICBwYWRkaW5nLXRvcDogMi43Nzc3Nzc3Nzc4cmVtO1xufVxuLmMtbWVkaWEtLWdyYXkge1xuICBiYWNrZ3JvdW5kOiAjRjVGNUY1O1xufVxuLmMtbWVkaWFfX2ltYWdlX193cmFwcGVyIHtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDkuOTk4NzVlbSkge1xuICAuYy1tZWRpYV9faW1hZ2VfX3dyYXBwZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgfVxufVxuLmMtbWVkaWFfX2ltYWdlX19pbWcge1xuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIG1pbi13aWR0aDogMjAuNTU1NTU1NTU1NnJlbTtcbiAgbWluLWhlaWdodDogMTcuNzc3Nzc3Nzc3OHJlbTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ5Ljk5ODc1ZW0pIHtcbiAgLmMtbWVkaWFfX2ltYWdlX19pbWcge1xuICAgIG1pbi1oZWlnaHQ6IDE4cmVtO1xuICB9XG59XG4uYy1tZWRpYV9faW1hZ2VfX2NvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiAjRjVGNUY1O1xuICBjb2xvcjogIzYxNkZBMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDEuNjY2NjY2NjY2N3JlbTtcbn1cbi5jLW1lZGlhX19pbWFnZV9fY29udGVudCAuYy1saW5rIHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbn1cbi5jLW1lZGlhX19pbWFnZS0tcmV2ZXJzZSAuYy1tZWRpYV9faW1hZ2VfX3dyYXBwZXIge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0OS45OTg3NWVtKSB7XG4gIC5jLW1lZGlhX19pbWFnZS0tcmV2ZXJzZSAuYy1tZWRpYV9faW1hZ2VfX3dyYXBwZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgfVxufVxuLmMtbWVkaWFfX2ljb25fX2ltYWdlIGltZyB7XG4gIG1heC13aWR0aDogMi43Nzc3Nzc3Nzc4cmVtO1xufVxuLmMtbWVkaWFfX2ljb25fX3RleHQgcCB7XG4gIGNvbG9yOiAjNjE2RkEwO1xufVxuXG5mb3JtLm11bHRpLWZvcm0ge1xuICAvKiBmaWVsZHNldC5hY3RpdmU6bm90KDpsYXN0LW9mLXR5cGUpIC5idXR0b25zIHtcbiAgXHQuc3VibWl0IHtcbiAgXHRcdGRpc3BsYXk6IG5vbmU7XG4gIFx0fVxuICB9ICovXG4gIC8qIGZpZWxkc2V0LmFjdGl2ZTpsYXN0LW9mLXR5cGUgLmJ1dHRvbnMge1xuICBcdC5uZXh0IHtcbiAgXHRcdGRpc3BsYXk6IG5vbmU7XG4gIFx0fVxuICB9ICovXG59XG5mb3JtLm11bHRpLWZvcm0gZmllbGRzZXQuc2tpcCxcbmZvcm0ubXVsdGktZm9ybSBmaWVsZHNldDpub3QoLmFjdGl2ZSkge1xuICBkaXNwbGF5OiBub25lO1xufVxuZm9ybS5tdWx0aS1mb3JtIGZpZWxkc2V0IC5idXR0b25zIC5zdWJtaXQge1xuICBkaXNwbGF5OiBub25lO1xufVxuZm9ybS5tdWx0aS1mb3JtIGZpZWxkc2V0LmFjdGl2ZTpmaXJzdC1vZi10eXBlIC5idXR0b25zIC5wcmV2IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmMtaW1hZ2Uge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjExMTExMTExMTFyZW07XG59XG5cbi5jLXByaWNlLXRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjVGNTtcbn1cbi5jLXByaWNlLXRhYmxlX19pdGVtIHtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm94LXNoYWRvdzogMCAycHggNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLmMtcHJpY2UtdGFibGVfX3RpdGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzYxNkZBMDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDEuMTExMTExMTExMXJlbSAxLjExMTExMTExMTFyZW0gMC41NTU1NTU1NTU2cmVtO1xufVxuLmMtcHJpY2UtdGFibGVfX3RpdGxlIGgyIHtcbiAgY29sb3I6IHdoaXRlO1xuICBtYXJnaW46IDA7XG59XG4uYy1wcmljZS10YWJsZV9fYm9keSB7XG4gIHBhZGRpbmc6IDEuMTExMTExMTExMXJlbSAxLjY2NjY2NjY2NjdyZW0gMCAxLjY2NjY2NjY2NjdyZW07XG59XG4uYy1wcmljZS10YWJsZV9fZm9vdGVyIHtcbiAgcGFkZGluZzogMS4xMTExMTExMTExcmVtIDA7XG4gIG1hcmdpbjogYXV0byAxLjY2NjY2NjY2NjdyZW0gMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNDRENGRDg7XG59XG4uYy1wcmljZS10YWJsZV9fZm9vdGVyIHAge1xuICBtYXJnaW46IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYy1wcmljZS10YWJsZV9fY29udGVudCA+IHAge1xuICAgIG1pbi1oZWlnaHQ6IDMuMTExMTExMTExMXJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAuYy1wcmljZS10YWJsZV9fY29sdW1uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjIyMjIyMjIyMjJyZW07XG4gIH1cbn1cbi5jLXByaWNlLXRhYmxlIHVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLmMtcHJpY2UtdGFibGUgdWwgbGkge1xuICBwYWRkaW5nOiAwIDAgMS4xMTExMTExMTExcmVtIDEuNTU1NTU1NTU1NnJlbTtcbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uYy1wcmljZS10YWJsZSB1bCBsaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwOVwiO1xuICBjb2xvcjogI0Q1MUQ2NztcbiAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogOHB4O1xuICBmb250LXNpemU6IDAuNzc3Nzc3Nzc3OHJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuYy1wcm9kdWN0X19jYXJkIHtcbiAgICBtYXJnaW4tdG9wOiAyLjIyMjIyMjIyMjJyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuYy1wcm9kdWN0X19yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgfVxufVxuXG4uYy1uZXdzIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCM4MUJCMjcsIHRyYW5zcGFyZW50KTtcbn1cbi5jLW5ld3MtLWl0ZW0ge1xuICBib3gtc2hhZG93OiAwIDJweCAxM3B4IDAgcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBtYXJnaW46IDEuNjY2NjY2NjY2N3JlbSAwO1xufVxuLmMtbmV3cy0tY29udGVudCB7XG4gIHBhZGRpbmc6IDEuMTExMTExMTExMXJlbSAxLjY2NjY2NjY2NjdyZW07XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xufVxuLmMtbmV3cy0tY29udGVudCBwIHtcbiAgY29sb3I6ICM4MUJCMjc7XG59XG4uYy1uZXdzLS1kYXRlIHtcbiAgY29sb3I6ICM3NDc4ODU7XG4gIGZvbnQtc2l6ZTogMC43Nzc3Nzc3Nzc4cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjgzMzMzMzMzMzNyZW07XG59XG4uYy1uZXdzLS1wYWdpbmF0aW9uIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5jLW5ld3MtLXBhZ2luYXRpb24gbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4uYy1uZXdzLS1wYWdpbmF0aW9uIGxpIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Q1MUQ2NztcbiAgcGFkZGluZzogMC4yMjIyMjIyMjIycmVtIDAuNjY2NjY2NjY2N3JlbTtcbn1cbi5jLW5ld3MtLXBhZ2luYXRpb24gbGkgYTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2MTZGQTA7XG59XG4uYy1uZXdzLS1wYWdpbmF0aW9uIGxpIGEuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzYxNkZBMDtcbn1cbi5jLW5ld3MtLXBhZ2luYXRpb24gbGkgYS5hY3RpdmU6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDUxRDY3O1xufVxuXG4uYy1uZXdzLWRldGFpbCB7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xufVxuLmMtbmV3cy1kZXRhaWwtLWl0ZW0ge1xuICBtYXJnaW46IDEuNjY2NjY2NjY2N3JlbSAwIDAgMDtcbn1cbi5jLW5ld3MtZGV0YWlsLS1pbWFnZSB7XG4gIG1hcmdpbjogMCAwIDEuNjY2NjY2NjY2N3JlbSAwO1xufVxuLmMtbmV3cy1kZXRhaWwgcCB7XG4gIGNvbG9yOiAjODFCQjI3O1xufVxuXG4uYy1yYWRpbyBpbnB1dFt0eXBlPXJhZGlvXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uYy1yYWRpbyBpbnB1dFt0eXBlPXJhZGlvXSArIGxhYmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBwYWRkaW5nOiAwLjMzMzMzMzMzMzNyZW0gMC41NTU1NTU1NTU2cmVtIDAuMzMzMzMzMzMzM3JlbSAyLjVyZW07XG4gIGNvbG9yOiAjNjE2RkEwO1xuICBmb250LXdlaWdodDogNjAwO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNDRENGRDg7XG4gIG1hcmdpbjogMCAwIDAuNTU1NTU1NTU1NnJlbSAwO1xufVxuLmMtcmFkaW8gaW5wdXRbdHlwZT1yYWRpb10gKyBsYWJlbDpob3ZlcjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjQ0RDRkQ4O1xufVxuLmMtcmFkaW8gaW5wdXRbdHlwZT1yYWRpb10gKyBsYWJlbDpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDE3cHg7XG4gIHRvcDogMTVweDtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IDAuNzc3Nzc3Nzc3OHJlbTtcbiAgaGVpZ2h0OiAwLjc3Nzc3Nzc3NzhyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyOiAycHggc29saWQgI0ZGRkZGRjtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICNDRENGRDg7XG59XG4uYy1yYWRpbyBpbnB1dFt0eXBlPXJhZGlvXSArIGxhYmVsLmlzLWludmFsaWQtbGFiZWwge1xuICBib3JkZXItY29sb3I6ICNFQTI5NDE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGREVBRUM7XG4gIGNvbG9yOiAjRUEyOTQxO1xufVxuLmMtcmFkaW8gaW5wdXRbdHlwZT1yYWRpb106Y2hlY2tlZCArIGxhYmVsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzYxNkZBMDtcbn1cbi5jLXJhZGlvIGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjNjE2RkEwO1xuICBib3JkZXI6IDJweCBzb2xpZCAjRkZGRkZGO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAxcHggI0NEQ0ZEODtcbn1cbi5jLXJhZGlvLS1jbGVhbiBpbnB1dFt0eXBlPXJhZGlvXSArIGxhYmVsIHtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LXNpemU6IDAuODg4ODg4ODg4OXJlbTtcbiAgY29sb3I6ICMxODFCMjc7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHBhZGRpbmc6IDAuMzMzMzMzMzMzM3JlbSAwLjU1NTU1NTU1NTZyZW0gMC4zMzMzMzMzMzMzcmVtIDEuOTQ0NDQ0NDQ0NHJlbTtcbiAgbWFyZ2luOiAwO1xufVxuLmMtcmFkaW8tLWNsZWFuIGlucHV0W3R5cGU9cmFkaW9dICsgbGFiZWw6YmVmb3JlIHtcbiAgbGVmdDogMnB4O1xuICB0b3A6IDE0cHg7XG59XG4uYy1yYWRpby0tY2xlYW4gaW5wdXRbdHlwZT1yYWRpb106Y2hlY2tlZCArIGxhYmVsIHtcbiAgYm9yZGVyOiBub25lO1xufVxuLmMtcmFkaW8tLWNsZWFuIGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjNjE2RkEwO1xufVxuLmMtcmFkaW9fX3JlY3QgaW5wdXRbdHlwZT1yYWRpb10ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmMtcmFkaW9fX3JlY3QgaW5wdXRbdHlwZT1yYWRpb10gKyBsYWJlbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICB3aWR0aDogOS40NDQ0NDQ0NDQ0cmVtO1xuICBoZWlnaHQ6IDkuNDQ0NDQ0NDQ0NHJlbTtcbiAgbWFyZ2luOiAwIDAuNTU1NTU1NTU1NnJlbTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3gtc2hhZG93OiAwIDJweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuLmMtcmFkaW9fX3JlY3QgaW5wdXRbdHlwZT1yYWRpb10gKyBsYWJlbDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC40KTtcbn1cbi5jLXJhZGlvX19yZWN0IGlucHV0W3R5cGU9cmFkaW9dICsgbGFiZWwgcCB7XG4gIGNvbG9yOiAjNjE2RkEwO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAwLjg4ODg4ODg4ODlyZW07XG4gIG1hcmdpbjogMC4yNzc3Nzc3Nzc4cmVtIDAgMCAwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzcuNWVtKSB7XG4gIC5jLXJhZGlvX19yZWN0IGlucHV0W3R5cGU9cmFkaW9dICsgbGFiZWwge1xuICAgIG1hcmdpbjogMCAwLjI3Nzc3Nzc3NzhyZW07XG4gICAgd2lkdGg6IDVyZW07XG4gICAgaGVpZ2h0OiA1cmVtO1xuICB9XG4gIC5jLXJhZGlvX19yZWN0IGlucHV0W3R5cGU9cmFkaW9dICsgbGFiZWwgaW1nIHtcbiAgICB3aWR0aDogMi43Nzc3Nzc3Nzc4cmVtO1xuICAgIGhlaWdodDogMi43Nzc3Nzc3Nzc4cmVtO1xuICB9XG4gIC5jLXJhZGlvX19yZWN0IGlucHV0W3R5cGU9cmFkaW9dICsgbGFiZWwgcCB7XG4gICAgZm9udC1zaXplOiAwLjY2NjY2NjY2NjdyZW07XG4gIH1cbn1cbi5jLXJhZGlvX19yZWN0IGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgKyBsYWJlbCB7XG4gIGJvcmRlcjogM3B4IHNvbGlkICM2MTZGQTA7XG59XG4uYy1yYWRpb19fcmVjdC5zbWFsbCBpbnB1dFt0eXBlPXJhZGlvXSArIGxhYmVsIHtcbiAgaGVpZ2h0OiAyLjc3Nzc3Nzc3NzhyZW07XG4gIG1pbi13aWR0aDogNy4yMjIyMjIyMjIycmVtO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiAwLjU1NTU1NTU1NTZyZW0gMS4xMTExMTExMTExcmVtIDAuNTU1NTU1NTU1NnJlbSAwO1xufVxuLmMtcmFkaW9fX3JlY3Quc21hbGwgaW5wdXRbdHlwZT1yYWRpb10gKyBsYWJlbCBwIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDAuODMzMzMzMzMzM3JlbTtcbiAgZm9udC1zaXplOiAwLjg4ODg4ODg4ODlyZW07XG59XG4uYy1yYWRpb19fcmVjdC5zbWFsbCBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkICsgbGFiZWwge1xuICBiYWNrZ3JvdW5kOiAjNjE2RkEwO1xuICBib3JkZXI6IG5vbmU7XG59XG4uYy1yYWRpb19fcmVjdC5zbWFsbCBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkICsgbGFiZWwgcCB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4uc2VsZWN0X190cmFuc3BhcmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMS4xMTExMTExMTExcmVtO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlcjogMXB4IHNvbGlkICNENTFENjc7XG59XG4uc2VsZWN0X190cmFuc3BhcmVudDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZCAjRDUxRDY3O1xuICBib3gtc2hhZG93OiAwIDAgMC4yNzc3Nzc3Nzc4cmVtICNENTFENjc7XG59XG5cbi5zZWxlY3QyIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cbi5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gIGhlaWdodDogMi42MTExMTExMTExcmVtICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogI0NEQ0ZEOCAhaW1wb3J0YW50O1xufVxuLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjNjE2RkEwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMC44MzMzMzMzMzMzcmVtICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiAyLjYxMTExMTExMTFyZW0gIWltcG9ydGFudDtcbn1cbi5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnNlbGVjdDItc2VhcmNoX19maWVsZCB7XG4gIG1hcmdpbi1ib3R0b206IDAuMjc3Nzc3Nzc3OHJlbSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiAjRjVGNUY1O1xuICBwYWRkaW5nLWxlZnQ6IDAuNTU1NTU1NTU1NnJlbSAhaW1wb3J0YW50O1xufVxuLnNlbGVjdDIuaXMtaW52YWxpZC1pbnB1dCArIC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gIGJhY2tncm91bmQ6ICNGREVBRUM7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNFQTI5NDEgIWltcG9ydGFudDtcbn1cbi5zZWxlY3QyLmlzLWludmFsaWQtaW5wdXQgKyAuc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG4gIGNvbG9yOiAjRUEyOTQxICFpbXBvcnRhbnQ7XG59XG5cbi5jLXRlc3RpbW9uaWFsLS1pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGhlaWdodDogMjcuNzc3Nzc3Nzc3OHJlbTtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gIC5jLXRlc3RpbW9uaWFsLS1iYWNrZ3JvdW5kIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDIwMCUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5jLXRlc3RpbW9uaWFsLS1jb250ZW50IHtcbiAgcGFkZGluZzogMi4yMjIyMjIyMjIycmVtIDMuODg4ODg4ODg4OXJlbSAxLjExMTExMTExMTFyZW07XG4gIG1hcmdpbjogMS4zODg4ODg4ODg5cmVtO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDEyOSwgMTg3LCAzOSwgMC44KTtcbiAgbWF4LXdpZHRoOiAyOC44ODg4ODg4ODg5cmVtO1xuICBjb2xvcjogd2hpdGU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0OS45OTg3NWVtKSB7XG4gIC5jLXRlc3RpbW9uaWFsLS1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAxLjY2NjY2NjY2NjdyZW07XG4gIH1cbn1cbi5jLXRlc3RpbW9uaWFsLS1jb250ZW50IGgzIHtcbiAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICM2MTZGQTA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy1ib3R0b206IDEuMTExMTExMTExMXJlbTtcbn1cbi5jLXRlc3RpbW9uaWFsLS1uYW1lIHtcbiAgbWFyZ2luLXRvcDogMC41NTU1NTU1NTU2cmVtO1xufVxuLmMtdGVzdGltb25pYWwgLm9yYml0LWJ1bGxldHMgYnV0dG9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAuYy10ZXN0aW1vbmlhbC0tY29sdW1ucyB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuLmMtdGVzdGltb25pYWwtLWJ1bGxldHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMS4xMTExMTExMTExcmVtO1xuICB3aWR0aDogMTAwJTtcbn1cbi5jLXRlc3RpbW9uaWFsIC5tZWRpYS1pbWFnZSBpbWcge1xuICB3aWR0aDogMTE3MHB4O1xuICBoZWlnaHQ6IDUwMHB4O1xufVxuXG4uYy10ZXh0IHVsLFxuLmMtbWVkaWEgdWwge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5jLXRleHQgdWwgbGksXG4uYy1tZWRpYSB1bCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNTU1NTU1NTU1NnJlbTtcbiAgcGFkZGluZy1sZWZ0OiAxLjU1NTU1NTU1NTZyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jLXRleHQgdWwgbGk6YmVmb3JlLFxuLmMtbWVkaWEgdWwgbGk6YmVmb3JlIHtcbiAgY29udGVudDogXCLigKIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAtMnB4O1xuICBmb250LXNpemU6IDEuNzc3Nzc3Nzc3OHJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjNjE2RkEwO1xufVxuXG4ucmVkYWN0b3ItdG9vbGJhciA+IGxpOjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udG9vbHRpcCB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMTBweCAjOWM5YzljO1xufVxuLnRvb2x0aXAgaW1nIHtcbiAgbWF4LXdpZHRoOiAxNTBweDtcbn1cblxuLmhhcy10aXAgLmZvbnQtd2VpZ2h0LW5vcm1hbCB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi5jLXRvcC1iYXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA2MHB4O1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3gtc2hhZG93OiAwIDJweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICB6LWluZGV4OiAxMDAwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jLXRvcC1iYXIge1xuICAgIGhlaWdodDogODBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmMtdG9wLWJhcl9faW5uZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgaGVpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmMtdG9wLWJhci5pcy1vcGVuIHtcbiAgICBiYWNrZ3JvdW5kOiAjNjE2RkEwO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5jLXRvcC1iYXIuaXMtb3BlbiAuYy1tYWluLW5hdiB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAuYy10b3AtYmFyLmlzLW9wZW4gLmMtbWFpbi1uYXZfX2l0ZW0gYSB7XG4gICAgY29sb3I6IHdoaXRlO1xuICB9XG4gIC5jLXRvcC1iYXIuaXMtb3BlbiAuYy1tYWluLW5hdl9fdHJpZ2dlciB7XG4gICAgY29sb3I6IHdoaXRlO1xuICB9XG4gIC5jLXRvcC1iYXIuaXMtb3BlbiAuYy1tYWluLW5hdl9fdHJpZ2dlciAuaWNvbjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkwNVwiO1xuICB9XG59XG4uYy10b3AtYmFyIC5tZW51LWljb25fX3dyYXBwZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDk7XG4gIHJpZ2h0OiAyMHB4O1xuICB0b3A6IDE1cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jLXRvcC1iYXIgLm1lbnUtaWNvbl9fd3JhcHBlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uYy11c3AtYmxvY2sgaDIge1xuICBjb2xvcjogI0Q1MUQ2Nztcbn1cbi5jLXVzcC1ibG9ja19fd3JhcHBlciB7XG4gIGJhY2tncm91bmQ6ICNGNUY1RjU7XG4gIHBhZGRpbmc6IDIuMjIyMjIyMjIyMnJlbSAxLjExMTExMTExMTFyZW0gMS42NjY2NjY2NjY3cmVtO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG4uYy11c3AtYmxvY2tfX2lubmVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmMtdXNwLWJsb2NrX190ZXh0IHtcbiAgbWF4LXdpZHRoOiAzMS42NjY2NjY2NjY3cmVtO1xufVxuXG4uYy12aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmMtdmlkZW8gaWZyYW1lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBVdGlsaXRpZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udGV4dC1hbGlnbi1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi50ZXh0LWFsaWduLWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udGV4dC1hbGlnbi1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uZmxvYXQtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uZmxvYXQtcmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5mb250LXByaW1hcnkge1xuICBmb250LWZhbWlseTogXCJPcGVuIFNhbnNcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG59XG5cbi5mdy1ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5jb2xvci1wcmltYXJ5IHtcbiAgY29sb3I6ICNENTFENjc7XG59XG5cbi5jb2xvci1wcmltYXJ5LWRhcmtlbiB7XG4gIGNvbG9yOiAjQkYxQTVDO1xufVxuXG4uY29sb3Itc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICM2MTZGQTA7XG59XG5cbi5jb2xvci1zZWNvbmRhcnktZGFya2VuIHtcbiAgY29sb3I6ICM1NzY0OTA7XG59XG5cbi5jb2xvci10ZXJ0aWFyeSB7XG4gIGNvbG9yOiAjODFCQjI3O1xufVxuXG4uY29sb3ItdGVydGlhcnktZGFya2VuIHtcbiAgY29sb3I6ICM3M0E3MjM7XG59XG5cbi5jb2xvci1xdWF0ZXJuYXJ5IHtcbiAgY29sb3I6ICNGMkJCRDE7XG59XG5cbi5jb2xvci1zdWNjZXNzIHtcbiAgY29sb3I6ICM3NUFEMDE7XG59XG5cbi5jb2xvci13YXJuaW5nIHtcbiAgY29sb3I6ICNGMzk3MjE7XG59XG5cbi5jb2xvci1hbGVydCB7XG4gIGNvbG9yOiAjRUEyOTQxO1xufVxuXG4uY29sb3ItYWxlcnQtbGlnaHRlbiB7XG4gIGNvbG9yOiAjRkRFQUVDO1xufVxuXG4uYmFja2dyb3VuZGNvbG9yLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiAjRDUxRDY3O1xufVxuXG4uYmFja2dyb3VuZGNvbG9yLXByaW1hcnktZGFya2VuIHtcbiAgYmFja2dyb3VuZDogI0JGMUE1Qztcbn1cblxuLmJhY2tncm91bmRjb2xvci1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kOiAjNjE2RkEwO1xufVxuXG4uYmFja2dyb3VuZGNvbG9yLXNlY29uZGFyeS1kYXJrZW4ge1xuICBiYWNrZ3JvdW5kOiAjNTc2NDkwO1xufVxuXG4uYmFja2dyb3VuZGNvbG9yLXRlcnRpYXJ5IHtcbiAgYmFja2dyb3VuZDogIzgxQkIyNztcbn1cblxuLmJhY2tncm91bmRjb2xvci10ZXJ0aWFyeS1kYXJrZW4ge1xuICBiYWNrZ3JvdW5kOiAjNzNBNzIzO1xufVxuXG4uYmFja2dyb3VuZGNvbG9yLXF1YXRlcm5hcnkge1xuICBiYWNrZ3JvdW5kOiAjRjJCQkQxO1xufVxuXG4uYmFja2dyb3VuZGNvbG9yLXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kOiAjNzVBRDAxO1xufVxuXG4uYmFja2dyb3VuZGNvbG9yLXdhcm5pbmcge1xuICBiYWNrZ3JvdW5kOiAjRjM5NzIxO1xufVxuXG4uYmFja2dyb3VuZGNvbG9yLWFsZXJ0IHtcbiAgYmFja2dyb3VuZDogI0VBMjk0MTtcbn1cblxuLmJhY2tncm91bmRjb2xvci1hbGVydC1saWdodGVuIHtcbiAgYmFja2dyb3VuZDogI0ZERUFFQztcbn1cblxuLmNvbG9yLWJsYWNrIHtcbiAgY29sb3I6ICMyNzJDNDAgIWltcG9ydGFudDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFBhZGRpbmdzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLm5vLXBhZGRpbmcge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5uby1wYWRkaW5nLWIge1xuICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4ubm8tcGFkZGluZy10IHtcbiAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbn1cblxuLm5vLXBhZGRpbmctbCB7XG4gIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4ubm8tcGFkZGluZy1yIHtcbiAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuXG4ucGFkZGluZy0xMCB7XG4gIHBhZGRpbmc6IDAuNTU1NTU1NTU1NnJlbTtcbn1cblxuLnBhZGRpbmctdi0xMCB7XG4gIHBhZGRpbmctdG9wOiAwLjU1NTU1NTU1NTZyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjU1NTU1NTU1NTZyZW07XG59XG5cbi5wYWRkaW5nLWItMTAge1xuICBwYWRkaW5nLWJvdHRvbTogMC41NTU1NTU1NTU2cmVtO1xufVxuXG4ucGFkZGluZy10LTEwIHtcbiAgcGFkZGluZy10b3A6IDAuNTU1NTU1NTU1NnJlbTtcbn1cblxuLnBhZGRpbmctaC0xMCB7XG4gIHBhZGRpbmctbGVmdDogMC41NTU1NTU1NTU2cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjU1NTU1NTU1NTZyZW07XG59XG5cbi5wYWRkaW5nLWwtMTAge1xuICBwYWRkaW5nLWxlZnQ6IDAuNTU1NTU1NTU1NnJlbTtcbn1cblxuLnBhZGRpbmctci0xMCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNTU1NTU1NTU1NnJlbTtcbn1cblxuLnBhZGRpbmctMjAge1xuICBwYWRkaW5nOiAxLjExMTExMTExMTFyZW07XG59XG5cbi5wYWRkaW5nLXYtMjAge1xuICBwYWRkaW5nLXRvcDogMS4xMTExMTExMTExcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMS4xMTExMTExMTExcmVtO1xufVxuXG4ucGFkZGluZy1iLTIwIHtcbiAgcGFkZGluZy1ib3R0b206IDEuMTExMTExMTExMXJlbTtcbn1cblxuLnBhZGRpbmctdC0yMCB7XG4gIHBhZGRpbmctdG9wOiAxLjExMTExMTExMTFyZW07XG59XG5cbi5wYWRkaW5nLWgtMjAge1xuICBwYWRkaW5nLWxlZnQ6IDEuMTExMTExMTExMXJlbTtcbiAgcGFkZGluZy1yaWdodDogMS4xMTExMTExMTExcmVtO1xufVxuXG4ucGFkZGluZy1sLTIwIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjExMTExMTExMTFyZW07XG59XG5cbi5wYWRkaW5nLXItMjAge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjExMTExMTExMTFyZW07XG59XG5cbi5wYWRkaW5nLTMwIHtcbiAgcGFkZGluZzogMS42NjY2NjY2NjY3cmVtO1xufVxuXG4ucGFkZGluZy12LTMwIHtcbiAgcGFkZGluZy10b3A6IDEuNjY2NjY2NjY2N3JlbTtcbiAgcGFkZGluZy1ib3R0b206IDEuNjY2NjY2NjY2N3JlbTtcbn1cblxuLnBhZGRpbmctYi0zMCB7XG4gIHBhZGRpbmctYm90dG9tOiAxLjY2NjY2NjY2NjdyZW07XG59XG5cbi5wYWRkaW5nLXQtMzAge1xuICBwYWRkaW5nLXRvcDogMS42NjY2NjY2NjY3cmVtO1xufVxuXG4ucGFkZGluZy1oLTMwIHtcbiAgcGFkZGluZy1sZWZ0OiAxLjY2NjY2NjY2NjdyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDEuNjY2NjY2NjY2N3JlbTtcbn1cblxuLnBhZGRpbmctbC0zMCB7XG4gIHBhZGRpbmctbGVmdDogMS42NjY2NjY2NjY3cmVtO1xufVxuXG4ucGFkZGluZy1yLTMwIHtcbiAgcGFkZGluZy1yaWdodDogMS42NjY2NjY2NjY3cmVtO1xufVxuXG4ucGFkZGluZy00MCB7XG4gIHBhZGRpbmc6IDIuMjIyMjIyMjIyMnJlbTtcbn1cblxuLnBhZGRpbmctdi00MCB7XG4gIHBhZGRpbmctdG9wOiAyLjIyMjIyMjIyMjJyZW07XG4gIHBhZGRpbmctYm90dG9tOiAyLjIyMjIyMjIyMjJyZW07XG59XG5cbi5wYWRkaW5nLWItNDAge1xuICBwYWRkaW5nLWJvdHRvbTogMi4yMjIyMjIyMjIycmVtO1xufVxuXG4ucGFkZGluZy10LTQwIHtcbiAgcGFkZGluZy10b3A6IDIuMjIyMjIyMjIyMnJlbTtcbn1cblxuLnBhZGRpbmctaC00MCB7XG4gIHBhZGRpbmctbGVmdDogMi4yMjIyMjIyMjIycmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAyLjIyMjIyMjIyMjJyZW07XG59XG5cbi5wYWRkaW5nLWwtNDAge1xuICBwYWRkaW5nLWxlZnQ6IDIuMjIyMjIyMjIyMnJlbTtcbn1cblxuLnBhZGRpbmctci00MCB7XG4gIHBhZGRpbmctcmlnaHQ6IDIuMjIyMjIyMjIyMnJlbTtcbn1cblxuLnBhZGRpbmctNTAge1xuICBwYWRkaW5nOiAyLjc3Nzc3Nzc3NzhyZW07XG59XG5cbi5wYWRkaW5nLXYtNTAge1xuICBwYWRkaW5nLXRvcDogMi43Nzc3Nzc3Nzc4cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMi43Nzc3Nzc3Nzc4cmVtO1xufVxuXG4ucGFkZGluZy1iLTUwIHtcbiAgcGFkZGluZy1ib3R0b206IDIuNzc3Nzc3Nzc3OHJlbTtcbn1cblxuLnBhZGRpbmctdC01MCB7XG4gIHBhZGRpbmctdG9wOiAyLjc3Nzc3Nzc3NzhyZW07XG59XG5cbi5wYWRkaW5nLWgtNTAge1xuICBwYWRkaW5nLWxlZnQ6IDIuNzc3Nzc3Nzc3OHJlbTtcbiAgcGFkZGluZy1yaWdodDogMi43Nzc3Nzc3Nzc4cmVtO1xufVxuXG4ucGFkZGluZy1sLTUwIHtcbiAgcGFkZGluZy1sZWZ0OiAyLjc3Nzc3Nzc3NzhyZW07XG59XG5cbi5wYWRkaW5nLXItNTAge1xuICBwYWRkaW5nLXJpZ2h0OiAyLjc3Nzc3Nzc3NzhyZW07XG59XG5cbi5wYWRkaW5nLTgwIHtcbiAgcGFkZGluZzogNC40NDQ0NDQ0NDQ0cmVtO1xufVxuXG4ucGFkZGluZy12LTgwIHtcbiAgcGFkZGluZy10b3A6IDQuNDQ0NDQ0NDQ0NHJlbTtcbiAgcGFkZGluZy1ib3R0b206IDQuNDQ0NDQ0NDQ0NHJlbTtcbn1cblxuLnBhZGRpbmctYi04MCB7XG4gIHBhZGRpbmctYm90dG9tOiA0LjQ0NDQ0NDQ0NDRyZW07XG59XG5cbi5wYWRkaW5nLXQtODAge1xuICBwYWRkaW5nLXRvcDogNC40NDQ0NDQ0NDQ0cmVtO1xufVxuXG4ucGFkZGluZy1oLTgwIHtcbiAgcGFkZGluZy1sZWZ0OiA0LjQ0NDQ0NDQ0NDRyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDQuNDQ0NDQ0NDQ0NHJlbTtcbn1cblxuLnBhZGRpbmctbC04MCB7XG4gIHBhZGRpbmctbGVmdDogNC40NDQ0NDQ0NDQ0cmVtO1xufVxuXG4ucGFkZGluZy1yLTgwIHtcbiAgcGFkZGluZy1yaWdodDogNC40NDQ0NDQ0NDQ0cmVtO1xufVxuXG4ucGFkZGluZy0xMDAge1xuICBwYWRkaW5nOiA1LjU1NTU1NTU1NTZyZW07XG59XG5cbi5wYWRkaW5nLXYtMTAwIHtcbiAgcGFkZGluZy10b3A6IDUuNTU1NTU1NTU1NnJlbTtcbiAgcGFkZGluZy1ib3R0b206IDUuNTU1NTU1NTU1NnJlbTtcbn1cblxuLnBhZGRpbmctYi0xMDAge1xuICBwYWRkaW5nLWJvdHRvbTogNS41NTU1NTU1NTU2cmVtO1xufVxuXG4ucGFkZGluZy10LTEwMCB7XG4gIHBhZGRpbmctdG9wOiA1LjU1NTU1NTU1NTZyZW07XG59XG5cbi5wYWRkaW5nLWgtMTAwIHtcbiAgcGFkZGluZy1sZWZ0OiA1LjU1NTU1NTU1NTZyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDUuNTU1NTU1NTU1NnJlbTtcbn1cblxuLnBhZGRpbmctbC0xMDAge1xuICBwYWRkaW5nLWxlZnQ6IDUuNTU1NTU1NTU1NnJlbTtcbn1cblxuLnBhZGRpbmctci0xMDAge1xuICBwYWRkaW5nLXJpZ2h0OiA1LjU1NTU1NTU1NTZyZW07XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBNYXJnaW5zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLm5vLW1hcmdpbiB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xufVxuXG4ubm8tbWFyZ2luLWIge1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5uby1tYXJnaW4tdCB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbn1cblxuLm5vLW1hcmdpbi1sIHtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuLm5vLW1hcmdpbi1yIHtcbiAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5tYXJnaW4tMTAge1xuICBtYXJnaW46IDAuNTU1NTU1NTU1NnJlbTtcbn1cblxuLm1hcmdpbi12LTEwIHtcbiAgbWFyZ2luLXRvcDogMC41NTU1NTU1NTU2cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjU1NTU1NTU1NTZyZW07XG59XG5cbi5tYXJnaW4tYi0xMCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNTU1NTU1NTU1NnJlbTtcbn1cblxuLm1hcmdpbi10LTEwIHtcbiAgbWFyZ2luLXRvcDogMC41NTU1NTU1NTU2cmVtO1xufVxuXG4ubWFyZ2luLWgtMTAge1xuICBtYXJnaW4tbGVmdDogMC41NTU1NTU1NTU2cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuNTU1NTU1NTU1NnJlbTtcbn1cblxuLm1hcmdpbi1sLTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNTU1NTU1NTU1NnJlbTtcbn1cblxuLm1hcmdpbi1yLTEwIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjU1NTU1NTU1NTZyZW07XG59XG5cbi5tYXJnaW4tMjAge1xuICBtYXJnaW46IDEuMTExMTExMTExMXJlbTtcbn1cblxuLm1hcmdpbi12LTIwIHtcbiAgbWFyZ2luLXRvcDogMS4xMTExMTExMTExcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjExMTExMTExMTFyZW07XG59XG5cbi5tYXJnaW4tYi0yMCB7XG4gIG1hcmdpbi1ib3R0b206IDEuMTExMTExMTExMXJlbTtcbn1cblxuLm1hcmdpbi10LTIwIHtcbiAgbWFyZ2luLXRvcDogMS4xMTExMTExMTExcmVtO1xufVxuXG4ubWFyZ2luLWgtMjAge1xuICBtYXJnaW4tbGVmdDogMS4xMTExMTExMTExcmVtO1xuICBtYXJnaW4tcmlnaHQ6IDEuMTExMTExMTExMXJlbTtcbn1cblxuLm1hcmdpbi1sLTIwIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMTExMTExMTExMXJlbTtcbn1cblxuLm1hcmdpbi1yLTIwIHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjExMTExMTExMTFyZW07XG59XG5cbi5tYXJnaW4tMzAge1xuICBtYXJnaW46IDEuNjY2NjY2NjY2N3JlbTtcbn1cblxuLm1hcmdpbi12LTMwIHtcbiAgbWFyZ2luLXRvcDogMS42NjY2NjY2NjY3cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjY2NjY2NjY2NjdyZW07XG59XG5cbi5tYXJnaW4tYi0zMCB7XG4gIG1hcmdpbi1ib3R0b206IDEuNjY2NjY2NjY2N3JlbTtcbn1cblxuLm1hcmdpbi10LTMwIHtcbiAgbWFyZ2luLXRvcDogMS42NjY2NjY2NjY3cmVtO1xufVxuXG4ubWFyZ2luLWgtMzAge1xuICBtYXJnaW4tbGVmdDogMS42NjY2NjY2NjY3cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDEuNjY2NjY2NjY2N3JlbTtcbn1cblxuLm1hcmdpbi1sLTMwIHtcbiAgbWFyZ2luLWxlZnQ6IDEuNjY2NjY2NjY2N3JlbTtcbn1cblxuLm1hcmdpbi1yLTMwIHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjY2NjY2NjY2NjdyZW07XG59XG5cbi5tYXJnaW4tNDAge1xuICBtYXJnaW46IDIuMjIyMjIyMjIyMnJlbTtcbn1cblxuLm1hcmdpbi12LTQwIHtcbiAgbWFyZ2luLXRvcDogMi4yMjIyMjIyMjIycmVtO1xuICBtYXJnaW4tYm90dG9tOiAyLjIyMjIyMjIyMjJyZW07XG59XG5cbi5tYXJnaW4tYi00MCB7XG4gIG1hcmdpbi1ib3R0b206IDIuMjIyMjIyMjIyMnJlbTtcbn1cblxuLm1hcmdpbi10LTQwIHtcbiAgbWFyZ2luLXRvcDogMi4yMjIyMjIyMjIycmVtO1xufVxuXG4ubWFyZ2luLWgtNDAge1xuICBtYXJnaW4tbGVmdDogMi4yMjIyMjIyMjIycmVtO1xuICBtYXJnaW4tcmlnaHQ6IDIuMjIyMjIyMjIyMnJlbTtcbn1cblxuLm1hcmdpbi1sLTQwIHtcbiAgbWFyZ2luLWxlZnQ6IDIuMjIyMjIyMjIyMnJlbTtcbn1cblxuLm1hcmdpbi1yLTQwIHtcbiAgbWFyZ2luLXJpZ2h0OiAyLjIyMjIyMjIyMjJyZW07XG59XG5cbi5tYXJnaW4tNTAge1xuICBtYXJnaW46IDIuNzc3Nzc3Nzc3OHJlbTtcbn1cblxuLm1hcmdpbi12LTUwIHtcbiAgbWFyZ2luLXRvcDogMi43Nzc3Nzc3Nzc4cmVtO1xuICBtYXJnaW4tYm90dG9tOiAyLjc3Nzc3Nzc3NzhyZW07XG59XG5cbi5tYXJnaW4tYi01MCB7XG4gIG1hcmdpbi1ib3R0b206IDIuNzc3Nzc3Nzc3OHJlbTtcbn1cblxuLm1hcmdpbi10LTUwIHtcbiAgbWFyZ2luLXRvcDogMi43Nzc3Nzc3Nzc4cmVtO1xufVxuXG4ubWFyZ2luLWgtNTAge1xuICBtYXJnaW4tbGVmdDogMi43Nzc3Nzc3Nzc4cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDIuNzc3Nzc3Nzc3OHJlbTtcbn1cblxuLm1hcmdpbi1sLTUwIHtcbiAgbWFyZ2luLWxlZnQ6IDIuNzc3Nzc3Nzc3OHJlbTtcbn1cblxuLm1hcmdpbi1yLTUwIHtcbiAgbWFyZ2luLXJpZ2h0OiAyLjc3Nzc3Nzc3NzhyZW07XG59XG5cbi5tYXJnaW4tODAge1xuICBtYXJnaW46IDQuNDQ0NDQ0NDQ0NHJlbTtcbn1cblxuLm1hcmdpbi12LTgwIHtcbiAgbWFyZ2luLXRvcDogNC40NDQ0NDQ0NDQ0cmVtO1xuICBtYXJnaW4tYm90dG9tOiA0LjQ0NDQ0NDQ0NDRyZW07XG59XG5cbi5tYXJnaW4tYi04MCB7XG4gIG1hcmdpbi1ib3R0b206IDQuNDQ0NDQ0NDQ0NHJlbTtcbn1cblxuLm1hcmdpbi10LTgwIHtcbiAgbWFyZ2luLXRvcDogNC40NDQ0NDQ0NDQ0cmVtO1xufVxuXG4ubWFyZ2luLWgtODAge1xuICBtYXJnaW4tbGVmdDogNC40NDQ0NDQ0NDQ0cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDQuNDQ0NDQ0NDQ0NHJlbTtcbn1cblxuLm1hcmdpbi1sLTgwIHtcbiAgbWFyZ2luLWxlZnQ6IDQuNDQ0NDQ0NDQ0NHJlbTtcbn1cblxuLm1hcmdpbi1yLTgwIHtcbiAgbWFyZ2luLXJpZ2h0OiA0LjQ0NDQ0NDQ0NDRyZW07XG59XG5cbi5tYXJnaW4tMTAwIHtcbiAgbWFyZ2luOiA1LjU1NTU1NTU1NTZyZW07XG59XG5cbi5tYXJnaW4tdi0xMDAge1xuICBtYXJnaW4tdG9wOiA1LjU1NTU1NTU1NTZyZW07XG4gIG1hcmdpbi1ib3R0b206IDUuNTU1NTU1NTU1NnJlbTtcbn1cblxuLm1hcmdpbi1iLTEwMCB7XG4gIG1hcmdpbi1ib3R0b206IDUuNTU1NTU1NTU1NnJlbTtcbn1cblxuLm1hcmdpbi10LTEwMCB7XG4gIG1hcmdpbi10b3A6IDUuNTU1NTU1NTU1NnJlbTtcbn1cblxuLm1hcmdpbi1oLTEwMCB7XG4gIG1hcmdpbi1sZWZ0OiA1LjU1NTU1NTU1NTZyZW07XG4gIG1hcmdpbi1yaWdodDogNS41NTU1NTU1NTU2cmVtO1xufVxuXG4ubWFyZ2luLWwtMTAwIHtcbiAgbWFyZ2luLWxlZnQ6IDUuNTU1NTU1NTU1NnJlbTtcbn1cblxuLm1hcmdpbi1yLTEwMCB7XG4gIG1hcmdpbi1yaWdodDogNS41NTU1NTU1NTU2cmVtO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRGVwZW5kZW5jaWVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnNlbGVjdDItY29udGFpbmVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAyOHB4O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyW2Rpcj1ydGxdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuICBwYWRkaW5nLXJpZ2h0OiA4cHg7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4taGVpZ2h0OiAzMnB4O1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlYXJjaC0taW5saW5lIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBwYWRkaW5nOiAwO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUgLnNlbGVjdDItc2VhcmNoX19maWVsZDo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLnNlbGVjdDItZHJvcGRvd24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtMTAwMDAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDUxO1xufVxuXG4uc2VsZWN0Mi1yZXN1bHRzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnMge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XG4gIHBhZGRpbmc6IDZweDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvblthcmlhLXNlbGVjdGVkXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3duIHtcbiAgbGVmdDogMDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3duLS1hYm92ZSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItZHJvcGRvd24tLWJlbG93IHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG59XG5cbi5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogNHB4O1xufVxuXG4uc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQge1xuICBwYWRkaW5nOiA0cHg7XG4gIHdpZHRoOiAxMDAlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQ6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24uc2VsZWN0Mi1zZWFyY2gtLWhpZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uc2VsZWN0Mi1jbG9zZS1tYXNrIHtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiA5OTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xufVxuXG4uc2VsZWN0Mi1oaWRkZW4tYWNjZXNzaWJsZSB7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAgMCAwIDApICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtY2xpcC1wYXRoOiBpbnNldCg1MCUpICFpbXBvcnRhbnQ7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgY29sb3I6ICM0NDQ7XG4gIGxpbmUtaGVpZ2h0OiAyOHB4O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzk5OTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuICBoZWlnaHQ6IDI2cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxcHg7XG4gIHJpZ2h0OiAxcHg7XG4gIHdpZHRoOiAyMHB4O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyBiIHtcbiAgYm9yZGVyLWNvbG9yOiAjODg4IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDVweCA0cHggMCA0cHg7XG4gIGhlaWdodDogMDtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTRweDtcbiAgbWFyZ2luLXRvcDogLTJweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDA7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9cnRsXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9cnRsXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IHtcbiAgbGVmdDogMXB4O1xuICByaWdodDogYXV0bztcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1kaXNhYmxlZCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1kaXNhYmxlZCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cgYiB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzg4OCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAwIDRweCA1cHggNHB4O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGN1cnNvcjogdGV4dDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCA1cHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIHBhZGRpbmc6IDFweDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlNGU0O1xuICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIHBhZGRpbmc6IDAgNXB4O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHtcbiAgY29sb3I6ICM5OTk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLXJpZ2h0OiAycHg7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmU6aG92ZXIge1xuICBjb2xvcjogIzMzMztcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0W2Rpcj1ydGxdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2UsIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9cnRsXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlYXJjaC0taW5saW5lIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPXJ0bF0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZSB7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0W2Rpcj1ydGxdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSB7XG4gIG1hcmdpbi1sZWZ0OiAycHg7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1mb2N1cyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcbiAgYm9yZGVyOiBzb2xpZCBibGFjayAxcHg7XG4gIG91dGxpbmU6IDA7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1kaXNhYmxlZCAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1hYm92ZSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSwgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1hYm92ZSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYmVsb3cgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUsIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYmVsb3cgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlYXJjaC0taW5saW5lIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHMgPiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25zIHtcbiAgbWF4LWhlaWdodDogMjAwcHg7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25bcm9sZT1ncm91cF0ge1xuICBwYWRkaW5nOiAwO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0ge1xuICBjb2xvcjogIzk5OTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvblthcmlhLXNlbGVjdGVkPXRydWVdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24ge1xuICBwYWRkaW5nLWxlZnQ6IDFlbTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fZ3JvdXAge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICBwYWRkaW5nLWxlZnQ6IDJlbTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAtMmVtO1xuICBwYWRkaW5nLWxlZnQ6IDNlbTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24ge1xuICBtYXJnaW4tbGVmdDogLTNlbTtcbiAgcGFkZGluZy1sZWZ0OiA0ZW07XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAtNGVtO1xuICBwYWRkaW5nLWxlZnQ6IDVlbTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAtNWVtO1xuICBwYWRkaW5nLWxlZnQ6IDZlbTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTg5N2ZiO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19ncm91cCB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDZweDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBvdXRsaW5lOiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHdoaXRlIDUwJSwgI2VlZWVlZSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgd2hpdGUgNTAlLCAjZWVlZWVlIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCB3aGl0ZSA1MCUsICNlZWVlZWUgMTAwJSk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj1cIiNGRkZGRkZGRlwiLCBlbmRDb2xvcnN0cj1cIiNGRkVFRUVFRVwiLCBHcmFkaWVudFR5cGU9MCk7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM1ODk3ZmI7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgY29sb3I6ICM0NDQ7XG4gIGxpbmUtaGVpZ2h0OiAyOHB4O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjOTk5O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjYWFhO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNHB4O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNHB4O1xuICBoZWlnaHQ6IDI2cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxcHg7XG4gIHJpZ2h0OiAxcHg7XG4gIHdpZHRoOiAyMHB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICNlZWVlZWUgNTAlLCAjY2NjY2NjIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjZWVlZWVlIDUwJSwgI2NjY2NjYyAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2VlZWVlZSA1MCUsICNjY2NjY2MgMTAwJSk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj1cIiNGRkVFRUVFRVwiLCBlbmRDb2xvcnN0cj1cIiNGRkNDQ0NDQ1wiLCBHcmFkaWVudFR5cGU9MCk7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IGIge1xuICBib3JkZXItY29sb3I6ICM4ODggdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNXB4IDRweCAwIDRweDtcbiAgaGVpZ2h0OiAwO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtNHB4O1xuICBtYXJnaW4tdG9wOiAtMnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogMDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj1ydGxdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj1ydGxdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNhYWE7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4O1xuICBsZWZ0OiAxcHg7XG4gIHJpZ2h0OiBhdXRvO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNTg5N2ZiO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IGIge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICM4ODggdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogMCA0cHggNXB4IDRweDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1hYm92ZSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHdoaXRlIDAlLCAjZWVlZWVlIDUwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHdoaXRlIDAlLCAjZWVlZWVlIDUwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHdoaXRlIDAlLCAjZWVlZWVlIDUwJSk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj1cIiNGRkZGRkZGRlwiLCBlbmRDb2xvcnN0cj1cIiNGRkVFRUVFRVwiLCBHcmFkaWVudFR5cGU9MCk7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYmVsb3cgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjZWVlZWVlIDUwJSwgd2hpdGUgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNlZWVlZWUgNTAlLCB3aGl0ZSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2VlZWVlZSA1MCUsIHdoaXRlIDEwMCUpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9XCIjRkZFRUVFRUVcIiwgZW5kQ29sb3JzdHI9XCIjRkZGRkZGRkZcIiwgR3JhZGllbnRUeXBlPTApO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGN1cnNvcjogdGV4dDtcbiAgb3V0bGluZTogMDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGU6Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNTg5N2ZiO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDVweDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZTRlNDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBwYWRkaW5nOiAwIDVweDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSB7XG4gIGNvbG9yOiAjODg4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1yaWdodDogMnB4O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlOmhvdmVyIHtcbiAgY29sb3I6ICM1NTU7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpY1tkaXI9cnRsXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpY1tkaXI9cnRsXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmUge1xuICBtYXJnaW4tbGVmdDogMnB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzU4OTdmYjtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1hYm92ZSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYmVsb3cgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgb3V0bGluZTogMDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlYXJjaC0taW5saW5lIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQge1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItZHJvcGRvd24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1kcm9wZG93bi0tYWJvdmUge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItZHJvcGRvd24tLWJlbG93IHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXJlc3VsdHMgPiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25zIHtcbiAgbWF4LWhlaWdodDogMjAwcHg7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25bcm9sZT1ncm91cF0ge1xuICBwYWRkaW5nOiAwO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0ge1xuICBjb2xvcjogZ3JleTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzg3NWQ3O1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1yZXN1bHRzX19ncm91cCB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDZweDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3duIHtcbiAgYm9yZGVyLWNvbG9yOiAjNTg5N2ZiO1xufVxuXG4uY2Mtd2luZG93IHtcbiAgb3BhY2l0eTogMTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMXMgZWFzZTtcbn1cblxuLmNjLXdpbmRvdy5jYy1pbnZpc2libGUge1xuICBvcGFjaXR5OiAwO1xufVxuXG4uY2MtYW5pbWF0ZS5jYy1yZXZva2Uge1xuICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSAxcyBlYXNlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDFzIGVhc2U7XG4gIHRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDFzIGVhc2U7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxcyBlYXNlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMXMgZWFzZSwgLXdlYmtpdC10cmFuc2Zvcm0gMXMgZWFzZTtcbn1cblxuLmNjLWFuaW1hdGUuY2MtcmV2b2tlLmNjLXRvcCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yZW0pO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJlbSk7XG59XG5cbi5jYy1hbmltYXRlLmNjLXJldm9rZS5jYy1ib3R0b20ge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyZW0pO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMmVtKTtcbn1cblxuLmNjLWFuaW1hdGUuY2MtcmV2b2tlLmNjLWFjdGl2ZS5jYy10b3Age1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xufVxuXG4uY2MtYW5pbWF0ZS5jYy1yZXZva2UuY2MtYWN0aXZlLmNjLWJvdHRvbSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5cbi5jYy1yZXZva2U6aG92ZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xufVxuXG4uY2MtZ3Jvd2VyIHtcbiAgbWF4LWhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDFzO1xuICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDFzO1xufVxuXG4uY2MtcmV2b2tlLCAuY2Mtd2luZG93IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2EsIENhbGlicmksIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtbXMtZmxleC13cmFwOiBub3dyYXA7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICB6LWluZGV4OiA5OTk5O1xufVxuXG4uY2Mtd2luZG93LmNjLXN0YXRpYyB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG59XG5cbi5jYy13aW5kb3cuY2MtZmxvYXRpbmcge1xuICBwYWRkaW5nOiAyZW07XG4gIG1heC13aWR0aDogMjRlbTtcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4uY2Mtd2luZG93LmNjLWJhbm5lciB7XG4gIHBhZGRpbmc6IDFlbSAxLjhlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtYm94LW9yaWVudDogaG9yaXpvbnRhbDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuXG4uY2MtcmV2b2tlIHtcbiAgcGFkZGluZzogMC41ZW07XG59XG5cbi5jYy1yZXZva2U6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmNjLWhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmNjLWJ0biwgLmNjLWNsb3NlLCAuY2MtbGluaywgLmNjLXJldm9rZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmNjLWxpbmsge1xuICBvcGFjaXR5OiAwLjg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC4yZW07XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uY2MtbGluazpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5jYy1saW5rOmFjdGl2ZSwgLmNjLWxpbms6dmlzaXRlZCB7XG4gIGNvbG9yOiBpbml0aWFsO1xufVxuXG4uY2MtYnRuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuNGVtIDAuOGVtO1xuICBmb250LXNpemU6IDAuOWVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBib3JkZXItd2lkdGg6IDJweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uY2MtaGlnaGxpZ2h0IC5jYy1idG46Zmlyc3QtY2hpbGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmNjLWhpZ2hsaWdodCAuY2MtYnRuOmZpcnN0LWNoaWxkOmZvY3VzLCAuY2MtaGlnaGxpZ2h0IC5jYy1idG46Zmlyc3QtY2hpbGQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5jYy1jbG9zZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMC41ZW07XG4gIHJpZ2h0OiAwLjVlbTtcbiAgZm9udC1zaXplOiAxLjZlbTtcbiAgb3BhY2l0eTogMC45O1xuICBsaW5lLWhlaWdodDogMC43NTtcbn1cblxuLmNjLWNsb3NlOmZvY3VzLCAuY2MtY2xvc2U6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uY2MtcmV2b2tlLmNjLXRvcCB7XG4gIHRvcDogMDtcbiAgbGVmdDogM2VtO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjVlbTtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuNWVtO1xufVxuXG4uY2MtcmV2b2tlLmNjLWJvdHRvbSB7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogM2VtO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjVlbTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuNWVtO1xufVxuXG4uY2MtcmV2b2tlLmNjLWxlZnQge1xuICBsZWZ0OiAzZW07XG4gIHJpZ2h0OiB1bnNldDtcbn1cblxuLmNjLXJldm9rZS5jYy1yaWdodCB7XG4gIHJpZ2h0OiAzZW07XG4gIGxlZnQ6IHVuc2V0O1xufVxuXG4uY2MtdG9wIHtcbiAgdG9wOiAxZW07XG59XG5cbi5jYy1sZWZ0IHtcbiAgbGVmdDogMWVtO1xufVxuXG4uY2MtcmlnaHQge1xuICByaWdodDogMWVtO1xufVxuXG4uY2MtYm90dG9tIHtcbiAgYm90dG9tOiAxZW07XG59XG5cbi5jYy1mbG9hdGluZyA+IC5jYy1saW5rIHtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuXG4uY2MtZmxvYXRpbmcgLmNjLW1lc3NhZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuXG4uY2Mtd2luZG93LmNjLWZsb2F0aW5nIC5jYy1jb21wbGlhbmNlIHtcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcbiAgLW1zLWZsZXg6IDEgMCBhdXRvO1xuICBmbGV4OiAxIDAgYXV0bztcbn1cblxuLmNjLXdpbmRvdy5jYy1iYW5uZXIge1xuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uY2MtYmFubmVyLmNjLXRvcCB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG59XG5cbi5jYy1iYW5uZXIuY2MtYm90dG9tIHtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbn1cblxuLmNjLWJhbm5lciAuY2MtbWVzc2FnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAtd2Via2l0LWJveC1mbGV4OiAxO1xuICAtbXMtZmxleDogMSAxIGF1dG87XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogMWVtO1xufVxuXG4uY2MtY29tcGxpYW5jZSB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLW1zLWZsZXgtbGluZS1wYWNrOiBqdXN0aWZ5O1xuICBhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG4uY2MtZmxvYXRpbmcgLmNjLWNvbXBsaWFuY2UgPiAuY2MtYnRuIHtcbiAgLXdlYmtpdC1ib3gtZmxleDogMTtcbiAgLW1zLWZsZXg6IDE7XG4gIGZsZXg6IDE7XG59XG5cbi5jYy1idG4gKyAuY2MtYnRuIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNWVtO1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICAuY2MtcmV2b2tlLCAuY2Mtd2luZG93IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAuY2MtYnRuIHtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MTRweCkgYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpLCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDczNnB4KSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgLmNjLXdpbmRvdy5jYy10b3Age1xuICAgIHRvcDogMDtcbiAgfVxuICAuY2Mtd2luZG93LmNjLWJvdHRvbSB7XG4gICAgYm90dG9tOiAwO1xuICB9XG4gIC5jYy13aW5kb3cuY2MtYmFubmVyLCAuY2Mtd2luZG93LmNjLWZsb2F0aW5nLCAuY2Mtd2luZG93LmNjLWxlZnQsIC5jYy13aW5kb3cuY2MtcmlnaHQge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgLmNjLXdpbmRvdy5jYy1iYW5uZXIge1xuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICAuY2Mtd2luZG93LmNjLWJhbm5lciAuY2MtY29tcGxpYW5jZSB7XG4gICAgLXdlYmtpdC1ib3gtZmxleDogMTtcbiAgICAtbXMtZmxleDogMSAxIGF1dG87XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cbiAgLmNjLXdpbmRvdy5jYy1mbG9hdGluZyB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG4gIC5jYy13aW5kb3cgLmNjLW1lc3NhZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgfVxuICAuY2Mtd2luZG93LmNjLWJhbm5lciB7XG4gICAgLXdlYmtpdC1ib3gtYWxpZ246IHVuc2V0O1xuICAgIC1tcy1mbGV4LWFsaWduOiB1bnNldDtcbiAgICBhbGlnbi1pdGVtczogdW5zZXQ7XG4gIH1cbiAgLmNjLXdpbmRvdy5jYy1iYW5uZXIgLmNjLW1lc3NhZ2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuLmNjLWZsb2F0aW5nLmNjLXRoZW1lLWNsYXNzaWMge1xuICBwYWRkaW5nOiAxLjJlbTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xufVxuXG4uY2MtZmxvYXRpbmcuY2MtdHlwZS1pbmZvLmNjLXRoZW1lLWNsYXNzaWMgLmNjLWNvbXBsaWFuY2Uge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgLXdlYmtpdC1ib3gtZmxleDogMDtcbiAgLW1zLWZsZXg6IG5vbmU7XG4gIGZsZXg6IG5vbmU7XG59XG5cbi5jYy10aGVtZS1jbGFzc2ljIC5jYy1idG4ge1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG59XG5cbi5jYy10aGVtZS1jbGFzc2ljIC5jYy1idG46bGFzdC1jaGlsZCB7XG4gIG1pbi13aWR0aDogMTQwcHg7XG59XG5cbi5jYy1mbG9hdGluZy5jYy10eXBlLWluZm8uY2MtdGhlbWUtY2xhc3NpYyAuY2MtYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uY2MtdGhlbWUtZWRnZWxlc3MuY2Mtd2luZG93IHtcbiAgcGFkZGluZzogMDtcbn1cblxuLmNjLWZsb2F0aW5nLmNjLXRoZW1lLWVkZ2VsZXNzIC5jYy1tZXNzYWdlIHtcbiAgbWFyZ2luOiAyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNWVtO1xufVxuXG4uY2MtYmFubmVyLmNjLXRoZW1lLWVkZ2VsZXNzIC5jYy1idG4ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuOGVtIDEuOGVtO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5jYy1iYW5uZXIuY2MtdGhlbWUtZWRnZWxlc3MgLmNjLW1lc3NhZ2Uge1xuICBtYXJnaW4tbGVmdDogMWVtO1xufVxuXG4uY2MtZmxvYXRpbmcuY2MtdGhlbWUtZWRnZWxlc3MgLmNjLWJ0biArIC5jYy1idG4ge1xuICBtYXJnaW4tbGVmdDogMDtcbn0iLCIvLyBib2R5IGZvbnRcbkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9T3BlbitTYW5zOjMwMCw0MDAsNDAwaSw2MDAsNzAwLDgwMCcpO1xuXG4vLyBoZWFkaW5nIGZvbnRcbkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9U3BlY2lhbCtFbGl0ZScpOyIsIkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ2ljb21vb24nO1xuICBzcmM6ICB1cmwoJy4uL2ZvbnRzL2ljb21vb24uZW90Jyk7XG4gIHNyYzogIHVybCgnLi4vZm9udHMvaWNvbW9vbi5lb3QjaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgdXJsKCcuLi9mb250cy9pY29tb29uLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICB1cmwoJy4uL2ZvbnRzL2ljb21vb24ud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgIHVybCgnLi4vZm9udHMvaWNvbW9vbi5zdmcjaWNvbW9vbicpIGZvcm1hdCgnc3ZnJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuW2NsYXNzXj1cImljb24tXCJdLCBbY2xhc3MqPVwiIGljb24tXCJdIHtcbiAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgZm9udC1mYW1pbHk6ICdpY29tb29uJyAhaW1wb3J0YW50O1xuICBzcGVhazogbm9uZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuXG4gIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuLmljb24tZmFjZWJvb2syOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTkxXCI7XG59XG4uaWNvbi10d2l0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlYTk2XCI7XG59XG4uaWNvbi1jaGVja21hcmsxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAwXCI7XG59XG4uaWNvbi1jaGV2ZXJvbi1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAxXCI7XG59XG4uaWNvbi1jaGV2ZXJvbi1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAyXCI7XG59XG4uaWNvbi1jaGV2ZXJvbi1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwM1wiO1xufVxuLmljb24tY2hldmVyb24tdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDRcIjtcbn1cbi5pY29uLWNsb3NlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA1XCI7XG59XG4uaWNvbi1kb3dubG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNlwiO1xufVxuLmljb24taW5mb3JtYXRpb24tc29saWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDdcIjtcbn1cbi5pY29uLW1lbnU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDhcIjtcbn1cbi5pY29uLWNoZWNrbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwOVwiO1xufVxuIiwiQGltcG9ydCBcImZvbnRzXCI7XG5AaW1wb3J0IFwiaWNvbW9vblwiO1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgU2V0dGluZ3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5AaW1wb3J0IFwic2V0dGluZ3MvZm91bmRhdGlvblwiO1xuQGltcG9ydCBcInNldHRpbmdzL2dsb2JhbFwiO1xuQGltcG9ydCBcInNldHRpbmdzL3ByaW50XCI7XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBGb3VuZGF0aW9uXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIn5mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm91bmRhdGlvblwiO1xuQGltcG9ydCBcImZvdW5kYXRpb25cIjtcbkBpbXBvcnQgXCJtb3Rpb24tdWlcIjtcblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEdlbmVyaWNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBpbXBvcnQgXCJnZW5lcmljL2dsb2JhbFwiO1xuQGltcG9ydCBcImdlbmVyaWMvaWNvbnNcIjtcbkBpbXBvcnQgXCJnZW5lcmljL3Jlc2V0XCI7XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBFbGVtZW50c1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIE9iamVjdHNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vLyBAaW1wb3J0IFwib2JqZWN0cy9cIjtcblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudHNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiY29tcG9uZW50cy9ibG9ja3NcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2JyZWFkY3J1bWJcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2NhcmRcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2NvbnRhY3RcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2NvbnRlbnRcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2NvdW50ZXJcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2NoZWNrYm94XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9oZWFkZXJcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2hvdXNldGVzdFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvaWNvblwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvaW5wdXRcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2Zvb3RlclwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvbGFiZWxcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2xpc3RcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2xvZ29cIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL2xpbmtcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL21haW4tbmF2XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9tZWRpYVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvbXVsdGktZm9ybVwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvaW1hZ2VcIjtcbkBpbXBvcnQgXCJjb21wb25lbnRzL3ByaWNlLXRhYmxlXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9wcm9kdWN0XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9uZXdzXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy9yYWRpb1wiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvc2VsZWN0XCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy90ZXN0aW1vbmlhbFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvdGV4dFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvdG9vbHRpcFwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvdG9wLWJhclwiO1xuQGltcG9ydCBcImNvbXBvbmVudHMvdXNwLWJsb2NrXCI7XG5AaW1wb3J0IFwiY29tcG9uZW50cy92aWRlb1wiO1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgVXRpbGl0aWVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuQGltcG9ydCBcInV0aWxpdGllcy9oZWxwZXJzLmFsaWduXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2hlbHBlcnMuY29sb3JzXCI7XG5AaW1wb3J0IFwidXRpbGl0aWVzL2hlbHBlcnMuc3BhY2luZ1wiO1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRGVwZW5kZW5jaWVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9zZWxlY3QyL2Rpc3QvY3NzL3NlbGVjdDJcIjtcbkBpbXBvcnQgXCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvY29va2llY29uc2VudC9idWlsZC9jb29raWVjb25zZW50Lm1pblwiOyIsIi8qIFByaW50XG49PT09PT09PT09XG4qL1xuXG5AbWVkaWEgcHJpbnQge1xuICAgICoge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50OyAvKiBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zICovXG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAcGFnZSB7XG5cdCAgICBzaXplOiBhdXRvICFpbXBvcnRhbnQ7XG5cdCAgICBtYXJnaW46IDVtbSAzNW1tIDM1bW0gMzVtbSAhaW1wb3J0YW50O1xuXHR9XG5cblx0Ly8gYm9keSAge1xuXHQvLyAgICAgbWFyZ2luOiAyNW1tIDI1bW0gMjVtbSAyNW1tICFpbXBvcnRhbnQ7XG5cdC8vIH1cblxuICAgIGEsXG4gICAgYTp2aXNpdGVkIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuXG4gICAgYVtocmVmXTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICAgIH1cblxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICAgIH1cblxuICAgIC8qXG4gICAgICogRG9uJ3Qgc2hvdyBsaW5rcyBmb3IgaW1hZ2VzLCBvciBqYXZhc2NyaXB0L2ludGVybmFsIGxpbmtzXG4gICAgICovXG5cbiAgICAuaXIgYTphZnRlcixcbiAgICBhW2hyZWZePVwiamF2YXNjcmlwdDpcIl06YWZ0ZXIsXG4gICAgYVtocmVmXj1cIiNcIl06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgIH1cblxuICAgIGFbaHJlZl06YWZ0ZXIge1xuICAgIFx0Y29udGVudDogbm9uZSAhaW1wb3J0YW50O1xuICBcdH1cblxuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzk5OTtcbiAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIHRoZWFkIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyAvKiBoNWJwLmNvbS90ICovXG4gICAgfVxuXG4gICAgdHIsXG4gICAgaW1nLFxuICAgIGlmcmFtZSB7XG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgb3JwaGFuczogMztcbiAgICAgICAgd2lkb3dzOiAzO1xuICAgIH1cblxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gICAgfVxuXG4gICAgLm5vcHJpbnQge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnByaW50b25seSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgaDEge1xuICAgIFx0Y29sb3I6IGdldC1jb2xvcihwcmltYXJ5KSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICB9XG5cbiAgICBoMiwgaDMge1xuXHRcdGNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KSAhaW1wb3J0YW50O1xuXHRcdC13ZWJraXQtcHJpbnQtY29sb3ItYWRqdXN0OiBleGFjdDtcbiAgICAgICAgcHJpbnQtY29sb3ItYWRqdXN0OiBleGFjdDtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgfVxuXG4gICAgLnJvdy5hbGlnbi1jZW50ZXIgLmxhcmdlLTgge1xuICAgIFx0bWF4LXdpZHRoOiAxMDAlO1xuICAgIFx0ZmxleDogMCAwIDEwMCU7XG4gICAgfVxuXG4gICAgLmMtdG9wLWJhcixcblx0LmMtaGVhZGVyLFxuXHQuYy1mb290ZXIsXG5cdC5jLWJyZWFkY3J1bWIsXG5cdC5jLWZvb3Rlcl9fYm90dG9tIHtcblx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0aGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQuYy1tZWRpYV9faW1hZ2UgLm1lZGlhLW9iamVjdCB7XG5cdFx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblx0fVxufVxuXG4ucHJpbnRvbmx5IHtcbiAgICBkaXNwbGF5OiBub25lO1xufSIsIi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjUuMC1yYy4xXG4gKiBmb3VuZGF0aW9uLnp1cmIuY29tXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuXG4vLyBEZXBlbmRlbmNpZXNcbkBpbXBvcnQgJ3ZlbmRvci9ub3JtYWxpemUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL21pc3NpbmctZGVwZW5kZW5jaWVzJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy90cnVlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL2NvbnRhaW4nO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcHVyZ2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcmVtb3ZlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlcGxhY2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvdG8tbGlzdCc7XG5cbi8vIC0tLSBTZXR0aW5ncyAtLS1cbi8vIGltcG9ydCB5b3VyIG93biBgc2V0dGluZ3NgIGhlcmUgb3Jcbi8vIGltcG9ydCBhbmQgbW9kaWZ5IHRoZSBkZWZhdWx0IHNldHRpbmdzIHRocm91Z2hcbi8vIEBpbXBvcnQgJ3NldHRpbmdzL3NldHRpbmdzJztcblxuLy8gLS0tIENvbXBvbmVudHMgLS0tXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG4vLyBHbG9iYWwgc3R5bGVzXG5AaW1wb3J0ICdnbG9iYWwnO1xuQGltcG9ydCAnZm9ybXMvZm9ybXMnO1xuQGltcG9ydCAndHlwb2dyYXBoeS90eXBvZ3JhcGh5JztcblxuLy8gR3JpZHNcbkBpbXBvcnQgJ2dyaWQvZ3JpZCc7XG5AaW1wb3J0ICd4eS1ncmlkL3h5LWdyaWQnO1xuLy8gR2VuZXJpYyBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbi1ncm91cCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Nsb3NlLWJ1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2xhYmVsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcHJvZ3Jlc3MtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2xpZGVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3dpdGNoJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFibGUnO1xuLy8gQmFzaWMgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9iYWRnZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2JyZWFkY3J1bWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FsbG91dCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhcmQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3BhZ2luYXRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy90b29sdGlwJztcblxuLy8gQ29udGFpbmVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS1vYmplY3QnO1xuQGltcG9ydCAnY29tcG9uZW50cy9vcmJpdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Jlc3BvbnNpdmUtZW1iZWQnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGh1bWJuYWlsJztcbi8vIE1lbnUtYmFzZWQgY29udGFpbmVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudS1pY29uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uLW1lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcmlsbGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bi1tZW51JztcblxuLy8gTGF5b3V0IGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb2ZmLWNhbnZhcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3JldmVhbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N0aWNreSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RpdGxlLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RvcC1iYXInO1xuXG4vLyBIZWxwZXJzXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zsb2F0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxleCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Zpc2liaWxpdHknO1xuQGltcG9ydCAncHJvdG90eXBlL3Byb3RvdHlwZSc7XG5cblxuQG1peGluIGZvdW5kYXRpb24tZXZlcnl0aGluZyhcbiAgJGZsZXg6IHRydWUsXG4gICRwcm90b3R5cGU6IGZhbHNlXG4pIHtcbiAgQGlmICRmbGV4IHtcbiAgICAkZ2xvYmFsLWZsZXhib3g6IHRydWUgIWdsb2JhbDtcbiAgfVxuXG4gIC8vIEdsb2JhbCBzdHlsZXNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm1zO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXR5cG9ncmFwaHk7XG5cbiAgLy8gR3JpZHNcbiAgQGlmIG5vdCAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1ncmlkO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaWYgJHh5LWdyaWQge1xuICAgICAgQGluY2x1ZGUgZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXM7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1ncmlkO1xuICAgIH1cbiAgfVxuXG4gIC8vIEdlbmVyaWMgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b24tZ3JvdXA7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWxhYmVsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb2dyZXNzLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zbGlkZXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3dpdGNoO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYmxlO1xuICAvLyBCYXNpYyBjb21wb25lbnRzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYmFkZ2U7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnJlYWRjcnVtYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FsbG91dDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYXJkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXBhZ2luYXRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9vbHRpcDtcblxuICAvLyBDb250YWluZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vcmJpdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGh1bWJuYWlsO1xuICAvLyBNZW51LWJhc2VkIGNvbnRhaW5lcnNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnUtaWNvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bi1tZW51O1xuXG4gIC8vIExheW91dCBjb21wb25lbnRzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb2ZmLWNhbnZhcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXZlYWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3RpY2t5O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRpdGxlLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b3AtYmFyO1xuXG4gIC8vIEhlbHBlcnNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzO1xuICBAaWYgJGZsZXggeyBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlczsgfVxuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcztcbiAgQGlmICRwcm90b3R5cGUgeyBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb3RvdHlwZS1jbGFzc2VzOyB9XG59XG4iLCJAbWl4aW4gZm91bmRhdGlvbi1ub3JtYWxpemUoKSB7XG4gIC8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuICAvLyBEb2N1bWVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG5cbiAgaHRtbCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDFcbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcbiAgfVxuXG4gIC8vIFNlY3Rpb25zXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAgLy8gYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cblxuICBoMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbiAgfVxuXG4gIC8vIEdyb3VwaW5nIGNvbnRlbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAvLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cblxuICBociB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDFcbiAgICBoZWlnaHQ6IDA7IC8vIDFcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMlxuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHByZSB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gICAgZm9udC1zaXplOiAxZW07IC8vIDJcbiAgfVxuXG4gIC8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLy8gMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAgLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cblxuICBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLy8gMVxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvLyAyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuXG4gIGIsXG4gIHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBjb2RlLFxuICBrYmQsXG4gIHNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cblxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiA4MCU7XG4gIH1cblxuICAvLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgLy8gYWxsIGJyb3dzZXJzLlxuXG4gIHN1YixcbiAgc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgc3ViIHtcbiAgICBib3R0b206IC0wLjI1ZW07XG4gIH1cblxuICBzdXAge1xuICAgIHRvcDogLTAuNWVtO1xuICB9XG5cbiAgLy8gRW1iZWRkZWQgY29udGVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG5cbiAgaW1nIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIH1cblxuICAvLyBGb3Jtc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG5cbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvLyAxXG4gICAgZm9udC1zaXplOiAxMDAlOyAvLyAxXG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDFcbiAgICBtYXJnaW46IDA7IC8vIDJcbiAgfVxuXG4gIC8vIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAvLyAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuXG4gIGJ1dHRvbixcbiAgaW5wdXQgeyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgLy8gMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuXG4gIGJ1dHRvbixcbiAgc2VsZWN0IHsgLy8gMVxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cblxuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuXG4gIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cblxuICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuXG4gIGZpZWxkc2V0IHtcbiAgICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gIC8vIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgLy8gICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgbGVnZW5kIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMVxuICAgIG1heC13aWR0aDogMTAwJTsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDNcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvLyAxXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuXG4gIHByb2dyZXNzIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cblxuICB0ZXh0YXJlYSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuXG4gIFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBwYWRkaW5nOiAwOyAvLyAyXG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG5cbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG5cbiAgW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAxXG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDJcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cblxuICBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuXG4gIDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG4gICAgZm9udDogaW5oZXJpdDsgLy8gMlxuICB9XG5cbiAgLy8gSW50ZXJhY3RpdmVcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuXG4gIGRldGFpbHMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgfVxuXG4gIC8vIE1pc2NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG5cbiAgdGVtcGxhdGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cblxuICBbaGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIG5vLWNvbG9yLWxpdGVyYWxzLCBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4vLy8vXG5cbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG5cbi8vLyBGb250IHNpemUgYXR0cmlidXRlIGFwcGxpZWQgdG8gYDxodG1sPmAgYW5kIGA8Ym9keT5gLiBXZSB1c2UgMTAwJSBieSBkZWZhdWx0IHNvIHRoZSB2YWx1ZSBpcyBpbmhlcml0ZWQgZnJvbSB0aGUgdXNlcidzIGJyb3dzZXIgc2V0dGluZ3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB3aWR0aCBvZiB5b3VyIHNpdGUuIFVzZWQgYnkgdGhlIGdyaWQgdG8gZGV0ZXJtaW5lIHJvdyB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgYWxsIHR5cGUuIGAkZ2xvYmFsLWxpbmVoZWlnaHRgIGlzIDI0cHggd2hpbGUgYCRnbG9iYWwtZm9udC1zaXplYCBpcyAxNnB4XG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNSAhZGVmYXVsdDtcblxuLy8vIENvbG9ycyB1c2VkIGZvciBidXR0b25zLCBjYWxsb3V0cywgbGlua3MsIGV0Yy4gVGhlcmUgbXVzdCBhbHdheXMgYmUgYSBjb2xvciBjYWxsZWQgYHByaW1hcnlgLlxuLy8vIEB0eXBlIE1hcFxuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAjMTc3OWJhLFxuICBzZWNvbmRhcnk6ICM3Njc2NzYsXG4gIHN1Y2Nlc3M6ICMzYWRiNzYsXG4gIHdhcm5pbmc6ICNmZmFlMDAsXG4gIGFsZXJ0OiAjY2M0YjM3LFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGxpZ2h0IGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsaWdodC1ncmF5OiAjZTZlNmU2ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbWVkaXVtIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRtZWRpdW0tZ3JheTogI2NhY2FjYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGRhcmsgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRhcmstZ3JheTogIzhhOGE4YSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGJsYWNrIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxhY2s6ICMwYTBhMGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciB3aGl0ZSB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHdoaXRlOiAjZmVmZWZlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBMaXN0XG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgYW50aWFsaWFzZWQgdHlwZSwgdXNpbmcgdGhlIGAtd2Via2l0LWZvbnQtc21vb3RoaW5nYCBhbmQgYC1tb3otb3N4LWZvbnQtc21vb3RoaW5nYCBDU1MgcHJvcGVydGllcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBtYXJnaW4gb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBhZGRpbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwb3NpdGlvbmluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wb3NpdGlvbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBub3JtYWwgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBib2xkIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gQ2FuIGJlIG92ZXJ3cml0dGVuIGF0IGluZGl2aWR1YWwgbWVudSBjb21wb25lbnQgbGV2ZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBOZXN0ZWQgbWFyZ2luIGZvciBzdWJtZW51LlxuJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIHRoZSB0ZXh0IGRpcmVjdGlvbiBvZiB0aGUgQ1NTLiBDYW4gYmUgZWl0aGVyIGBsdHJgIG9yIGBydGxgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0ciAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBmb3IgY29tcG9uZW50cyB0aGF0IHN1cHBvcnQgaXQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlZCByZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBwcm90b3R5cGVzIGlmIGFwcGxpY2FibGVcbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50czogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCdXR0b24gY3Vyc29yJ3MgdmFsdWUsIGBhdXRvYCBieSBkZWZhdWx0XG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvICFkZWZhdWx0O1xuXG5AaWYgbm90IG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgQGVycm9yICdJbiAkZm91bmRhdGlvbi1wYWxldHRlLCB5b3UgbXVzdCBoYXZlIGEgY29sb3IgbmFtZWQgXCJwcmltYXJ5XCIuJztcbn1cblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIHRleHQgZGlyZWN0aW9uXG4kZ2xvYmFsLWxlZnQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCByaWdodCwgbGVmdCk7XG4kZ2xvYmFsLXJpZ2h0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgbGVmdCwgcmlnaHQpO1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZSB0aGF0IGNvbnRhaW5zIHRoZSBmbGV4IGp1c3RpZnlpbmcgb3B0aW9uc1xuJC16Zi1mbGV4LWp1c3RpZnk6IC16Zi1mbGV4LWp1c3RpZnkoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbik7XG5cbi8vLyBHbG9iYWwgdG9sZXJhbmNlIGZvciBjb2xvciBwaWNrIGNvbnRyYXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMCAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIGNvbG9yc1xuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzIHtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1ub3JtYWxpemU7XG5cbiAgLy8gVGhlc2Ugc3R5bGVzIGFyZSBhcHBsaWVkIHRvIGEgPG1ldGE+IHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0XG4gIC5mb3VuZGF0aW9uLW1xIHtcbiAgICBmb250LWZhbWlseTogJyN7LXpmLWJwLXNlcmlhbGl6ZSgkYnJlYWtwb2ludHMpfSc7XG4gIH1cblxuICBodG1sIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBTZXQgYm94LXNpemluZyBnbG9iYWxseSB0byBoYW5kbGUgcGFkZGluZyBhbmQgYm9yZGVyIHdpZHRoc1xuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gRGVmYXVsdCBib2R5IHN0eWxlc1xuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuXG4gICAgQGlmICgkYm9keS1hbnRpYWxpYXNlZCkge1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgLy8gR2V0IHJpZCBvZiBnYXAgdW5kZXIgaW1hZ2VzIGJ5IG1ha2luZyB0aGVtIGRpc3BsYXk6IGlubGluZS1ibG9jazsgYnkgZGVmYXVsdFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgLy8gR3JpZCBkZWZhdWx0cyB0byBnZXQgaW1hZ2VzIGFuZCBlbWJlZHMgdG8gd29yayBwcm9wZXJseVxuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYztcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSB0ZXh0YXJlYSB0YWtlcyBvbiBoZWlnaHQgYXV0b21hdGljYWxseVxuICB0ZXh0YXJlYSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBNYWtlIHNlbGVjdCBlbGVtZW50cyBhcmUgMTAwJSB3aWR0aCBieSBkZWZhdWx0XG4gIHNlbGVjdCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIFN0eWxlcyBHb29nbGUgTWFwcyBhbmQgTWFwUXVlc3QgZW1iZWRzIHByb3Blcmx5XG4gIC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8taWRzXG4gIC5tYXBfY2FudmFzLFxuICAubXFhLWRpc3BsYXkge1xuICAgIGltZyxcbiAgICBlbWJlZCxcbiAgICBvYmplY3Qge1xuICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgPGJ1dHRvbj4gc3R5bGVzIGNyZWF0ZWQgYnkgbW9zdCBicm93c2Vyc1xuICBidXR0b24ge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGN1cnNvcjogJGdsb2JhbC1idXR0b24tY3Vyc29yO1xuICB9XG5cbiAgLy8gUHJldmVudCB0ZXh0IG92ZXJmbG93IG9uIHByZVxuICBwcmUge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgLy8gTWFrZSByZXNldCBpbmhlcml0IGZvbnQtZmFtaWx5IGluc3RlYWQgb2Ygc2V0dGluZ3Mgc2Fucy1zZXJpZlxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBJbnRlcm5hbCBjbGFzc2VzIHRvIHNob3cvaGlkZSBlbGVtZW50cyBpbiBKYXZhU2NyaXB0XG4gIC5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmlzLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyAgRm91bmRhdGlvbiBmb3IgU2l0ZXMgU2V0dGluZ3Ncbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cbi8vICBUYWJsZSBvZiBDb250ZW50czpcbi8vXG4vLyAgIDEuIEdsb2JhbFxuLy8gICAyLiBCcmVha3BvaW50c1xuLy8gICAzLiBUaGUgR3JpZFxuLy8gICA0LiBCYXNlIFR5cG9ncmFwaHlcbi8vICAgNS4gVHlwb2dyYXBoeSBIZWxwZXJzXG4vLyAgIDYuIEFiaWRlXG4vLyAgIDcuIEFjY29yZGlvblxuLy8gICA4LiBBY2NvcmRpb24gTWVudVxuLy8gICA5LiBCYWRnZVxuLy8gIDEwLiBCcmVhZGNydW1ic1xuLy8gIDExLiBCdXR0b25cbi8vICAxMi4gQnV0dG9uIEdyb3VwXG4vLyAgMTMuIENhbGxvdXRcbi8vICAxNC4gQ2FyZFxuLy8gIDE1LiBDbG9zZSBCdXR0b25cbi8vICAxNi4gRHJpbGxkb3duXG4vLyAgMTcuIERyb3Bkb3duXG4vLyAgMTguIERyb3Bkb3duIE1lbnVcbi8vICAxOS4gRmxleGJveCBVdGlsaXRpZXNcbi8vICAyMC4gRm9ybXNcbi8vICAyMS4gTGFiZWxcbi8vICAyMi4gTWVkaWEgT2JqZWN0XG4vLyAgMjMuIE1lbnVcbi8vICAyNC4gTWV0ZXJcbi8vICAyNS4gT2ZmLWNhbnZhc1xuLy8gIDI2LiBPcmJpdFxuLy8gIDI3LiBQYWdpbmF0aW9uXG4vLyAgMjguIFByb2dyZXNzIEJhclxuLy8gIDI5LiBQcm90b3R5cGUgQXJyb3dcbi8vICAzMC4gUHJvdG90eXBlIEJvcmRlci1Cb3hcbi8vICAzMS4gUHJvdG90eXBlIEJvcmRlci1Ob25lXG4vLyAgMzIuIFByb3RvdHlwZSBCb3JkZXJlZFxuLy8gIDMzLiBQcm90b3R5cGUgRGlzcGxheVxuLy8gIDM0LiBQcm90b3R5cGUgRm9udC1TdHlsaW5nXG4vLyAgMzUuIFByb3RvdHlwZSBMaXN0LVN0eWxlLVR5cGVcbi8vICAzNi4gUHJvdG90eXBlIE92ZXJmbG93XG4vLyAgMzcuIFByb3RvdHlwZSBQb3NpdGlvblxuLy8gIDM4LiBQcm90b3R5cGUgUm91bmRlZFxuLy8gIDM5LiBQcm90b3R5cGUgU2VwYXJhdG9yXG4vLyAgNDAuIFByb3RvdHlwZSBTaGFkb3dcbi8vICA0MS4gUHJvdG90eXBlIFNpemluZ1xuLy8gIDQyLiBQcm90b3R5cGUgU3BhY2luZ1xuLy8gIDQzLiBQcm90b3R5cGUgVGV4dC1EZWNvcmF0aW9uXG4vLyAgNDQuIFByb3RvdHlwZSBUZXh0LVRyYW5zZm9ybWF0aW9uXG4vLyAgNDUuIFByb3RvdHlwZSBUZXh0LVV0aWxpdGllc1xuLy8gIDQ2LiBSZXNwb25zaXZlIEVtYmVkXG4vLyAgNDcuIFJldmVhbFxuLy8gIDQ4LiBTbGlkZXJcbi8vICA0OS4gU3dpdGNoXG4vLyAgNTAuIFRhYmxlXG4vLyAgNTEuIFRhYnNcbi8vICA1Mi4gVGh1bWJuYWlsXG4vLyAgNTMuIFRpdGxlIEJhclxuLy8gIDU0LiBUb29sdGlwXG4vLyAgNTUuIFRvcCBCYXJcbi8vICA1Ni4gWHkgR3JpZFxuXG5AaW1wb3J0ICd+Zm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvdXRpbCc7XG5cbi8vIDEuIEdsb2JhbFxuLy8gLS0tLS0tLS0tXG5cbiRnbG9iYWwtZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKTtcbiRnbG9iYWwtbGluZWhlaWdodDogMS41O1xuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAjRDUxRDY3LCAgICAgICAgICAgICAgIC8vIHBpbmtcbiAgcHJpbWFyeS1kYXJrZW46ICNCRjFBNUMsXG4gIHNlY29uZGFyeTogIzYxNkZBMCwgICAgICAgICAgICAgLy8gYmx1ZVxuICBzZWNvbmRhcnktZGFya2VuOiAjNTc2NDkwLFxuICB0ZXJ0aWFyeTogIzgxQkIyNywgICAgICAgICAgICAgIC8vIGdyZWVuXG4gIHRlcnRpYXJ5LWRhcmtlbjogIzczQTcyMyxcbiAgcXVhdGVybmFyeTogI0YyQkJEMSwgICAgICAgICAgICAvLyBsaWdodCBwaW5rXG5cbiAgc3VjY2VzczogIzc1QUQwMSxcbiAgd2FybmluZzogI0YzOTcyMSxcbiAgYWxlcnQ6ICNFQTI5NDEsXG4gIGFsZXJ0LWxpZ2h0ZW46ICNGREVBRUMsXG4pO1xuXG4kdGV4dDogIzE4MUIyNztcbiR0ZXh0LWxpZ2h0OiAjNTc2NDkwO1xuXG4kd2hpdGU6ICNGRkZGRkY7XG4kbGlnaHQtZ3JheTogI0Y1RjVGNTtcbiRtZWRpdW0tZ3JheTogI0NEQ0ZEODtcbiRkYXJrLWdyYXk6ICM3NDc4ODU7XG4kYmxhY2s6ICMyNzJDNDA7XG5cbiRncmFkaWVudC0xOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQgLGdldC1jb2xvcihzZWNvbmRhcnkpLCAkYmxhY2spO1xuJGdyYWRpZW50LTI6IGxpbmVhci1ncmFkaWVudChnZXQtY29sb3Ioc2Vjb25kYXJ5KSwgZ2V0LWNvbG9yKHByaW1hcnkpKTtcblxuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlO1xuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrO1xuJGJvZHktZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnLCAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZTtcbiRnbG9iYWwtbWFyZ2luOiAxcmVtO1xuJGdsb2JhbC1wYWRkaW5nOiAxcmVtO1xuJGdsb2JhbC1wb3NpdGlvbjogMXJlbTtcbiRnbG9iYWwtd2VpZ2h0LWxpZ2h0OiAzMDA7XG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbDtcbiRnbG9iYWwtd2VpZ2h0LW1lZGl1bTogNTAwO1xuJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkOiA2MDA7XG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkO1xuJGdsb2JhbC1yYWRpdXM6IDRweDtcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMC44cmVtO1xuJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW46IDFyZW07XG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHI7XG4kZ2xvYmFsLWZsZXhib3g6IHRydWU7XG4kZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50czogZmFsc2U7XG4kZ2xvYmFsLWJ1dHRvbi1jdXJzb3I6IGF1dG87XG4kZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlOiAwO1xuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlO1xuXG5AaW5jbHVkZSBhZGQtZm91bmRhdGlvbi1jb2xvcnM7XG5cbi8vIDIuIEJyZWFrcG9pbnRzXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kYnJlYWtwb2ludHM6IChcbiAgc21hbGw6IDAsXG4gIGlwaG9uZTU6IDMyMHB4LFxuICBtZWRpdW06IDY0MHB4LFxuICB4bWVkaXVtOiA4MDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbik7XG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2U7XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKTtcblxuLy8gMy4gVGhlIEdyaWRcbi8vIC0tLS0tLS0tLS0tXG5cbiRncmlkLXJvdy13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRncmlkLWNvbHVtbi1jb3VudDogMTI7XG4kZ3JpZC1jb2x1bW4tZ3V0dGVyOiAoXG4gIHNtYWxsOiAzMHB4LFxuICBtZWRpdW06IDMwcHgsXG4pO1xuJGdyaWQtY29sdW1uLWFsaWduLWVkZ2U6IHRydWU7XG4kZ3JpZC1jb2x1bW4tYWxpYXM6ICdjb2x1bW5zJztcbiRibG9jay1ncmlkLW1heDogODtcblxuLy8gNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS1cblxuJGhlYWRlci1mb250LWZhbWlseTogJ1NwZWNpYWwgRWxpdGUnLCBjdXJzaXZlO1xuJGhlYWRlci1mb250LXdlaWdodDogNDAwO1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWw7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiRoZWFkZXItY29sb3I6IGdldC1jb2xvcihzZWNvbmRhcnkpO1xuJGhlYWRlci1saW5laGVpZ2h0OiAxLjM7XG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNiksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAyMiksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMzYpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMzIpLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMjgpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjIpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuKTtcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRzbWFsbC1mb250LXNpemU6IDg4JTtcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5O1xuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjY7XG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRjb2RlLWNvbG9yOiAkYmxhY2s7XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKTtcbiRhbmNob3ItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGFuY2hvci1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSk7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lO1xuJGhyLXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvO1xuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuJGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMjVyZW07XG4kbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW46IDEuMjVyZW07XG4kZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTogMXJlbTtcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiRibG9ja3F1b3RlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KTtcbiRibG9ja3F1b3RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRjaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnO1xuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrO1xuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApO1xuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjaztcblxuLy8gNS4gVHlwb2dyYXBoeSBIZWxwZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjU7XG4kbGVhZC1saW5laGVpZ2h0OiAxLjY7XG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNDtcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXk7XG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbTtcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuJHN0YXQtZm9udC1zaXplOiAyLjVyZW07XG5cbi8vIDYuIEFiaWRlXG4vLyAtLS0tLS0tLVxuXG4kYWJpZGUtaW5wdXRzOiB0cnVlO1xuJGFiaWRlLWxhYmVsczogdHJ1ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCk7XG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpO1xuJGlucHV0LWVycm9yLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXG4vLyA3LiBBY2NvcmRpb25cbi8vIC0tLS0tLS0tLS0tLVxuXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRhY2NvcmRpb24tcGx1c21pbnVzOiB0cnVlO1xuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRhY2NvcmRpb24taXRlbS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtO1xuXG4vLyA4LiBBY2NvcmRpb24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGFjY29yZGlvbm1lbnUtcGFkZGluZztcbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZTtcbiRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZDogbnVsbDtcbiRhY2NvcmRpb25tZW51LWJvcmRlcjogbnVsbDtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQ6IG51bGw7XG4kYWNjb3JkaW9uLXN1Ym1lbnUtdG9nZ2xlLWJvcmRlcjogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg6IDQwcHg7XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1oZWlnaHQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoO1xuJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xuXG4vLyA5LiBCYWRnZVxuLy8gLS0tLS0tLS1cblxuJGJhZGdlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJhZGdlLWNvbG9yOiAkd2hpdGU7XG4kYmFkZ2UtY29sb3ItYWx0OiAkYmxhY2s7XG4kYmFkZ2UtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRiYWRnZS1wYWRkaW5nOiAwLjNlbTtcbiRiYWRnZS1taW53aWR0aDogMi4xZW07XG4kYmFkZ2UtZm9udC1zaXplOiAwLjZyZW07XG5cbi8vIDEwLiBCcmVhZGNydW1ic1xuLy8gLS0tLS0tLS0tLS0tLS0tXG5cbiRicmVhZGNydW1icy1tYXJnaW46IHJlbS1jYWxjKDEwKSAwO1xuJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjogJGRhcmstZ3JheTtcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC41cmVtO1xuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiBmYWxzZTtcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvcjogdHJ1ZTtcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtOiAnXFxFOTAzJztcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bDogJ1xcXFwnO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG5cbi8vIDExLiBCdXR0b25cbi8vIC0tLS0tLS0tLS1cblxuJGJ1dHRvbi1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW07XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XG4kYnV0dG9uLWZpbGw6IHNvbGlkO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LWNvbG9yO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xuJGJ1dHRvbi1jb2xvcjogJHdoaXRlO1xuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjaztcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRidXR0b24taG9sbG93LWJvcmRlci13aWR0aDogMXB4O1xuJGJ1dHRvbi1zaXplczogKFxuICB0aW55OiAwLjY1cmVtLFxuICBzbWFsbDogMC43cmVtLFxuICBkZWZhdWx0OiAwLjhyZW0sXG4gIGxhcmdlOiAwLjlyZW0sXG4gIGh1Z2U6IDEuMHJlbSxcbik7XG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlO1xuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlO1xuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiRidXR0b24tcmVzcG9uc2l2ZS1leHBhbmRlZDogZmFsc2U7XG5cbi8vIDEyLiBCdXR0b24gR3JvdXBcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbTtcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHg7XG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6ICcuYnV0dG9uJztcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2O1xuJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoOiB0cnVlO1xuXG4vLyAxMy4gQ2FsbG91dFxuLy8gLS0tLS0tLS0tLS1cblxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSU7XG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCBnZXQtY29sb3IoYWxlcnQpO1xuJGNhbGxvdXQtbWFyZ2luOiAxcmVtIDAgMXJlbSAwO1xuJGNhbGxvdXQtcGFkZGluZzogMXJlbTtcbiRjYWxsb3V0LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kY2FsbG91dC1mb250LWNvbG9yLWFsdDogJGJvZHktYmFja2dyb3VuZDtcbiRjYWxsb3V0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kY2FsbG91dC1saW5rLXRpbnQ6IDMwJTtcblxuLy8gMTQuIENhcmRcbi8vIC0tLS0tLS0tXG5cbiRjYXJkLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRjYXJkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kY2FyZC1kaXZpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGNhcmQtYm9yZGVyOiBub25lO1xuJGNhcmQtc2hhZG93OiAwIDJweCA0cHggMCByZ2JhKDAsMCwwLDAuMTUpO1xuJGNhcmQtYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kY2FyZC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kY2FyZC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG5cbi8vIDE1LiBDbG9zZSBCdXR0b25cbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3A7XG4kY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw6IChcbiAgc21hbGw6IDAuNjZyZW0sXG4gIG1lZGl1bTogMXJlbSxcbik7XG4kY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsOiAoXG4gIHNtYWxsOiAwLjMzZW0sXG4gIG1lZGl1bTogMC41cmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXG4gIHNtYWxsOiAxLjVlbSxcbiAgbWVkaXVtOiAyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDE7XG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXk7XG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjaztcblxuLy8gMTYuIERyaWxsZG93blxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kZHJpbGxkb3duLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7XG4kZHJpbGxkb3duLWFycm93czogdHJ1ZTtcbiRkcmlsbGRvd24tcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kZHJpbGxkb3duLW5lc3RlZC1tYXJnaW46IDA7XG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcmlsbGRvd24tc3VibWVudS1wYWRkaW5nOiAkZHJpbGxkb3duLXBhZGRpbmc7XG4kZHJpbGxkb3duLXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kZHJpbGxkb3duLWFycm93LXNpemU6IDZweDtcblxuLy8gMTcuIERyb3Bkb3duXG4vLyAtLS0tLS0tLS0tLS1cblxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW07XG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtO1xuJGRyb3Bkb3duLXdpZHRoOiAzMDBweDtcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGRyb3Bkb3duLXNpemVzOiAoXG4gIHRpbnk6IDEwMHB4LFxuICBzbWFsbDogMjAwcHgsXG4gIGxhcmdlOiA0MDBweCxcbik7XG5cbi8vIDE4LiBEcm9wZG93biBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd25tZW51LWFycm93czogZmFsc2U7XG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xuJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nOiAxLjVyZW07XG4kZHJvcGRvd25tZW51LW1pbi13aWR0aDogNDBweDtcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDtcbiRkcm9wZG93bm1lbnUtcGFkZGluZzogcmVtLWNhbGMoMzIpIHJlbS1jYWxjKDE1KTtcbiRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbjogMDtcbiRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nOiAwLjlyZW0gMC44cmVtIDAuOXJlbSAwLjhyZW07XG4kZHJvcGRvd25tZW51LWJvcmRlcjogMDtcbiRkcm9wZG93bi1tZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGU7XG4kZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcblxuLy8gMTkuIEZsZXhib3ggVXRpbGl0aWVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50OiA2O1xuJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50czogdHJ1ZTtcblxuLy8gMjAuIEZvcm1zXG4vLyAtLS0tLS0tLS1cblxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKTtcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKTtcbiRmb3JtLXNwYWNpbmc6IHJlbS1jYWxjKDI1KTtcbiRoZWxwdGV4dC1jb2xvcjogJGJsYWNrO1xuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYztcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjaztcbiRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1wcmVmaXgtcGFkZGluZzogMXJlbTtcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2s7XG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44O1xuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kc2VsZWN0LXRyaWFuZ2xlLWNvbG9yOiAkd2hpdGU7XG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kaW5wdXQtY29sb3I6ICRibGFjaztcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJGRhcmstZ3JheTtcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdDtcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGlucHV0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4kaW5wdXQtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlO1xuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRzZWNvbmRhcnktY29sb3I7XG4kaW5wdXQtcGFkZGluZzogcmVtLWNhbGMoMTQpO1xuJGlucHV0LXNoYWRvdzogbm9uZTtcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCAwcHggJHNlY29uZGFyeS1jb2xvcjtcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZTtcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDIxLiBMYWJlbFxuLy8gLS0tLS0tLS0tXG5cbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRsYWJlbC1jb2xvcjogJHdoaXRlO1xuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrO1xuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XG4kbGFiZWwtcmFkaXVzOiAxMDBweDtcblxuLy8gMjIuIE1lZGlhIE9iamVjdFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNTApO1xuJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZzogcmVtLWNhbGMoMjApO1xuJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ6IDEwMCU7XG5cbi8vIDIzLiBNZW51XG4vLyAtLS0tLS0tLVxuXG4kbWVudS1tYXJnaW46IDA7XG4kbWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjtcbiRtZW51LWl0ZW1zLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuJG1lbnUtc2ltcGxlLW1hcmdpbjogMnJlbTtcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGU7XG4kbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiB0cmFuc3BhcmVudDtcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbTtcbiRtZW51LXN0YXRlLWJhY2stY29tcGF0OiB0cnVlO1xuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWU7XG4kbWVudS1pY29ucy1iYWNrLWNvbXBhdDogdHJ1ZTtcblxuLy8gMjQuIE1ldGVyXG4vLyAtLS0tLS0tLS1cblxuJG1ldGVyLWhlaWdodDogMXJlbTtcbiRtZXRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJG1ldGVyLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRtZXRlci1maWxsLWdvb2Q6ICRzdWNjZXNzLWNvbG9yO1xuJG1ldGVyLWZpbGwtbWVkaXVtOiAkd2FybmluZy1jb2xvcjtcbiRtZXRlci1maWxsLWJhZDogJGFsZXJ0LWNvbG9yO1xuXG4vLyAyNS4gT2ZmLWNhbnZhc1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJG9mZmNhbnZhcy1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pO1xuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pO1xuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRvZmZjYW52YXMtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgMC43KTtcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemU6IDIwcHg7XG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpO1xuJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleDogMTE7XG4kb2ZmY2FudmFzLXB1c2gtemluZGV4OiAxMjtcbiRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6IDEzO1xuJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4OiAxMjtcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGg6IDAuNXM7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nOiBlYXNlO1xuJG9mZmNhbnZhcy1maXhlZC1yZXZlYWw6IHRydWU7XG4kb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMjUpO1xuJG1haW5jb250ZW50LWNsYXNzOiAnb2ZmLWNhbnZhcy1jb250ZW50JztcblxuLy8gMjYuIE9yYml0XG4vLyAtLS0tLS0tLS1cblxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlOiAkc2Vjb25kYXJ5LWNvbG9yO1xuJG9yYml0LWJ1bGxldC1kaWFtZXRlcjogMS4ycmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW46IDAuMXJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luLXRvcDogMC44cmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW4tYm90dG9tOiAwLjhyZW07XG4kb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC41KTtcbiRvcmJpdC1jYXB0aW9uLXBhZGRpbmc6IDFyZW07XG4kb3JiaXQtY29udHJvbC1iYWNrZ3JvdW5kLWhvdmVyOiByZ2JhKCRibGFjaywgMC41KTtcbiRvcmJpdC1jb250cm9sLXBhZGRpbmc6IDFyZW07XG4kb3JiaXQtY29udHJvbC16aW5kZXg6IDEwO1xuXG4vLyAyNy4gUGFnaW5hdGlvblxuLy8gLS0tLS0tLS0tLS0tLS1cblxuJHBhZ2luYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRibGFjaztcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCk7XG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDEpO1xuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3I7XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6ICR3aGl0ZTtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO1xuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2U7XG4kcGFnaW5hdGlvbi1hcnJvd3M6IHRydWU7XG5cbi8vIDI4LiBQcm9ncmVzcyBCYXJcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJHByb2dyZXNzLWhlaWdodDogcmVtLWNhbGMoMTApO1xuJHByb2dyZXNzLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRwcm9ncmVzcy1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRwcm9ncmVzcy1tZXRlci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRwcm9ncmVzcy1yYWRpdXM6IDA7XG5cbi8vIDI5LiBQcm90b3R5cGUgQXJyb3dcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1hcnJvdy1kaXJlY3Rpb25zOiAoXG4gIGRvd24sXG4gIHVwLFxuICByaWdodCxcbiAgbGVmdFxuKTtcbiRwcm90b3R5cGUtYXJyb3ctc2l6ZTogMC40Mzc1cmVtO1xuJHByb3RvdHlwZS1hcnJvdy1jb2xvcjogJGJsYWNrO1xuXG4vLyAzMC4gUHJvdG90eXBlIEJvcmRlci1Cb3hcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlci1ib3gtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuXG4vLyAzMS4gUHJvdG90eXBlIEJvcmRlci1Ob25lXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYm9yZGVyLW5vbmUtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuXG4vLyAzMi4gUHJvdG90eXBlIEJvcmRlcmVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYm9yZGVyZWQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3JkZXItd2lkdGg6IHJlbS1jYWxjKDEpO1xuJHByb3RvdHlwZS1ib3JkZXItdHlwZTogc29saWQ7XG4kcHJvdG90eXBlLWJvcmRlci1jb2xvcjogJG1lZGl1bS1ncmF5O1xuXG4vLyAzMy4gUHJvdG90eXBlIERpc3BsYXlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWRpc3BsYXktYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1kaXNwbGF5OiAoXG4gIGlubGluZSxcbiAgaW5saW5lLWJsb2NrLFxuICBibG9jayxcbiAgdGFibGUsXG4gIHRhYmxlLWNlbGxcbik7XG5cbi8vIDM0LiBQcm90b3R5cGUgRm9udC1TdHlsaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWZvbnQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS13aWRlLWxldHRlci1zcGFjaW5nOiByZW0tY2FsYyg0KTtcbiRwcm90b3R5cGUtZm9udC1ub3JtYWw6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRwcm90b3R5cGUtZm9udC1ib2xkOiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXG4vLyAzNS4gUHJvdG90eXBlIExpc3QtU3R5bGUtVHlwZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1saXN0LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc3R5bGUtdHlwZS11bm9yZGVyZWQ6IChcbiAgZGlzYyxcbiAgY2lyY2xlLFxuICBzcXVhcmVcbik7XG4kcHJvdG90eXBlLXN0eWxlLXR5cGUtb3JkZXJlZDogKFxuICBkZWNpbWFsLFxuICBsb3dlci1hbHBoYSxcbiAgbG93ZXItbGF0aW4sXG4gIGxvd2VyLXJvbWFuLFxuICB1cHBlci1hbHBoYSxcbiAgdXBwZXItbGF0aW4sXG4gIHVwcGVyLXJvbWFuXG4pO1xuXG4vLyAzNi4gUHJvdG90eXBlIE92ZXJmbG93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtb3ZlcmZsb3ctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1vdmVyZmxvdzogKFxuICB2aXNpYmxlLFxuICBoaWRkZW4sXG4gIHNjcm9sbFxuKTtcblxuLy8gMzcuIFByb3RvdHlwZSBQb3NpdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXBvc2l0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtcG9zaXRpb246IChcbiAgc3RhdGljLFxuICByZWxhdGl2ZSxcbiAgYWJzb2x1dGUsXG4gIGZpeGVkXG4pO1xuJHByb3RvdHlwZS1wb3NpdGlvbi16LWluZGV4OiA5NzU7XG5cbi8vIDM4LiBQcm90b3R5cGUgUm91bmRlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtcm91bmRlZC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDMpO1xuXG4vLyAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zZXBhcmF0b3ItYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItYWxpZ246IGNlbnRlcjtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWhlaWdodDogcmVtLWNhbGMoMik7XG4kcHJvdG90eXBlLXNlcGFyYXRvci13aWR0aDogM3JlbTtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItbWFyZ2luLXRvcDogJGdsb2JhbC1tYXJnaW47XG5cbi8vIDQwLiBQcm90b3R5cGUgU2hhZG93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXNoYWRvdy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWJveC1zaGFkb3c6IDAgMnB4IDVweCAwIHJnYmEoMCwwLDAsLjE2KSxcbiAgICAgICAgICAgICAgICAgICAgICAgMCAycHggMTBweCAwIHJnYmEoMCwwLDAsLjEyKTtcblxuLy8gNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2l6aW5nLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc2l6aW5nOiAoXG4gIHdpZHRoLFxuICBoZWlnaHRcbik7XG4kcHJvdG90eXBlLXNpemVzOiAoXG4gIDI1OiAyNSUsXG4gIDUwOiA1MCUsXG4gIDc1OiA3NSUsXG4gIDEwMDogMTAwJVxuKTtcblxuLy8gNDIuIFByb3RvdHlwZSBTcGFjaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zcGFjaW5nLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc3BhY2Vycy1jb3VudDogMztcblxuLy8gNDMuIFByb3RvdHlwZSBUZXh0LURlY29yYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtZGVjb3JhdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtZGVjb3JhdGlvbjogKFxuICBvdmVybGluZSxcbiAgdW5kZXJsaW5lLFxuICBsaW5lLXRocm91Z2gsXG4pO1xuXG4vLyA0NC4gUHJvdG90eXBlIFRleHQtVHJhbnNmb3JtYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXRyYW5zZm9ybWF0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtdGV4dC10cmFuc2Zvcm1hdGlvbjogKFxuICBsb3dlcmNhc2UsXG4gIHVwcGVyY2FzZSxcbiAgY2FwaXRhbGl6ZVxuKTtcblxuLy8gNDUuIFByb3RvdHlwZSBUZXh0LVV0aWxpdGllc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXV0aWxpdGllcy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXG4vLyA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zOiAoXG4gIGRlZmF1bHQ6IDQgYnkgMyxcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcbik7XG5cbi8vIDQ3LiBSZXZlYWxcbi8vIC0tLS0tLS0tLS1cblxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kcmV2ZWFsLXdpZHRoOiA2MDBweDtcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRyZXZlYWwtemluZGV4OiAxMDA1O1xuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KTtcblxuLy8gNDguIFNsaWRlclxuLy8gLS0tLS0tLS0tLVxuXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW07XG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuJHNsaWRlci1oZWlnaHQ6IDAuNXJlbTtcbiRzbGlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kc2xpZGVyLWZpbGwtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHNsaWRlci1oYW5kbGUtaGVpZ2h0OiAxLjRyZW07XG4kc2xpZGVyLWhhbmRsZS13aWR0aDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kc2xpZGVyLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kc2xpZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDQ5LiBTd2l0Y2hcbi8vIC0tLS0tLS0tLS1cblxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvcjtcbiRzd2l0Y2gtaGVpZ2h0OiAycmVtO1xuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtO1xuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW07XG4kc3dpdGNoLWhlaWdodC1sYXJnZTogMi41cmVtO1xuJHN3aXRjaC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHN3aXRjaC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xuJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtO1xuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcblxuLy8gNTAuIFRhYmxlXG4vLyAtLS0tLS0tLS1cblxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWJsZS1jb2xvci1zY2FsZTogNSU7XG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCk7XG4kdGFibGUtaG92ZXItc2NhbGU6IDIlO1xuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1pcy1zdHJpcGVkOiB0cnVlO1xuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtc3RyaXBlOiBldmVuO1xuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJHdoaXRlO1xuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2U7XG4kdGFibGUtc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xuXG4vLyA1MS4gVGFic1xuLy8gLS0tLS0tLS1cblxuJHRhYi1tYXJnaW46IDA7XG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXk7XG4kdGFiLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFiLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlO1xuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5O1xuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHRhYi1jb250ZW50LXBhZGRpbmc6IDFyZW07XG5cbi8vIDUyLiBUaHVtYm5haWxcbi8vIC0tLS0tLS0tLS0tLS1cblxuJHRodW1ibmFpbC1ib3JkZXI6IDRweCBzb2xpZCAkd2hpdGU7XG4kdGh1bWJuYWlsLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHRodW1ibmFpbC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yKTtcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpO1xuJHRodW1ibmFpbC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0O1xuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyA1My4gVGl0bGUgQmFyXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiR0aXRsZWJhci1iYWNrZ3JvdW5kOiAkYmxhY2s7XG4kdGl0bGViYXItY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1wYWRkaW5nOiAwLjVyZW07XG4kdGl0bGViYXItdGV4dC1mb250LXdlaWdodDogYm9sZDtcbiR0aXRsZWJhci1pY29uLWNvbG9yOiAkd2hpdGU7XG4kdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlcjogJG1lZGl1bS1ncmF5O1xuJHRpdGxlYmFyLWljb24tc3BhY2luZzogMC4yNXJlbTtcblxuLy8gNTQuIFRvb2x0aXBcbi8vIC0tLS0tLS0tLS0tXG5cbiRoYXMtdGlwLWN1cnNvcjogaGVscDtcbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogbm9uZTtcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiR0b29sdGlwLWNvbG9yOiAkYmxhY2s7XG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtO1xuJHRvb2x0aXAtbWF4LXdpZHRoOiByZW0tY2FsYyg2MDApO1xuJHRvb2x0aXAtZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuJHRvb2x0aXAtcGlwLXdpZHRoOiAwLjc1cmVtO1xuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjY7XG4kdG9vbHRpcC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyA1NS4gVG9wIEJhclxuLy8gLS0tLS0tLS0tLS1cblxuJHRvcGJhci1wYWRkaW5nOiAwLjVyZW07XG4kdG9wYmFyLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQ6IGdldC1jb2xvcihwcmltYXJ5KTtcbiR0b3BiYXItdGl0bGUtc3BhY2luZzogMC41cmVtIDFyZW0gMC41cmVtIDA7XG4kdG9wYmFyLWlucHV0LXdpZHRoOiAyMDBweDtcbiR0b3BiYXItdW5zdGFjay1icmVha3BvaW50OiBsYXJnZTtcblxuLy8gNTYuIFh5IEdyaWRcbi8vIC0tLS0tLS0tLS0tXG5cbiR4eS1ncmlkOiB0cnVlO1xuJGdyaWQtY29udGFpbmVyOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtY29sdW1uczogMTI7XG4kZ3JpZC1tYXJnaW4tZ3V0dGVyczogKFxuICBzbWFsbDogMjBweCxcbiAgbWVkaXVtOiAzMHB4XG4pO1xuJGdyaWQtcGFkZGluZy1ndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycztcbiRncmlkLWNvbnRhaW5lci1wYWRkaW5nOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnM7XG4kZ3JpZC1jb250YWluZXItbWF4OiAkZ2xvYmFsLXdpZHRoO1xuJHh5LWJsb2NrLWdyaWQtbWF4OiA4O1xuXG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENyZWF0ZXMgYW4gaW5uZXIgYm94LXNoYWRvdyBmb3Igb25seSBvbmUgc2lkZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2lkZSAtIFNpZGUgdGhlIHNoYWRvdyBpcyBzdXBwb3NlZCB0byBhcHBlYXIuIENhbiBiZSBgdG9wYCwgYGxlZnRgLCBgcmlnaHRgIG9yIGBib3R0b21gLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc2l6ZSAtIFdpZHRoIGZvciB0aGUgdGFyZ2V0IHNpZGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3Igb2YgdGhlIHNoYWRvdy5cbkBtaXhpbiBpbm5lci1zaWRlLXNoYWRvdyhcbiAgJHNpZGU6IGJvdHRvbSxcbiAgJHNpemU6IDIwcHgsXG4gICRjb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpXG4pIHtcblxuICAkaGVscGVyOiByb3VuZCgkc2l6ZSAqIDAuNjUpO1xuXG4gIEBpZiAoJHNpZGUgPT0gdG9wKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAkaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGxlZnQpIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAkaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gcmlnaHQpIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAoLTEpKiRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBib3R0b20pIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICgtMSkqJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgQ1NTIHRyaWFuZ2xlLCB3aGljaCBjYW4gYmUgdXNlZCBmb3IgZHJvcGRvd24gYXJyb3dzLCBkcm9wZG93biBwaXBzLCBhbmQgbW9yZS4gVXNlIHRoaXMgbWl4aW4gaW5zaWRlIGEgYCY6OmJlZm9yZWAgb3IgYCY6OmFmdGVyYCBzZWxlY3RvciwgdG8gYXR0YWNoIHRoZSB0cmlhbmdsZSB0byBhbiBleGlzdGluZyBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0cmlhbmdsZS1zaXplIC0gV2lkdGggb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICR0cmlhbmdsZS1jb2xvciAtIENvbG9yIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0cmlhbmdsZS1kaXJlY3Rpb24gLSBEaXJlY3Rpb24gdGhlIHRyaWFuZ2xlIHBvaW50cy4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLlxuQG1peGluIGNzcy10cmlhbmdsZShcbiAgJHRyaWFuZ2xlLXNpemUsXG4gICR0cmlhbmdsZS1jb2xvcixcbiAgJHRyaWFuZ2xlLWRpcmVjdGlvblxuKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuXG4gIGJvcmRlcjogaW5zZXQgJHRyaWFuZ2xlLXNpemU7XG5cbiAgY29udGVudDogJyc7XG5cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGRvd24pIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSB1cCkge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHJpZ2h0KSB7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gbGVmdCkge1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBtZW51IGljb24gd2l0aCBhIHNldCB3aWR0aCwgaGVpZ2h0LCBudW1iZXIgb2YgYmFycywgYW5kIGNvbG9ycy4gVGhlIG1peGluIHVzZXMgdGhlIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiB0aGUgYmFycyB0byBkZXRlcm1pbmUgc3BhY2luZy4gPGRpdiBjbGFzcz1cImRvY3MtZXhhbXBsZS1idXJnZXJcIj48L2Rpdj5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yLWhvdmVyIFskZGFyay1ncmF5XSAtIENvbG9yIHRvIHVzZSB3aGVuIHRoZSBpY29uIGlzIGhvdmVyZWQgb3Zlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIFsyMHB4XSAtIFdpZHRoIG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkaGVpZ2h0IFsxNnB4XSAtIEhlaWdodCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdlaWdodCBbMnB4XSAtIEhlaWdodCBvZiBpbmRpdmlkdWFsIGJhcnMgaW4gdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXJzIFszXSAtIE51bWJlciBvZiBiYXJzIGluIHRoZSBpY29uLlxuQG1peGluIGhhbWJ1cmdlcihcbiAgJGNvbG9yOiAkYmxhY2ssXG4gICRjb2xvci1ob3ZlcjogJGRhcmstZ3JheSxcbiAgJHdpZHRoOiAyMHB4LFxuICAkaGVpZ2h0OiAxNnB4LFxuICAkd2VpZ2h0OiAycHgsXG4gICRiYXJzOiAzXG4pIHtcbiAgLy8gYm94LXNoYWRvdyBDU1Mgb3V0cHV0XG4gICRzaGFkb3c6ICgpO1xuICAkaG92ZXItc2hhZG93OiAoKTtcblxuICAvLyBTcGFjaW5nIGJldHdlZW4gYmFycyBpcyBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSB0b3RhbCBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgZWFjaCBiYXJcbiAgJHNwYWNpbmc6ICgkaGVpZ2h0IC0gKCR3ZWlnaHQgKiAkYmFycykpIC8gKCRiYXJzIC0gMSk7XG5cbiAgQGlmIHVuaXQoJHNwYWNpbmcpID09ICdweCcge1xuICAgICRzcGFjaW5nOiBmbG9vcigkc3BhY2luZyk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICRzaGFkb3c6IGFwcGVuZCgkc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3IsIGNvbW1hKTtcbiAgfVxuXG4gIC8vIEljb24gY29udGFpbmVyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAvLyBJY29uIGJhcnNcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJHdlaWdodDtcblxuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICBib3gtc2hhZG93OiAkc2hhZG93O1xuXG4gICAgY29udGVudDogJyc7XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaWYgJGNvbG9yLWhvdmVyIHtcbiAgICAvLyBHZW5lcmF0ZSBDU1NcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgICAkaG92ZXItc2hhZG93OiBhcHBlbmQoJGhvdmVyLXNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLWhvdmVyLCBjb21tYSk7XG4gICAgfVxuXG4gICAgJjpob3Zlcjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgICAgYm94LXNoYWRvdzogJGhvdmVyLXNoYWRvdztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkb3dud2FyZC1mYWNpbmcgdHJpYW5nbGUgYXMgYSBiYWNrZ3JvdW5kIGltYWdlIHRvIGFuIGVsZW1lbnQuIFRoZSBpbWFnZSBpcyBmb3JtYXR0ZWQgYXMgYW4gU1ZHLCBtYWtpbmcgaXQgZWFzeSB0byBjaGFuZ2UgdGhlIGNvbG9yLiBCZWNhdXNlIEludGVybmV0IEV4cGxvcmVyIGRvZXNuJ3Qgc3VwcG9ydCBlbmNvZGVkIFNWR3MgYXMgYmFja2dyb3VuZCBpbWFnZXMsIGEgUE5HIGZhbGxiYWNrIGlzIGFsc28gaW5jbHVkZWQuXG4vLy8gVGhlcmUgYXJlIHR3byBQTkcgZmFsbGJhY2tzOiBhIGJsYWNrIHRyaWFuZ2xlIGFuZCBhIHdoaXRlIHRyaWFuZ2xlLiBUaGUgb25lIHVzZWQgZGVwZW5kcyBvbiB0aGUgbGlnaHRuZXNzIG9mIHRoZSBpbnB1dCBjb2xvci5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIHRyaWFuZ2xlLlxuQG1peGluIGJhY2tncm91bmQtdHJpYW5nbGUoJGNvbG9yOiAkYmxhY2spIHtcbiAgJHJnYjogJ3JnYiUyOCN7cm91bmQocmVkKCRjb2xvcikpfSwgI3tyb3VuZChncmVlbigkY29sb3IpKX0sICN7cm91bmQoYmx1ZSgkY29sb3IpKX0lMjknO1xuXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogI3skcmdifSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjBcXDApIHtcbiAgICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPCA2MCUge1xuICAgICAgLy8gV2hpdGUgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBCbGFjayB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQU1CSlJFRlVlTnJFbGxzT2hDQU1SVnN6QzlJbHpVN0tDbVZIVEpzb01XWU1VdHB5djlCZ2J1WFFCNVpTZGdCWVlZNHljZ0Jpdms4S1lGc1FNZk1pVFRCUDRvM25VekNLek9hYkxKYkx5Mi9nMzFldkdrQWdpblI0L1plZ0tINXFYM2JKQ3NjQTN0MHgza2dPNXRRRnloaEZmNTB4UnFGTGJ5TVVOSlF6Z3lqR1Mvd2dDcHZLcWtSQnB1V3JFNFY5ZCsxRTRkUFVYcUlnMTA3U1FPRS8yRFJReE13VER5Z0lJblZERVQ5VDNsQ29qLzZqL1ZDbUdqWk9sMmxLcFo4QUF3RFFQN3pJaW1ER0ZRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBcHBsaWVzIHRoZSBtaWNybyBjbGVhcmZpeCBoYWNrIHBvcHVsYXJpemVkIGJ5IE5pY29sYXMgR2FsbGFnaGVyLiBJbmNsdWRlIHRoaXMgbWl4aW4gb24gYSBjb250YWluZXIgaWYgaXRzIGNoaWxkcmVuIGFyZSBhbGwgZmxvYXRlZCwgdG8gZ2l2ZSB0aGUgY29udGFpbmVyIGEgcHJvcGVyIGhlaWdodC5cbi8vLyBUaGUgY2xlYXJmaXggaXMgYXVnbWVudGVkIHdpdGggc3BlY2lmaWMgc3R5bGVzIHRvIHByZXZlbnQgYm9yZGVycyBpbiBmbGV4Ym94IGVudmlyb25tZW50c1xuLy8vIEBsaW5rIGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrLyBNaWNybyBDbGVhcmZpeCBIYWNrXG4vLy8gQGxpbmsgaHR0cDovL2RhbmlzYWRlc2lnbmVyLmNvbS9ibG9nL2ZsZXhib3gtY2xlYXItZml4LXBzZXVkby1lbGVtZW50cy8gRmxleGJveCBmaXhcbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4vLy8gQWRkcyBDU1MgZm9yIGEgXCJxdWFudGl0eSBxdWVyeVwiIHNlbGVjdG9yIHRoYXQgYXV0b21hdGljYWxseSBzaXplcyBlbGVtZW50cyBiYXNlZCBvbiBob3cgbWFueSB0aGVyZSBhcmUgaW5zaWRlIGEgY29udGFpbmVyLlxuLy8vIEBsaW5rIGh0dHA6Ly9hbGlzdGFwYXJ0LmNvbS9hcnRpY2xlL3F1YW50aXR5LXF1ZXJpZXMtZm9yLWNzcyBRdWFudGl0eSBRdWVyaWVzIGZvciBDU1Ncbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4IC0gTWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdG8gZGV0ZWN0LiBUaGUgaGlnaGVyIHRoaXMgbnVtYmVyIGlzLCB0aGUgbW9yZSBDU1MgdGhhdCdzIHJlcXVpcmVkIHRvIGNvdmVyIGVhY2ggbnVtYmVyIG9mIGl0ZW1zLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGVsZW0gW2xpXSAtIFRhZyB0byB1c2UgZm9yIHNpYmxpbmcgc2VsZWN0b3JzLlxuQG1peGluIGF1dG8td2lkdGgoJG1heCwgJGVsZW06IGxpKSB7XG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJG1heCB7XG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQsXG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQgfiAjeyRlbGVtfSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgxIC8gJGkpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyB0aGUgZm9jdXMgcmluZyBhcm91bmQgYW4gZWxlbWVudCB3aGVuIGEgbW91c2UgaW5wdXQgaXMgZGV0ZWN0ZWQuXG5AbWl4aW4gZGlzYWJsZS1tb3VzZS1vdXRsaW5lIHtcbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddICYge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8vIE1ha2VzIGFuIGVsZW1lbnQgdmlzdWFsbHkgaGlkZGVuLCBidXQgc3RpbGwgYWNjZXNzaWJsZSB0byBrZXlib2FyZHMgYW5kIGFzc2lzdGl2ZSBkZXZpY2VzLlxuLy8vIEBsaW5rIGh0dHA6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHkgSGlkaW5nIENvbnRlbnQgZm9yIEFjY2Vzc2liaWxpdHlcbi8vLyBAbGluayBodHRwOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsMCwwLDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7XG59XG5cbi8vLyBSZXZlcnNlcyB0aGUgQ1NTIG91dHB1dCBjcmVhdGVkIGJ5IHRoZSBgZWxlbWVudC1pbnZpc2libGUoKWAgbWl4aW4uXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUtb2ZmIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxuLy8vIFZlcnRpY2FsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gdmVydGljYWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGhvcml6b250YWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLy8vIEFic29sdXRlbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gYWJzb2x1dGUtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLy8vIEl0ZXJhdGVzIHRocm91Z2ggYnJlYWtwb2ludHMgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgYW5kIHByaW50cyB0aGUgQ1NTIGluc2lkZSB0aGUgbWl4aW4gYXQgZWFjaCBicmVha3BvaW50J3MgbWVkaWEgcXVlcnkuIFVzZSB0aGlzIHdpdGggdGhlIGdyaWQsIG9yIGFueSBvdGhlciBjb21wb25lbnQgdGhhdCBoYXMgcmVzcG9uc2l2ZSBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkc21hbGwgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgc2tpcCB0aGUgYHNtYWxsYCBicmVha3BvaW50LiBVc2UgdGhpcyB3aXRoIGNvbXBvbmVudHMgdGhhdCBkb24ndCBwcmVmaXggY2xhc3NlcyB3aXRoIGBzbWFsbC1gLCBvbmx5IGBtZWRpdW0tYCBhbmQgdXAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgaXRlcmF0ZSBvdmVyIGJyZWFrcG9pbnRzIHdpdGhvdXQgZG9pbmcgdGhlIG1lZGlhIHF1ZXJ5IGl0c2VsZi4gVXNlZnVsIGZvciBtb3JlIGNvbXBsZXggbWVkaWEgcXVlcnkgZ2VuZXJhdGlvbiBhcyBpbiB0aGUgbWFyZ2luIGdyaWQuXG5AbWl4aW4gLXpmLWVhY2gtYnJlYWtwb2ludCgkc21hbGw6IHRydWUsICRhdXRvLWluc2VydC1icmVha3BvaW50czogdHJ1ZSkge1xuICAkbGlzdDogJGJyZWFrcG9pbnQtY2xhc3NlcztcblxuICBAaWYgbm90ICRzbWFsbCB7XG4gICAgJGxpc3Q6IHNsLXJlbW92ZSgkbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICB9XG5cbiAgQGVhY2ggJG5hbWUgaW4gJGxpc3Qge1xuICAgICRvbGQtemYtc2l6ZTogbnVsbDtcbiAgICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gICAgfVxuICAgICQtemYtc2l6ZTogJG5hbWUgIWdsb2JhbDtcblxuICAgIEBpZiAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgdGhlIGBAY29udGVudGAgcGFzc2VkIHRvIHRoZSBtaXhpbiB3aXRoIGEgdmFsdWUgYCQtemYtYnAtdmFsdWVgIHJlbGF0ZWQgdG8gYSBicmVha3BvaW50LCBkZXBlbmRpbmcgb24gdGhlIGAkbmFtZWAgcGFyYW1ldGVyOlxuLy8vIC0gRm9yIGEgc2luZ2xlIHZhbHVlLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhpcyB2YWx1ZS5cbi8vLyAtIEZvciBhIGJyZWFrcG9pbnQgbmFtZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgLlxuLy8vIC0gRm9yIFwiYXV0b1wiLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAgYW5kIGlzIHBhc3NlZCB0byBgQGNvbnRlbnRgLCB3aGljaCBpcyBtYWRlIHJlc3BvbnNpdmUgZm9yIGVhY2ggYnJlYWtwb2ludCBvZiBgJG1hcGAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8QXJyYXl8S2V5d29yZH0gJG5hbWUgW2F1dG9dIC0gU2luZ2xlIHZhbHVlLCBicmVha3BvaW50IG5hbWUsIG9yIGxpc3Qgb2YgYnJlYWtwb2ludCBuYW1lcyB0byB1c2UuIFwiYXV0b1wiIGJ5IGRlZmF1bHQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gTWFwIG9mIGJyZWFrcG9pbnRzIGFuZCB2YWx1ZXMgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS5cbkBtaXhpbiAtemYtYnJlYWtwb2ludC12YWx1ZShcbiAgJG5hbWU6IGF1dG8sXG4gICRtYXA6IG51bGxcbikge1xuICBAaWYgJG5hbWUgPT0gYXV0byBhbmQgdHlwZS1vZigkbWFwKSA9PSAnbWFwJyB7XG4gICAgLy8gXCJhdXRvXCJcbiAgICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRrKSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCR2LCAkbWFwKSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIGJyZWFrcG9pbnQgbmFtZVxuICAgIEBpZiB0eXBlLW9mKCRuYW1lKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkbmFtZTogLXpmLWdldC1icC12YWwoJG1hcCwgJG5hbWUpO1xuICAgIH1cblxuICAgIC8vIGJyZWFrcG9pbnQgdmFsdWVcbiAgICAkLXpmLWJwLXZhbHVlOiAkbmFtZSAhZ2xvYmFsO1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRm9udCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHBsYWNlaG9sZGVyIHRleHQgd2l0aGluIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEZvbnRcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBmb2N1c2VkIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGZvY3VzZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBpbnNpZGUgdGV4dCBpbnB1dHMgd2hlbiBub3QgZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgb3V0c2lkZSB0ZXh0IGlucHV0cyB3aGVuIGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEN1cnNvciB0byB1c2Ugd2hlbiBob3ZlcmluZyBvdmVyIGEgZGlzYWJsZWQgdGV4dCBpbnB1dC5cbi8vLyBAdHlwZSBDdXJzb3JcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG4vLy8gUHJvcGVydGllcyB0byB0cmFuc2l0aW9uIG9uIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgdGhlIHVwL2Rvd24gYnV0dG9ucyB0aGF0IENocm9tZSBhbmQgRmlyZWZveCBhZGQgdG8gYDxpbnB1dCB0eXBlPSdudW1iZXInPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFJhZGl1cyBmb3IgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGZvcm0gYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tZWxlbWVudCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogdW5pdGxlc3MtY2FsYygkaW5wdXQtbGluZS1oZWlnaHQpKSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdztcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXRleHQge1xuICAvLyBUZXh0IGlucHV0c1xuICAje3RleHQtaW5wdXRzKCl9LFxuICB0ZXh0YXJlYSB7XG4gICAgQGluY2x1ZGUgZm9ybS1lbGVtZW50O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyBUZXh0IGFyZWFzXG4gIHRleHRhcmVhIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAmW3Jvd3NdIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICBpbnB1dCxcbiAgdGV4dGFyZWEge1xuICAgIC8vIERpc2FibGVkL3JlYWRvbmx5IHN0YXRlXG4gICAgJjpkaXNhYmxlZCxcbiAgICAmW3JlYWRvbmx5XSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb24gYnV0dG9uLWxpa2UgaW5wdXRzXG4gIFt0eXBlPSdzdWJtaXQnXSxcbiAgW3R5cGU9J2J1dHRvbiddIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6ICRmb3JtLWJ1dHRvbi1yYWRpdXM7XG4gIH1cblxuICAvLyBSZXNldCBOb3JtYWxpemUgc2V0dGluZyBjb250ZW50LWJveCB0byBzZWFyY2ggZWxlbWVudHNcbiAgaW5wdXRbdHlwZT0nc2VhcmNoJ10geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgLy8gTnVtYmVyIGlucHV0IHN0eWxlc1xuICBbdHlwZT0nbnVtYmVyJ10ge1xuICAgIEBpZiBub3QgJGlucHV0LW51bWJlci1zcGlubmVycyB7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcblxuICAgICAgJjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICAgICY6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQbGFjZWhvbGRlciB0ZXh0XG4gIDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tY2hlY2tib3gge1xuICBbdHlwZT0nZmlsZSddLFxuICBbdHlwZT0nY2hlY2tib3gnXSxcbiAgW3R5cGU9J3JhZGlvJ10ge1xuICAgIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIH1cblxuICAvLyBTdHlsZXMgZm9yIGlucHV0L2xhYmVsIHNpYmxpbmdzXG4gIFt0eXBlPSdjaGVja2JveCddICsgbGFiZWwsXG4gIFt0eXBlPSdyYWRpbyddICsgbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG5cbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkZm9ybS1zcGFjaW5nICogMC41O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkZm9ybS1zcGFjaW5nO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAmW2Zvcl0ge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXRzIGluc2lkZSBsYWJlbHNcbiAgbGFiZWwgPiBbdHlwZT0nY2hlY2tib3gnXSxcbiAgbGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAvLyBOb3JtYWxpemUgZmlsZSBpbnB1dCB3aWR0aFxuICBbdHlwZT0nZmlsZSddIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGZvcm0gbGFiZWxzLiBUaGUgaGlnaGVyIHRoZSBudW1iZXIsIHRoZSBtb3JlIHNwYWNlIGJldHdlZW4gdGhlIGxhYmVsIGFuZCBpdHMgaW5wdXQgZmllbGQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44ICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG5cbiAgZm9udC1zaXplOiAkZm9ybS1sYWJlbC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbkBtaXhpbiBmb3JtLWxhYmVsLW1pZGRsZSB7XG4gICRpbnB1dC1ib3JkZXItd2lkdGg6IGdldC1ib3JkZXItdmFsdWUoJGlucHV0LWJvcmRlciwgd2lkdGgpO1xuXG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICgkZm9ybS1zcGFjaW5nIC8gMiArIHJlbS1jYWxjKCRpbnB1dC1ib3JkZXItd2lkdGgpKSAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWxhYmVsIHtcbiAgbGFiZWwge1xuICAgIEBpbmNsdWRlIGZvcm0tbGFiZWw7XG5cbiAgICAmLm1pZGRsZSB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWxhYmVsLW1pZGRsZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWxwdGV4dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzdHlsZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIEtleXdvcmRcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0taGVscHRleHQge1xuICAuaGVscC10ZXh0IHtcbiAgICAkbWFyZ2luLXRvcDogKCRmb3JtLXNwYWNpbmcgKiAwLjUpICogLTE7XG5cbiAgICBtYXJnaW4tdG9wOiAkbWFyZ2luLXRvcDtcbiAgICBmb250LXNpemU6ICRoZWxwdGV4dC1mb250LXNpemU7XG4gICAgZm9udC1zdHlsZTogJGhlbHB0ZXh0LWZvbnQtc3R5bGU7XG4gICAgY29sb3I6ICRoZWxwdGV4dC1jb2xvcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGVmdC9yaWdodCBwYWRkaW5nIG9mIGFuIHByZS9wb3N0Zml4ZWQgaW5wdXQgbGFiZWxcbiRpbnB1dC1wcmVmaXgtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1wcmVwb3N0Zml4IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiAkaW5wdXQtbGluZS1oZWlnaHQpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgZGlzcGxheTogaWYoJGdsb2JhbC1mbGV4Ym94LCBmbGV4LCB0YWJsZSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgfVxuXG4gICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDAsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMpO1xuICAgIH1cblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgPiAqIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICVpbnB1dC1ncm91cC1jaGlsZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtbGFiZWwge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmc6IDAgJGlucHV0LXByZWZpeC1wYWRkaW5nO1xuICAgIGJvcmRlcjogJGlucHV0LXByZWZpeC1ib3JkZXI7XG4gICAgYmFja2dyb3VuZDogJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kO1xuXG4gICAgY29sb3I6ICRpbnB1dC1wcmVmaXgtY29sb3I7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC1wcmVmaXgtYm9yZGVyKSB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgICAgbWluLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgYSxcbiAgICBpbnB1dCxcbiAgICBidXR0b24sXG4gICAgbGFiZWwge1xuICAgICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG5cbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICAgIH1cbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gICAgfVxuICB9XG5cbiAgLy8gU3BlY2lmaWNpdHkgYnVtcCBuZWVkZWQgdG8gcHJldmVudCBvdmVycmlkZSBieSBidXR0b25zXG4gIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgYmV0d2VlbiB0aGUgbGVnZW5kIHRleHQgYW5kIGZpZWxkc2V0IGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKSAhZGVmYXVsdDtcblxuQG1peGluIGZpZWxkc2V0IHtcbiAgbWFyZ2luOiAkZmllbGRzZXQtbWFyZ2luO1xuICBwYWRkaW5nOiAkZmllbGRzZXQtcGFkZGluZztcbiAgYm9yZGVyOiAkZmllbGRzZXQtYm9yZGVyO1xuXG4gIGxlZ2VuZCB7XG4gICAgLy8gQ292ZXJzIHVwIHRoZSBmaWVsZHNldCdzIGJvcmRlciB0byBjcmVhdGUgYXJ0aWZpY2lhbCBwYWRkaW5nXG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IHJlbS1jYWxjKC0zKTtcbiAgICBwYWRkaW5nOiAkbGVnZW5kLXBhZGRpbmc7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1maWVsZHNldCB7XG4gIGZpZWxkc2V0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICBsZWdlbmQge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nICogMC41O1xuICB9XG5cbiAgLmZpZWxkc2V0IHtcbiAgICBAaW5jbHVkZSBmaWVsZHNldDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHNlbGVjdCBtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgZHJvcGRvd24gdHJpYW5nbGUgaW5zaWRlIHNlbGVjdCBtZW51cy4gU2V0IHRvIGB0cmFuc3BhcmVudGAgdG8gcmVtb3ZlIGl0IGVudGlyZWx5LlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXRyaWFuZ2xlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHNlbGVjdCBtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1zZWxlY3Qge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqIHVuaXRsZXNzLWNhbGMoJGlucHV0LWxpbmUtaGVpZ2h0KSkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZztcblxuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRzZWxlY3QtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LWJhY2tncm91bmQ7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiAkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yICE9IHRyYW5zcGFyZW50IHtcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRzZWxlY3QtdHJpYW5nbGUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZ2xvYmFsLXJpZ2h0ICgtJGZvcm0tc3BhY2luZykgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuXG4gICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAoJGZvcm0tc3BhY2luZyAqIDEuNSk7XG4gIH1cblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgJjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gSGlkZSB0aGUgZHJvcGRvd24gYXJyb3cgc2hvd24gaW4gbmV3ZXIgSUUgdmVyc2lvbnNcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXNlbGVjdCB7XG4gIHNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS1zZWxlY3Q7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFiaWRlXG4vLy8vXG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gaW5wdXRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1pbnB1dHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGlmIGVycm9yIHN0eWxlcyBzaG91bGQgYmUgYWRkZWQgdG8gbGFiZWxzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhYmlkZS1sYWJlbHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIHRvIHVzZSBmb3IgaW52YWxpZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHRvIHVzZSBmb3IgbGFiZWxzIG9mIGludmFsaWQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBmb3JtIGVycm9yIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgb2YgYW4gaW5wdXQgZmllbGQgdG8gaGF2ZSBhbiBlcnJvciBzdGF0ZS5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYWxlcnQtY29sb3JdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFja2dyb3VuZC1saWdodGVuIFsxMCVdIC0gTGlnaHRuZXNzIGxldmVsIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGZvcm0taW5wdXQtZXJyb3IoXG4gICRiYWNrZ3JvdW5kOiAkaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkLFxuICAkYmFja2dyb3VuZC1saWdodGVuOiAxMCVcbikge1xuICAmOm5vdCg6Zm9jdXMpIHtcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6IG1peCgkYmFja2dyb3VuZCwgJHdoaXRlLCAkYmFja2dyb3VuZC1saWdodGVuKTtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXJyb3Igc3R5bGVzIHRvIGEgZm9ybSBlbGVtZW50LCB1c2luZyB0aGUgdmFsdWVzIGluIHRoZSBzZXR0aW5ncyBmaWxlLlxuQG1peGluIGZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1zcGFjaW5nICogLTAuNTtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICBmb250LXNpemU6ICRpbnB1dC1lcnJvci1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZXJyb3ItY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZXJyb3Ige1xuICBAaWYgJGFiaWRlLWlucHV0cyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGludmFsaWQgaW5wdXRzXG4gICAgLmlzLWludmFsaWQtaW5wdXQge1xuICAgICAgQGluY2x1ZGUgZm9ybS1pbnB1dC1lcnJvcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJGFiaWRlLWxhYmVscyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGxhYmVscyBvZiBpbnZhbGlkIG91dHB1dHNcbiAgICAuaXMtaW52YWxpZC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDtcbiAgICB9XG4gIH1cblxuICAvLyBGb3JtIGVycm9yIGVsZW1lbnRcbiAgLmZvcm0tZXJyb3Ige1xuICAgIEBpbmNsdWRlIGZvcm0tZXJyb3I7XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWJhc2Vcbi8vLy9cblxuLy8gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuLy8gVGhlc2UgYXJlIHN0eWxlcyBhcHBsaWVkIHRvIGJhc2ljIEhUTUwgdGFncywgaW5jbHVkaW5nOlxuLy8gICAtIFBhcmFncmFwaHMgPHA+XG4vLyAgIC0gQm9sZC9pdGFsaWNzIDxiPiA8c3Ryb25nPiA8aT4gPGVtPlxuLy8gICAtIFNtYWxsIHRleHQgPHNtYWxsPlxuLy8gICAtIEhlYWRpbmdzIDxoMT4tPGg2PlxuLy8gICAtIEFuY2hvcnMgPGE+XG4vLyAgIC0gRGl2aWRlcnMgPGhyPlxuLy8gICAtIExpc3RzIDx1bD4gPG9sPiA8ZGw+XG4vLyAgIC0gQmxvY2txdW90ZXMgPGJsb2NrcXVvdGU+XG4vLyAgIC0gQ29kZSBibG9ja3MgPGNvZGU+XG4vLyAgIC0gQWJicmV2aWF0aW9ucyA8YWJicj5cbi8vICAgLSBDaXRhdGlvbnMgPGNpdGU+XG4vLyAgIC0gS2V5c3Ryb2tlcyA8a2JkPlxuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGhlYWRlciBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0eWxlIChlLmcuIGl0YWxpY2l6ZWQpIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgdXNlZCBmb3IgZWxlbWVudHMgdGhhdCB1c2UgbW9ub3NwYWNlZCB0eXBlLCBzdWNoIGFzIGNvZGUgc2FtcGxlc1xuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIGZvciBoZWFkaW5ncyBhdCB2YXJpb3VzIHNjcmVlbiBzaXplcy4gRWFjaCBrZXkgaXMgYSBicmVha3BvaW50LCBhbmQgZWFjaCB2YWx1ZSBpcyBhIG1hcCBvZiBoZWFkaW5nIHN0eWxlcy5cbi8vLyBAdHlwZSBNYXBcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8gJGhlYWRlci1zdHlsZXMgbWFwIGlzIGJ1aWx0IGZyb20gJGhlYWRlci1zaXplcyBpbiBvcmRlciB0byBlbnN1cmUgZG93bndhcmQgY29tcGF0aWJpbGl0eVxuLy8gd2hlbiAkaGVhZGVyLXNpemVzIGlzIGRlcHJlY2lhdGVkLCAkaGVhZGVyLXN0eWxlcyBuZWVkcyB0byBnZXQgIWRlZmF1bHQgdmFsdWVzIGxpa2Ugc2V0dGluZ3Muc2Nzc1xuQGZ1bmN0aW9uIGJ1aWxkX2Zyb21faGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpIHtcbiAgQHdhcm4gJ05vdGUsIHRoYXQgJGhlYWRlci1zaXplcyBoYXMgYmVlbiByZXBsYWNlZCB3aXRoICRoZWFkZXItc3R5bGVzLiAkaGVhZGVyLXNpemVzIHN0aWxsIHdvcmtzLCBidXQgaXQgaXMgZ29pbmcgdG8gYmUgZGVwcmVjaWF0ZWQuJztcbiAgJGhlYWRlci1zdHlsZXM6ICgpO1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zaXplcyB7XG4gICAgJGhlYWRlci1tYXA6ICgpO1xuICAgIEBlYWNoICRoZWFkZXIsICRmb250LXNpemUgaW4gJGhlYWRlcnMge1xuICAgICAgJGhlYWRlci1tYXA6IG1hcC1tZXJnZSgkaGVhZGVyLW1hcCwgKCRoZWFkZXI6ICgnZm9udC1zaXplJzogJGZvbnQtc2l6ZSkpKTtcbiAgICB9XG4gICAgJGhlYWRlci1zdHlsZXM6IG1hcC1tZXJnZSgkaGVhZGVyLXN0eWxlcywgKCRzaXplOiAkaGVhZGVyLW1hcCkpO1xuICB9XG4gIEByZXR1cm4gJGhlYWRlci1zdHlsZXM7XG59XG5cbi8vIElmIGl0IGV4aXN0cyAkaGVhZGVycy1zaXplcyBpcyB1c2VkIHRvIGJ1aWxkICRoZWFkZXItc3R5bGVzLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGhlYWRlci1zaXplcykge1xuICAkaGVhZGVyLXN0eWxlczogYnVpbGRfZnJvbV9oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcyk7XG59XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2Qgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBgPHNtYWxsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBgPHNtYWxsPmAgZWxlbWVudHMgd2hlbiBwbGFjZWQgaW5zaWRlIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnNpZGUgYDxwPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBmb3IgcGFyYWdyYXBoIHRleHQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW4gY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIExpc3RcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG8gIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tICFkZWZhdWx0O1xuXG4vLy8gQnVsbGV0IHR5cGUgdG8gdXNlIGZvciB1bm9yZGVyZWQgbGlzdHMgKGUuZy4sIGBzcXVhcmVgLCBgY2lyY2xlYCwgYGRpc2NgKS5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2MgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbmluZyBmb3IgYnVsbGV0cyBvbiB1bm9yZGVyZWQgbGlzdCBpdGVtcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgbGlzdHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGEgbGlzdCBpbnNpZGUgYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgYDxkbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYDxkdD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGA8ZHQ+YCBhbmQgYDxkZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIGA8YmxvY2txdW90ZT5gIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KSAhZGVmYXVsdDtcblxuLy8vIFNpZGUgYm9yZGVyIGZvciBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQc2V1ZG8gY29udGVudCBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBib3JkZXIgc3R5bGUgZm9yIGA8YWJicj5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2sgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktYmFzZSB7XG4gIC8vIFR5cG9ncmFwaHkgcmVzZXRzXG4gIGRpdixcbiAgZGwsXG4gIGR0LFxuICBkZCxcbiAgdWwsXG4gIG9sLFxuICBsaSxcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNixcbiAgcHJlLFxuICBmb3JtLFxuICBwLFxuICBibG9ja3F1b3RlLFxuICB0aCxcbiAgdGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGFyYWdyYXBoc1xuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICB0ZXh0LXJlbmRlcmluZzogJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZztcbiAgfVxuXG4gIC8vIEVtcGhhc2l6ZWQgdGV4dFxuICBlbSxcbiAgaSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU3Ryb25nIHRleHRcbiAgc3Ryb25nLFxuICBiIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFNtYWxsIHRleHRcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEhlYWRpbmdzXG4gIGgxLCAuaDEsXG4gIGgyLCAuaDIsXG4gIGgzLCAuaDMsXG4gIGg0LCAuaDQsXG4gIGg1LCAuaDUsXG4gIGg2LCAuaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRoZWFkZXItZm9udC1zdHlsZTtcbiAgICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICB0ZXh0LXJlbmRlcmluZzogJGhlYWRlci10ZXh0LXJlbmRlcmluZztcblxuICAgIHNtYWxsIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgY29sb3I6ICRoZWFkZXItc21hbGwtZm9udC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBIZWFkaW5nIHN0eWxlc1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zdHlsZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRoZWFkZXIsICRoZWFkZXItZGVmcyBpbiAkaGVhZGVycyB7XG4gICAgICAgICRmb250LXNpemUtdGVtcDogMXJlbTtcbiAgICAgICAgI3skaGVhZGVyfSwgLiN7JGhlYWRlcn0ge1xuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmb250LXNpemUpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmcykge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZnMpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxoKSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKCRoZWFkZXItbGluZWhlaWdodCwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtdCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG10KSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYikge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1iKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkaGVhZGVyLW1hcmdpbi1ib3R0b20pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExpbmtzXG4gIGEge1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb247XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRhbmNob3ItY29sb3ItaG92ZXI7XG4gICAgICBAaWYgJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXIgIT0gJGFuY2hvci10ZXh0LWRlY29yYXRpb24ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gSG9yaXpvbnRhbCBydWxlXG4gIGhyIHtcbiAgICBjbGVhcjogYm90aDtcblxuICAgIG1heC13aWR0aDogJGhyLXdpZHRoO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46ICRoci1tYXJnaW47XG5cbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItYm90dG9tOiAkaHItYm9yZGVyO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICB9XG5cbiAgLy8gTGlzdHNcbiAgdWwsXG4gIG9sLFxuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxpc3QtbWFyZ2luLWJvdHRvbTtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiAkbGlzdC1zdHlsZS1wb3NpdGlvbjtcbiAgICBsaW5lLWhlaWdodDogJGxpc3QtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXNcbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFVub3JkZXJlZCBsaXN0c1xuICB1bCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gICAgbGlzdC1zdHlsZS10eXBlOiAkbGlzdC1zdHlsZS10eXBlO1xuICB9XG5cbiAgLy8gT3JkZXJlZCBsaXN0c1xuICBvbCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gIH1cblxuICAvLyBOZXN0ZWQgdW5vcmRlcmVkL29yZGVyZWQgbGlzdHNcbiAgdWwsIG9sIHtcbiAgICAmICYge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBEZWZpbml0aW9uIGxpc3RzXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTtcblxuICAgIGR0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b207XG4gICAgICBmb250LXdlaWdodDogJGRlZm5saXN0LXRlcm0td2VpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrcXVvdGVzXG4gIGJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMCAwICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICBwYWRkaW5nOiAkYmxvY2txdW90ZS1wYWRkaW5nO1xuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRibG9ja3F1b3RlLWJvcmRlcjtcblxuICAgICYsIHAge1xuICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICAgIGNvbG9yOiAkYmxvY2txdW90ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBDaXRhdGlvbnNcbiAgY2l0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAkY2l0ZS1mb250LXNpemU7XG4gICAgY29sb3I6ICRjaXRlLWNvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGNpdGUtcHNldWRvLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQWJicmV2aWF0aW9uc1xuICBhYmJyLCBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGFiYnItdW5kZXJsaW5lO1xuICAgIGN1cnNvcjogaGVscDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBGaWd1cmVzXG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gQ29kZVxuICBjb2RlIHtcbiAgICBwYWRkaW5nOiAkY29kZS1wYWRkaW5nO1xuXG4gICAgYm9yZGVyOiAkY29kZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkY29kZS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGNvZGUtZm9udC13ZWlnaHQ7XG4gICAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICB9XG5cbiAgLy8gS2V5c3Ryb2tlc1xuICBrYmQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAka2V5c3Ryb2tlLXBhZGRpbmc7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAka2V5c3Ryb2tlLWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGtleXN0cm9rZS1mb250O1xuICAgIGNvbG9yOiAka2V5c3Ryb2tlLWNvbG9yO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgka2V5c3Ryb2tlLXJhZGl1cykge1xuICAgICAgYm9yZGVyLXJhZGl1czogJGtleXN0cm9rZS1yYWRpdXM7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVha3BvaW50c1xuLy8vL1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsYXJnZXN0IG5hbWVkIGJyZWFrcG9pbnQgaW4gd2hpY2ggdG8gaW5jbHVkZSBwcmludCBhcyBhIG1lZGlhIHR5cGVcbi8vLyBAdHlwZSBLZXl3b3JkXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2UgIWRlZmF1bHQ7XG5cbiQtemYtemVyby1icmVha3BvaW50OiBzbWFsbCAhZGVmYXVsdDtcblxuJC16Zi1icmVha3BvaW50cy1rZXlzOiBtYXAtdG8tbGlzdCgkYnJlYWtwb2ludHMsICdrZXlzJyk7XG5cbkBpZiBudGgobWFwLXZhbHVlcygkYnJlYWtwb2ludHMpLCAxKSAhPSAwIHtcbiAgQGVycm9yICdUaGUgZmlyc3Qga2V5IGluIHRoZSAkYnJlYWtwb2ludHMgbWFwIG11c3QgaGF2ZSBhIHZhbHVlIG9mIFwiMFwiLic7XG59XG5AZWxzZSB7XG4gICQtemYtemVyby1icmVha3BvaW50OiBudGgobWFwLWtleXMoJGJyZWFrcG9pbnRzKSwgMSk7XG59XG5cbi8vLyBBbGwgb2YgdGhlIG5hbWVzIGluIHRoaXMgbGlzdCB3aWxsIGJlIG91dHB1dCBhcyBjbGFzc2VzIGluIHlvdXIgQ1NTLCBsaWtlIGAuc21hbGwtMTJgLCBgLm1lZGl1bS02YCwgYW5kIHNvIG9uLiBFYWNoIHZhbHVlIGluIHRoaXMgbGlzdCBtdXN0IGFsc28gYmUgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcC5cbi8vLyBAdHlwZSBMaXN0XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKSAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IHN0cmluZyBtYXRjaGluZyB0aGUgaW5wdXQgdmFsdWUuIFJlZmVyIHRvIHRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gc2VlIHdoYXQgdGhlIHBvc3NpYmxlIGlucHV0cyBhcmUuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsIFtzbWFsbF0gLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG5AZnVuY3Rpb24gYnJlYWtwb2ludCgkdmFsOiAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAvLyBTaXplIG9yIGtleXdvcmRcbiAgJGJwOiBudGgoJHZhbCwgMSk7XG4gIC8vIFZhbHVlIGZvciBtYXgtd2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWF4OiAwO1xuICAvLyBEaXJlY3Rpb24gb2YgbWVkaWEgcXVlcnkgKHVwLCBkb3duLCBvciBvbmx5KVxuICAkZGlyOiBpZihsZW5ndGgoJHZhbCkgPiAxLCBudGgoJHZhbCwgMiksIHVwKTtcbiAgLy8gRXZlbnR1YWwgb3V0cHV0XG4gICRzdHI6ICcnO1xuICAvLyBJcyBpdCBhIG5hbWVkIG1lZGlhIHF1ZXJ5P1xuICAkbmFtZWQ6IGZhbHNlO1xuXG4gIC8vIE9yaWVudGF0aW9uIG1lZGlhIHF1ZXJpZXMgaGF2ZSBhIHVuaXF1ZSBzeW50YXhcbiAgQGlmICRicCA9PSAnbGFuZHNjYXBlJyBvciAkYnAgPT0gJ3BvcnRyYWl0JyB7XG4gICAgQHJldHVybiAnKG9yaWVudGF0aW9uOiAjeyRicH0pJztcbiAgfVxuICBAZWxzZSBpZiAkYnAgPT0gJ3JldGluYScge1xuICAgIEByZXR1cm4gJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknO1xuICB9XG5cbiAgLy8gVHJ5IHRvIHB1bGwgYSBuYW1lZCBicmVha3BvaW50IG91dCBvZiB0aGUgJGJyZWFrcG9pbnRzIG1hcFxuICBAaWYgdHlwZS1vZigkYnApID09ICdzdHJpbmcnIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnApIHtcbiAgICAgIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgICAgICRicC1tYXg6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICB9XG5cbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICAkbmFtZWQ6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRicDogMDtcbiAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IFwiI3skdmFsfVwiIGlzIG5vdCBkZWZpbmVkIGluIHlvdXIgJGJyZWFrcG9pbnRzIHNldHRpbmcuJztcbiAgICB9XG4gIH1cblxuICAvLyBDb252ZXJ0IGFueSBwaXhlbCwgcmVtLCBvciB1bml0bGVzcyB2YWx1ZSB0byBlbVxuICAkYnA6IC16Zi1icC10by1lbSgkYnApO1xuICAvLyBNYXggdmFsdWUgaXMgMC4ycHggdW5kZXIgdGhlIG5leHQgYnJlYWtwb2ludCAoMC4wMiAvIDE2ID0gMC4wMDEyNSkuXG4gIC8vIFVzZSBhIHByZWNpc2lvbiB1bmRlciAxcHggdG8gc3VwcG9ydCBicm93c2VyIHpvb20sIGJ1dCBub3QgdG8gbG93IHRvIGF2b2lkIHJvdW5kaW5nLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTEzMTNcbiAgQGlmICRicC1tYXgge1xuICAgICRicC1tYXg6IC16Zi1icC10by1lbSgkYnAtbWF4KSAtIC4wMDEyNTtcbiAgfVxuXG4gIC8vIENvbmRpdGlvbnMgdG8gc2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvblxuICAvLyAtIEl0J3MgYSBuYW1lZCBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIGRvd25cIiBvciBcIjAgdXBcIlxuICAvLyAtIEl0J3MgYSBudW1lcmljIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgXCIgKyBhbnl0aGluZ1xuICBAaWYgJGJwID4gMGVtIG9yICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAvLyBgb25seWAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKSBhbmQgKG1heC13aWR0aDogbilgXG4gICAgQGlmICRkaXIgPT0gJ29ubHknIHtcbiAgICAgIC8vIE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBcIm9ubHlcIiByYW5nZVxuICAgICAgQGlmICRuYW1lZCA9PSB0cnVlIHtcbiAgICAgICAgLy8gT25seSB1c2UgXCJtaW4td2lkdGhcIiBpZiB0aGUgZmxvb3IgaXMgZ3JlYXRlciB0aGFuIDBcbiAgICAgICAgQGlmICRicCA+IDBlbSB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcblxuICAgICAgICAgIC8vIE9ubHkgYWRkIFwiYW5kXCIgdG8gdGhlIG1lZGlhIHF1ZXJ5IGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgICAkc3RyOiAkc3RyICsgJyBhbmQgJztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBPbmx5IHVzZSBcIm1heC13aWR0aFwiIGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skYnAtbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBgb25seWAgcmFuZ2UuJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgZG93bmAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWF4LXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkZGlyID09ICdkb3duJyB7XG4gICAgICAkbWF4OiBpZigkbmFtZWQsICRicC1tYXgsICRicCk7XG5cbiAgICAgIC8vIFNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb24gaWYgaW5wdXQgdmFsdWUgaXMgZXhhY3RseSBcIjAgZG93blwiLFxuICAgICAgLy8gdW5sZXNzIHRoZSBmdW5jdGlvbiB3YXMgY2FsbGVkIGFzIFwic21hbGwgZG93blwiLCBpbiB3aGljaCBjYXNlIGl0J3MganVzdCBcInNtYWxsIG9ubHlcIlxuICAgICAgQGlmICRuYW1lZCBvciAkYnAgPiAwZW0ge1xuICAgICAgICBAaWYgJG1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JG1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGB1cGAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkYnAgPiAwZW0ge1xuICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBXcmFwcyBhIG1lZGlhIHF1ZXJ5IGFyb3VuZCB0aGUgY29udGVudCB5b3UgcHV0IGluc2lkZSB0aGUgbWl4aW4uIFRoaXMgbWl4aW4gYWNjZXB0cyBhIG51bWJlciBvZiB2YWx1ZXM6XG4vLy8gIC0gSWYgYSBzdHJpbmcgaXMgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBsb29rIGZvciBpdCBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLCBhbmQgdXNlIGEgbWVkaWEgcXVlcnkgdGhlcmUuXG4vLy8gIC0gSWYgYSBwaXhlbCB2YWx1ZSBpcyBwYXNzZWQsIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGVtIHZhbHVlIHVzaW5nIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgYXMgdGhlIGJhc2UuXG4vLy8gIC0gSWYgYSByZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdW5pdCB3aWxsIGJlIGNoYW5nZWQgdG8gZW0uXG4vLy8gIC0gSWYgYW4gZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdmFsdWUgd2lsbCBiZSB1c2VkIGFzLWlzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuLy8vXG4vLy8gQG91dHB1dCBJZiB0aGUgYnJlYWtwb2ludCBpcyBcIjBweCBhbmQgbGFyZ2VyXCIsIG91dHB1dHMgdGhlIGNvbnRlbnQgYXMtaXMuIE90aGVyd2lzZSwgb3V0cHV0cyB0aGUgY29udGVudCB3cmFwcGVkIGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gYnJlYWtwb2ludCgkdmFsdWUpIHtcbiAgJHN0cjogYnJlYWtwb2ludCgkdmFsdWUpO1xuICAkYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHZhbHVlKTtcbiAgJHBicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkcHJpbnQtYnJlYWtwb2ludCk7XG5cbiAgJG9sZC16Zi1zaXplOiBudWxsO1xuXG4gIC8vIE1ha2UgYnJlYWtwb2ludCBzaXplIGF2YWlsYWJsZSBhcyBhIHZhcmlhYmxlXG4gIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSB7XG4gICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gIH1cbiAgJC16Zi1zaXplOiBudGgoJHZhbHVlLCAxKSAhZ2xvYmFsOyAvLyBnZXQgdGhlIGZpcnN0IHZhbHVlIHRvIGFjY291bnQgZm9yIGBvbmx5YCBhbmQgYGRvd25gIGtleXdvcmRzXG5cbiAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICBAaWYgJHN0ciA9PSAnJyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAvLyBPdGhlcndpc2UsIHdyYXAgdGhlIGNvbnRlbnQgaW4gYSBtZWRpYSBxdWVyeVxuICBAZWxzZSB7XG4gICAgLy8gRm9yIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAkcHJpbnQtYnJlYWtwb2ludCwgYWRkIHByaW50IHRvIHRoZSBtZWRpYSB0eXBlc1xuICAgIEBpZiAkYnAgIT0gbnVsbCBhbmQgJGJwIDw9ICRwYnAge1xuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAkLXpmLXNpemU6ICRvbGQtemYtc2l6ZSAhZ2xvYmFsO1xufVxuXG4vLy8gQ29udmVycyB0aGUgYnJlYWtwb2ludHMgbWFwIHRvIGEgVVJMLWVuY29kZWQgc3RyaW5nLCBsaWtlIHRoaXM6IGBrZXkxPXZhbHVlMSZrZXkyPXZhbHVlMmAuIFRoZSB2YWx1ZSBpcyB0aGVuIGRyb3BwZWQgaW50byB0aGUgQ1NTIGZvciBhIHNwZWNpYWwgYDxtZXRhPmAgdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHQuIFRoaXMgaXMgaG93IHdlIHRyYW5zZmVyIHZhbHVlcyBmcm9tIFNhc3MgdG8gSmF2YVNjcmlwdCwgc28gdGhleSBjYW4gYmUgZGVmaW5lZCBpbiBvbmUgcGxhY2UuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBjb252ZXJ0LlxuLy8vXG4vLy8gQHJldHVybnMge1N0cmluZ30gQSBzdHJpbmcgY29udGFpbmluZyB0aGUgbWFwJ3MgY29udGVudHMuXG5AZnVuY3Rpb24gLXpmLWJwLXNlcmlhbGl6ZSgkbWFwKSB7XG4gICRzdHI6ICcnO1xuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgJHN0cjogJHN0ciArICRrZXkgKyAnPScgKyAtemYtYnAtdG8tZW0oJHZhbHVlKSArICcmJztcbiAgfVxuICAkc3RyOiBzdHItc2xpY2UoJHN0ciwgMSwgLTIpO1xuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIEZpbmQgdGhlIG5leHQga2V5IGluIGEgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gdHJhdmVyc2UuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGtleSAtIEtleSB0byB1c2UgYXMgYSBzdGFydGluZyBwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtNaXhlZH0gVGhlIHZhbHVlIGZvciB0aGUga2V5IGFmdGVyIGAka2V5YCwgaWYgYCRrZXlgIHdhcyBmb3VuZC4gSWYgYCRrZXlgIHdhcyBub3QgZm91bmQsIG9yIGAka2V5YCB3YXMgdGhlIGxhc3QgdmFsdWUgaW4gdGhlIG1hcCwgcmV0dXJucyBgbnVsbGAuXG5AZnVuY3Rpb24gLXpmLW1hcC1uZXh0KCRtYXAsICRrZXkpIHtcblxuICAvLyBTdG9yZSB0aGUga2V5cyBvZiB0aGUgbWFwIGFzIGEgbGlzdFxuICAkdmFsdWVzOiBtYXAta2V5cygkbWFwKTtcblxuICAkaTogMDtcblxuICAvLyBJZiB0aGUgS2V5IEV4aXN0cywgR2V0IHRoZSBpbmRleCBvZiB0aGUga2V5IHdpdGhpbiB0aGUgbWFwIGFuZCBhZGQgMSB0byBpdCBmb3IgdGhlIG5leHQgYnJlYWtwb2ludCBpbiB0aGUgbWFwXG4gIEBpZiAobWFwLWhhcy1rZXkoJG1hcCwgJGtleSkpIHtcbiAgICAkaTogaW5kZXgoJHZhbHVlcywgJGtleSkgKyAxO1xuICB9XG5cbiAgLy8gSWYgdGhlIGtleSBkb2Vzbid0IGV4aXN0LCBvciBpdCdzIHRoZSBsYXN0IGtleSBpbiB0aGUgbWFwLCByZXR1cm4gbnVsbFxuICBAaWYgKCRpID4gbGVuZ3RoKCRtYXApIG9yICRpID09IDApIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gdGhlIHZhbHVlXG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgbnRoKCR2YWx1ZXMsICRpKSk7XG4gIH1cblxufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBsYXN0IGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigka2V5KSB7XG4gICRsaXN0OiAoKTtcbiAgJGZvdW5kX2tleTogZmFsc2U7XG5cbiAgQGVhY2ggJG5hbWUgaW4gJC16Zi1icmVha3BvaW50cy1rZXlzIHtcbiAgICBAaWYgKCRuYW1lID09ICRrZXkpIHtcbiAgICAgICRmb3VuZF9rZXk6IHRydWU7XG4gICAgfVxuICAgIEBpZiBub3QgJGZvdW5kX2tleSB7XG4gICAgICAkbGlzdDogYXBwZW5kKCRsaXN0LCAkbmFtZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJGxpc3Q7XG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IC0gYSBuYW1lZCBvciBub24tbmFtZWQgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCRicmVha3BvaW50KSB7XG4gICRsYXN0OiAkLXpmLXplcm8tYnJlYWtwb2ludDtcbiAgJGZvdW5kOiBmYWxzZTtcblxuICAkdmFsdWU6IHVuaXRsZXNzLWNhbGMoJGJyZWFrcG9pbnQsIDFweCk7XG4gIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICBAaWYgdW5pdGxlc3MtY2FsYygkdmFsKSA+ICR2YWx1ZSB7XG4gICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkbGFzdDogJGtleTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRsYXN0O1xufVxuXG4vLy8gR2V0IGEgdmFsdWUgZm9yIGEgYnJlYWtwb2ludCBmcm9tIGEgcmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdCByZWdhcmRsZXNzIG9mIGAkdmFsdWVgLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgaGFzIHRoZSBrZXkgYCR2YWx1ZWAsIHRoZSBleGFjdCBicmVha3BvaW50IHZhbHVlIGlzIHJldHVybmVkLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgZG9lcyAqbm90KiBoYXZlIHRoZSBicmVha3BvaW50LCB0aGUgdmFsdWUgbWF0Y2hpbmcgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgaW4gdGhlIGNvbmZpZyBtYXAgaXMgcmV0dXJuZWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBSZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge01peGVkfSBUaGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlLlxuQGZ1bmN0aW9uIC16Zi1nZXQtYnAtdmFsKCRtYXAsICR2YWx1ZSkge1xuICAvLyBJZiB0aGUgZ2l2ZW4gbWFwIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXRcbiAgQGlmIHR5cGUtb2YoJG1hcCkgPT0gJ251bWJlcicge1xuICAgIEByZXR1cm4gJG1hcDtcbiAgfVxuXG5cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgZ2xvYmFsbHlcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgICAgJHZhbHVlOiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCR2YWx1ZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGluIHRoZSBsb2NhbCBjb25maWcgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRtYXAsICR2YWx1ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkdmFsdWUpO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgZmluZCB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBhbmQgcmV0dXJuIHRoYXQgdmFsdWVcbiAgQGVsc2Uge1xuICAgICRhbmNob3I6IG51bGw7XG4gICAgJGZvdW5kOiBmYWxzZTtcblxuICAgIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRtYXAsICRrZXkpIHtcbiAgICAgICAgICAkYW5jaG9yOiAka2V5O1xuICAgICAgICB9XG4gICAgICAgIEBpZiAka2V5ID09ICR2YWx1ZSB7XG4gICAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICRhbmNob3IpO1xuICB9XG59XG5cbiRzbWFsbC11cDogJyc7XG4kc21hbGwtb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoc21hbGwgb25seSl9Jyk7XG59XG5cbiRtZWRpdW0tdXA6ICcnO1xuJG1lZGl1bS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbWVkaXVtKSB7XG4gICRtZWRpdW0tdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9Jyk7XG4gICRtZWRpdW0tb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIG9ubHkpfScpO1xufVxuXG4kbGFyZ2UtdXA6ICcnO1xuJGxhcmdlLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBsYXJnZSkge1xuICAkbGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX0nKTtcbiAgJGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlIG9ubHkpfScpO1xufVxuXG4keGxhcmdlLXVwOiAnJztcbiR4bGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHhsYXJnZSkge1xuICAkeGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2UpfScpO1xuICAkeGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSBvbmx5KX0nKTtcbn1cblxuJHh4bGFyZ2UtdXA6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4eGxhcmdlKSB7XG4gICR4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0nKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdtYXRoJztcblxuJGNvbnRyYXN0LXdhcm5pbmdzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBjaGVjayB0aGUgbHVtaW5hbmNlIG9mLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbkBmdW5jdGlvbiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNyZWxhdGl2ZWx1bWluYW5jZWRlZlxuICAkcmdiYTogcmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKTtcbiAgJHJnYmEyOiAoKTtcblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDMge1xuICAgICRyZ2I6IG50aCgkcmdiYSwgJGkpO1xuICAgICRyZ2I6ICRyZ2IgLyAyNTU7XG5cbiAgICAkcmdiOiBpZigkcmdiIDwgMC4wMzkyOCwgJHJnYiAvIDEyLjkyLCBwb3coKCRyZ2IgKyAwLjA1NSkgLyAxLjA1NSwgMi40KSk7XG5cbiAgICAkcmdiYTI6IGFwcGVuZCgkcmdiYTIsICRyZ2IpO1xuICB9XG5cbiAgQHJldHVybiAwLjIxMjYgKiBudGgoJHJnYmEyLCAxKSArIDAuNzE1MiAqIG50aCgkcmdiYTIsIDIpICsgMC4wNzIyICogbnRoKCRyZ2JhMiwgMyk7XG59XG5cbi8vLyBDaGVja3MgdGhlIGNvbnRyYXN0IHJhdGlvIG9mIHR3byBjb2xvcnMuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IxIC0gRmlyc3QgY29sb3IgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IyIC0gU2Vjb25kIGNvbG9yIHRvIGNvbXBhcmUuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgY29udHJhc3QgcmF0aW8gb2YgdGhlIGNvbXBhcmVkIGNvbG9ycy5cbkBmdW5jdGlvbiBjb2xvci1jb250cmFzdCgkY29sb3IxLCAkY29sb3IyKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNjb250cmFzdC1yYXRpb2RlZlxuICAkbHVtaW5hbmNlMTogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjEpICsgMC4wNTtcbiAgJGx1bWluYW5jZTI6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IyKSArIDAuMDU7XG4gICRyYXRpbzogJGx1bWluYW5jZTEgLyAkbHVtaW5hbmNlMjtcblxuICBAaWYgJGx1bWluYW5jZTIgPiAkbHVtaW5hbmNlMSB7XG4gICAgJHJhdGlvOiAxIC8gJHJhdGlvO1xuICB9XG5cbiAgJHJhdGlvOiByb3VuZCgkcmF0aW8gKiAxMCkgLyAxMDtcblxuICBAcmV0dXJuICRyYXRpbztcbn1cblxuLy8vIENoZWNrcyB0aGUgbHVtaW5hbmNlIG9mIGAkYmFzZWAsIGFuZCByZXR1cm5zIHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhc2UgLSBDb2xvciB0byBjaGVjayBsdW1pbmFuY2UuXG4vLy8gQHBhcmFtIHtMaXN0fSAkY29sb3JzIFsoJHdoaXRlLCAkYmxhY2spXSAtIENvbG9ycyB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG9sZXJhbmNlIFskZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlXSAtIENvbnRyYXN0IHRvbGVyYW5jZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG5AZnVuY3Rpb24gY29sb3ItcGljay1jb250cmFzdCgkYmFzZSwgJGNvbG9yczogKCR3aGl0ZSwgJGJsYWNrKSwgJHRvbGVyYW5jZTogJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZSkge1xuICAkY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgMSkpO1xuICAkYmVzdDogbnRoKCRjb2xvcnMsIDEpO1xuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggbGVuZ3RoKCRjb2xvcnMpIHtcbiAgICAkY3VycmVudC1jb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgIEBpZiAoJGN1cnJlbnQtY29udHJhc3QgLSAkY29udHJhc3QgPiAkdG9sZXJhbmNlKSB7XG4gICAgICAkY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICAgICRiZXN0OiBudGgoJGNvbG9ycywgJGkpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGNvbnRyYXN0LXdhcm5pbmdzIGFuZCAkY29udHJhc3QgPCAzKSB7XG4gICAgQHdhcm4gXCJDb250cmFzdCByYXRpbyBvZiAjeyRiZXN0fSBvbiAjeyRiYXNlfSBpcyBwcmV0dHkgYmFkLCBqdXN0ICN7JGNvbnRyYXN0fVwiO1xuICB9XG5cbiAgQHJldHVybiAkYmVzdDtcbn1cblxuLy8vIFNjYWxlcyBhIGNvbG9yIHRvIGJlIGRhcmtlciBpZiBpdCdzIGxpZ2h0LCBvciBsaWdodGVyIGlmIGl0J3MgZGFyay4gVXNlIHRoaXMgZnVuY3Rpb24gdG8gdGludCBhIGNvbG9yIGFwcHJvcHJpYXRlIHRvIGl0cyBsaWdodG5lc3MuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBzY2FsZS5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICRzY2FsZSBbNSVdIC0gQW1vdW50IHRvIHNjYWxlIHVwIG9yIGRvd24uXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkdGhyZXNob2xkIFs0MCVdIC0gVGhyZXNob2xkIG9mIGxpZ2h0bmVzcyB0byBjaGVjayBhZ2FpbnN0LlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBBIHNjYWxlZCBjb2xvci5cbkBmdW5jdGlvbiBzbWFydC1zY2FsZSgkY29sb3IsICRzY2FsZTogNSUsICR0aHJlc2hvbGQ6IDQwJSkge1xuICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPiAkdGhyZXNob2xkIHtcbiAgICAkc2NhbGU6IC0kc2NhbGU7XG4gIH1cbiAgQHJldHVybiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRzY2FsZSk7XG59XG5cbi8vLyBHZXQgY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEBwYXJhbSB7a2V5fSBjb2xvciBrZXkgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbkBmdW5jdGlvbiBnZXQtY29sb3IoJGtleSkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSkge1xuICAgIEByZXR1cm4gbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGVycm9yICdnaXZlbiAka2V5IGlzIG5vdCBhdmFpbGFibGUgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSc7XG4gIH1cbn1cblxuLy8vIFRyYW5zZmVycyB0aGUgY29sb3JzIGluIHRoZSBgJGZvdW5kYXRpb24tcGFsZXR0ZWAgbWFwIGludG8gdmFyaWFibGVzLCBzdWNoIGFzIGAkcHJpbWFyeS1jb2xvcmAgYW5kIGAkc2Vjb25kYXJ5LWNvbG9yYC4gQ2FsbCB0aGlzIG1peGluIGJlbG93IHRoZSBHbG9iYWwgc2VjdGlvbiBvZiB5b3VyIHNldHRpbmdzIGZpbGUgdG8gcHJvcGVybHkgbWlncmF0ZSB5b3VyIGNvZGViYXNlLlxuQG1peGluIGFkZC1mb3VuZGF0aW9uLWNvbG9ycygpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgICAkcHJpbWFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkcHJpbWFyeS1jb2xvcjogIzE3NzliYSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpIHtcbiAgICAkc2Vjb25kYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHNlY29uZGFyeS1jb2xvcjogIzc2NzY3NiAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSB7XG4gICAgJHN1Y2Nlc3MtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2VzcykgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHN1Y2Nlc3MtY29sb3I6ICMzYWRiNzYgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykge1xuICAgICR3YXJuaW5nLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICR3YXJuaW5nLWNvbG9yOiAjZmZhZTAwICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSB7XG4gICAgJGFsZXJ0LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkYWxlcnQtY29sb3I6ICNjYzRiMzcgIWdsb2JhbDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1oZWxwZXJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGVhZC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0b3AgbWFyZ2luIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBzdGF0aXN0aWMgbnVtYmVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10eXBvZ3JhcGh5LWhlbHBlcnMge1xuICAvLyBVc2UgdG8gY3JlYXRlIGEgc3ViaGVhZGluZyB1bmRlciBhIG1haW4gaGVhZGVyXG4gIC8vIE1ha2Ugc3VyZSB5b3UgcGFpciB0aGUgdHdvIGVsZW1lbnRzIGluIGEgPGhlYWRlcj4gZWxlbWVudCwgbGlrZSB0aGlzOlxuICAvLyA8aGVhZGVyPlxuICAvLyAgIDxoMT5IZWFkaW5nPC9oMT5cbiAgLy8gICA8aDI+U3ViaGVhZGluZzwvaDI+XG4gIC8vIDwvaGVhZGVyPlxuICAuc3ViaGVhZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAkc3ViaGVhZGVyLW1hcmdpbi10b3A7XG4gICAgbWFyZ2luLWJvdHRvbTogJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tO1xuXG4gICAgZm9udC13ZWlnaHQ6ICRzdWJoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRzdWJoZWFkZXItbGluZWhlaWdodDtcbiAgICBjb2xvcjogJHN1YmhlYWRlci1jb2xvcjtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhbiBpbnRyb2R1Y3RvcnkgbGVhZCwgZGVjaywgYmx1cmIsIGV0Yy5cbiAgLmxlYWQge1xuICAgIGZvbnQtc2l6ZTogJGxlYWQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGVhZC1saW5laGVpZ2h0O1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGEgbGFyZ2UgbnVtYmVyIHRvIGRpc3BsYXkgYSBzdGF0aXN0aWNcbiAgLnN0YXQge1xuICAgIGZvbnQtc2l6ZTogJHN0YXQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgcCArICYge1xuICAgICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgfVxuICB9XG5cbiAgdWwsIG9sIHtcbiAgICAvLyBVc2UgdG8gcmVtb3ZlIG51bWJlcnMgZnJvbSBvcmRlcmVkIGxpc3QgJiBidWxsZXRzIGZyb20gdW5vcmRlcmVkIGxpc3RcbiAgICAmLm5vLWJ1bGxldCB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AbWl4aW4gZm91bmRhdGlvbi10ZXh0LWFsaWdubWVudCB7XG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRhbGlnbiBpbiAobGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS10ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAudGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBJZiBgdHJ1ZWAsIGFsbCBlbGVtZW50cyB3aWxsIGhhdmUgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMgd2hlbiBwcmludGVkLCB0byBzYXZlIG9uIGluay5cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGdyb3VwIGdsb2JhbFxuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlICFkZWZhdWx0O1xuJHByaW50LWhyZWZzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZS1hbGxcblxuQG1peGluIGZvdW5kYXRpb24tcHJpbnQtc3R5bGVzIHtcbiAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICAqIHtcbiAgICAgIEBpZiAkcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHMge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgIHRhYmxlLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0Ym9keS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdHIuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgdGguc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuICAgIC8vIERpc3BsYXkgdGhlIFVSTCBvZiBhIGxpbmsgYWZ0ZXIgdGhlIHRleHRcbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cbiAgICBAaWYgJHByaW50LWhyZWZzIHtcbiAgICAgIGFbaHJlZl06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIoaHJlZikgJyknOyB9XG4gICAgfVxuXG4gICAgLy8gRG9uJ3QgZGlzcGxheSB0aGUgVVJMIGZvciBpbWFnZXMgb3IgSmF2YVNjcmlwdC9pbnRlcm5hbCBsaW5rc1xuICAgIC5pciBhOmFmdGVyLFxuICAgIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gICAgYVtocmVmXj0nIyddOmFmdGVyIHsgY29udGVudDogJyc7IH1cblxuICAgIC8vIERpc3BsYXkgd2hhdCBhbiBhYmJyZXZpYXRpb24gc3RhbmRzIGZvciBhZnRlciB0aGUgdGV4dFxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKHRpdGxlKSAnKSc7IH1cblxuICAgIC8vIFByZXZlbnQgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBhIGJsb2NrcXVvdGUgb3IgcHJlZm9ybWF0dGVkIHRleHQgYmxvY2tcbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIGg1YnAuY29tL3RcbiAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuXG4gICAgdHIsXG4gICAgaW1nIHsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG5cbiAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4gICAgQHBhZ2UgeyBtYXJnaW46IDAuNWNtOyB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgLy8gQXZvaWQgcGFnZSBicmVha3MgYWZ0ZXIgYSBoZWFkaW5nXG4gICAgaDIsXG4gICAgaDMgeyBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuXG4gICAgLy8gSGVscGVyIHRvIHJlLWFsbG93IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgY2VydGFpbiBlbGVtZW50cyAoZS5nLiBwcmUsIGJsb2NrcXVvdGUsIHRyKVxuICAgIC5wcmludC1icmVhay1pbnNpZGUge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmbGV4LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZXMgYSBjb250YWluZXIgZm9yIGEgZmxleCBncmlkIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxMaXN0fSAkYmVoYXZpb3IgW251bGxdXG4vLy8gICBNb2RpZmljYXRpb25zIHRvIHRoZSBkZWZhdWx0IGdyaWQgc3R5bGVzLiBgbmVzdGAgaW5kaWNhdGVzIHRoZSByb3cgd2lsbCBiZSBwbGFjZWQgaW5zaWRlIGFub3RoZXIgcm93LiBgY29sbGFwc2VgIGluZGljYXRlcyB0aGF0IHRoZSBjb2x1bW5zIGluc2lkZSB0aGlzIHJvdyB3aWxsIG5vdCBoYXZlIHBhZGRpbmcuIGBuZXN0IGNvbGxhcHNlYCBjb21iaW5lcyBib3RoIGJlaGF2aW9ycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbJGdyaWQtcm93LXdpZHRoXSBNYXhpbXVtIHNpemUgb2YgdGhlIHJvdy4gU2V0IHRvIGBleHBhbmRgIHRvIG1ha2UgdGhlIHJvdyB0YWtpbmcgdGhlIGZ1bGwgd2lkdGguXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIFtudWxsXSAtIE51bWJlciBvZiBjb2x1bW5zIHRvIHVzZSBmb3IgdGhpcyByb3cuIElmIHNldCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSwgdGhlIGdsb2JhbCBjb2x1bW4gY291bnQgd2lsbCBiZSB1c2VkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGJhc2UgW3RydWVdIC0gU2V0IHRvIGBmYWxzZWAgdG8gcHJldmVudCBiYXNpYyBzdHlsZXMgZnJvbSBiZWluZyBvdXRwdXQuIFVzZWZ1bCBpZiB5b3UncmUgY2FsbGluZyB0aGlzIG1peGluIG9uIHRoZSBzYW1lIGVsZW1lbnQgdHdpY2UsIGFzIGl0IHByZXZlbnRzIGR1cGxpY2F0ZSBDU1Mgb3V0cHV0LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHdyYXAgW3RydWVdIC0gU2V0IHRvIGBmYWxzZWAgdG8gaGF2ZSByb3cgd3JhcHBpbmcgYmVoYXZpb3Igc2V0IHRvIG5vd3JhcFxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIHdoZW4gaW52ZXJ0aW5nIG1hcmdpbnMsIGluIGNhc2UgdGhlIHJvdyBpcyBuZXN0ZWQuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZmxleC1ncmlkLXJvdyhcbiAgJGJlaGF2aW9yOiBudWxsLFxuICAkc2l6ZTogJGdyaWQtcm93LXdpZHRoLFxuICAkY29sdW1uczogbnVsbCxcbiAgJGJhc2U6IHRydWUsXG4gICR3cmFwOiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gICRtYXJnaW46IGF1dG87XG4gICR3cmFwOiBpZigkd3JhcCwgd3JhcCwgbm93cmFwKTtcblxuICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBuZXN0KSAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1uZXN0KCRndXR0ZXJzKTtcblxuICAgIEBpZiBpbmRleCgkYmVoYXZpb3IsIGNvbGxhcHNlKSAhPSBudWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZSgkc2l6ZSk7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgQGlmICRiYXNlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93ICR3cmFwO1xuICB9XG5cbiAgQGlmICRjb2x1bW5zICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtY29udGV4dCgkY29sdW1ucywgJGJhc2UpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQ2FsY3VsYXRlcyB0aGUgYGZsZXhgIHByb3BlcnR5IGZvciBhIGZsZXggZ3JpZCBjb2x1bW4uIEl0IGFjY2VwdHMgYWxsIG9mIHRoZSBzYW1lIHZhbHVlcyBhcyB0aGUgYmFzaWMgYGdyaWQtY29sdW1uKClgIGZ1bmN0aW9uLCBhbG9uZyB3aXRoIHR3byBleHRyYXM6XG4vLy8gICAtIGBleHBhbmRgICh0aGUgZGVmYXVsdCkgd2lsbCBtYWtlIHRoZSBjb2x1bW4gZXhwYW5kIHRvIGZpbGwgc3BhY2UuXG4vLy8gICAtIGBzaHJpbmtgIHdpbGwgbWFrZSB0aGUgY29sdW1uIGNvbnRyYWN0LCBzbyBpdCBvbmx5IHRha2VzIHVwIHRoZSBob3Jpem9udGFsIHNwYWNlIGl0IG5lZWRzLlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGNvbHVtbnMgW2V4cGFuZF0gLSBXaWR0aCBvZiB0aGUgY29sdW1uLlxuQGZ1bmN0aW9uIGZsZXgtZ3JpZC1jb2x1bW4oJGNvbHVtbnM6IGV4cGFuZCkge1xuICAkZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcblxuICBAaWYgJGNvbHVtbnMgPT0gc2hyaW5rIHtcbiAgICAkZmxleDogMCAwIGF1dG87XG4gIH1cbiAgQGVsc2UgaWYgJGNvbHVtbnMgIT0gZXhwYW5kIHtcbiAgICAkZmxleDogMCAwIGdyaWQtY29sdW1uKCRjb2x1bW5zKTtcbiAgfVxuXG4gIEByZXR1cm4gJGZsZXg7XG59XG5cbi8vLyBDcmVhdGVzIGEgY29sdW1uIGZvciBhIGZsZXggZ3JpZC4gQnkgZGVmYXVsdCwgdGhlIGNvbHVtbiB3aWxsIHN0cmV0Y2ggdG8gdGhlIGZ1bGwgd2lkdGggb2YgaXRzIGNvbnRhaW5lciwgYnV0IHRoaXMgY2FuIGJlIG92ZXJyaWRkZW4gd2l0aCBzaXppbmcgY2xhc3Nlcywgb3IgYnkgdXNpbmcgdGhlIGB1bnN0YWNrYCBjbGFzcyBvbiB0aGUgcGFyZW50IGZsZXggcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGNvbHVtbnMgW2V4cGFuZF0gLSBXaWR0aCBvZiB0aGUgY29sdW1uLiBSZWZlciB0byB0aGUgYGZsZXgtZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMgd2lkdGguIFNlZSB0aGUgYGdyaWQtY29sdW1uLWd1dHRlcmAgbWl4aW4uXG5AbWl4aW4gZmxleC1ncmlkLWNvbHVtbihcbiAgJGNvbHVtbnM6IGV4cGFuZCxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICAvLyBCYXNlIHByb3BlcnRpZXNcbiAgQGluY2x1ZGUgZmxleC1ncmlkLXNpemUoJGNvbHVtbnMpO1xuXG4gIC8vIEd1dHRlcnNcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKCRndXR0ZXJzOiAkZ3V0dGVycyk7XG5cbiAgLy8gZml4ZXMgcmVjZW50IENocm9tZSB2ZXJzaW9uIG5vdCBsaW1pdGluZyBjaGlsZCB3aWR0aFxuICAvLyBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zNDkzNDU4Ni93aGl0ZS1zcGFjZS1ub3dyYXAtYW5kLWZsZXhib3gtZGlkLW5vdC13b3JrLWluLWNocm9tZVxuICBAaWYgJGNvbHVtbnMgPT0gZXhwYW5kIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBibG9jayBncmlkIGZvciBhIGZsZXggZ3JpZCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgY29sdW1ucyB0byBkaXNwbGF5IG9uIGVhY2ggcm93LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgLSBTZWxlY3RvciB0byB1c2UgdG8gdGFyZ2V0IGNvbHVtbnMgd2l0aGluIHRoZSByb3cuXG5AbWl4aW4gZmxleC1ncmlkLWxheW91dChcbiAgJG4sXG4gICRzZWxlY3RvcjogJy5jb2x1bW4nXG4pIHtcbiAgZmxleC13cmFwOiB3cmFwO1xuXG4gID4gI3skc2VsZWN0b3J9IHtcbiAgICAkcGN0OiBwZXJjZW50YWdlKDEvJG4pO1xuXG4gICAgZmxleDogMCAwICRwY3Q7XG4gICAgbWF4LXdpZHRoOiAkcGN0O1xuICB9XG59XG5cbi8vLyBDaGFuZ2VzIHRoZSB3aWR0aCBmbGV4IGdyaWQgY29sdW1uLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRjb2x1bW5zIFtleHBhbmRdIC0gV2lkdGggb2YgdGhlIGNvbHVtbi4gUmVmZXIgdG8gdGhlIGBmbGV4LWdyaWQtY29sdW1uKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG5AbWl4aW4gZmxleC1ncmlkLXNpemUoJGNvbHVtbnM6IG51bGwpIHtcbiAgJGNvbHVtbnM6ICRjb2x1bW5zIG9yIGV4cGFuZDtcblxuICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKCRjb2x1bW5zKTtcblxuICAvLyBtYXgtd2lkdGggZml4ZXMgSUUgMTAvMTEgbm90IHJlc3BlY3RpbmcgdGhlIGZsZXgtYmFzaXMgcHJvcGVydHlcbiAgQGlmICRjb2x1bW5zICE9IGV4cGFuZCBhbmQgJGNvbHVtbnMgIT0gc2hyaW5rIHtcbiAgICBtYXgtd2lkdGg6IGdyaWQtY29sdW1uKCRjb2x1bW5zKTtcbiAgfVxufVxuXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtZ3JpZCB7XG4gIC8vIFJvd1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBmbGV4LWdyaWQtcm93O1xuXG4gICAgLy8gTmVzdGluZyBiZWhhdmlvclxuICAgICYgLnJvdyB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtcm93KG5lc3QsICRiYXNlOiBmYWxzZSk7XG5cbiAgICAgICYuY29sbGFwc2Uge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEV4cGFuZGVkIHJvd1xuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZShleHBhbmQpO1xuXG4gICAgICAucm93IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm5vdCguZXhwYW5kZWQpIC5yb3cge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZShleHBhbmQpO1xuICAgIH1cblxuICAgICYuY29sbGFwc2Uge1xuICAgICAgPiAuY29sdW1uIHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtY29sbGFwc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gVW5kbyBuZWdhdGl2ZSBtYXJnaW5zXG4gICAgLy8gRnJvbSBjb2xsYXBzZWQgY2hpbGRcbiAgICAmLmlzLWNvbGxhcHNlLWNoaWxkLFxuICAgICYuY29sbGFwc2UgPiAuY29sdW1uID4gLnJvdyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cblxuICAvLyBDb2x1bW5cbiAgLmNvbHVtbiB7XG4gICAgQGluY2x1ZGUgZmxleC1ncmlkLWNvbHVtbjtcbiAgfVxuXG4gIC8vIENvbHVtbiByb3dcbiAgLy8gVGhlIGRvdWJsZSAucm93IGNsYXNzIGlzIG5lZWRlZCB0byBidW1wIHVwIHRoZSBzcGVjaWZpY2l0eVxuICAuY29sdW1uLnJvdy5yb3cge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gVG8gcHJvcGVybHkgbmVzdCBhIGNvbHVtbiByb3csIHBhZGRpbmcgYW5kIG1hcmdpbiBpcyByZW1vdmVkXG4gIC5yb3cgLmNvbHVtbi5yb3cucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbi1jb3VudCB7XG4gICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAuI3skLXpmLXNpemV9LSN7JGl9IHtcbiAgICAgICAgZmxleDogZmxleC1ncmlkLWNvbHVtbigkaSk7XG4gICAgICAgIG1heC13aWR0aDogZ3JpZC1jb2x1bW4oJGkpO1xuICAgICAgfVxuXG4gICAgICAvLyBPZmZzZXRzXG4gICAgICAkbzogJGkgLSAxO1xuXG4gICAgICAuI3skLXpmLXNpemV9LW9mZnNldC0jeyRvfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLW9mZnNldCgkbyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQmxvY2sgZ3JpZFxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGJsb2NrLWdyaWQtbWF4IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtbGF5b3V0KCRpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJC16Zi1zaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIC8vIFNpemluZyAoZXhwYW5kKVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXNpemUpIHtcbiAgICAgICAgLiN7JC16Zi1zaXplfS1leHBhbmQge1xuICAgICAgICAgIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBBdXRvLXN0YWNraW5nL3Vuc3RhY2tpbmdcbiAgICAgIEBhdC1yb290ICh3aXRob3V0OiBtZWRpYSkge1xuICAgICAgICAucm93LiN7JC16Zi1zaXplfS11bnN0YWNrIHtcbiAgICAgICAgICA+IC5jb2x1bW4ge1xuICAgICAgICAgICAgZmxleDogZmxleC1ncmlkLWNvbHVtbigxMDAlKTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXNpemUpIHtcbiAgICAgICAgICAgICAgZmxleDogZmxleC1ncmlkLWNvbHVtbigpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgY29sbGFwc2luZ1xuICAgIC4jeyQtemYtc2l6ZX0tY29sbGFwc2Uge1xuICAgICAgPiAuY29sdW1uIHsgQGluY2x1ZGUgZ3JpZC1jb2wtY29sbGFwc2U7IH1cbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LXVuY29sbGFwc2Uge1xuICAgICAgPiAuY29sdW1uIHsgQGluY2x1ZGUgZ3JpZC1jb2wtZ3V0dGVyKCQtemYtc2l6ZSk7IH1cbiAgICB9XG4gIH1cblxuICAvLyBTaXppbmcgKHNocmluaylcbiAgLnNocmluayB7XG4gICAgZmxleDogZmxleC1ncmlkLWNvbHVtbihzaHJpbmspO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIEJsb2NrIGdyaWQgY29sdW1uc1xuICAuY29sdW1uLWJsb2NrIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1tYXJnaW47XG4gIH1cblxuICAuY29sdW1ucyB7XG4gICAgQGV4dGVuZCAuY29sdW1uOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHBsYWNlaG9sZGVyLWluLWV4dGVuZFxuXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENoYW5nZSB0aGUgYmVoYXZpb3Igb2YgY29sdW1ucyBkZWZpbmVkIGluc2lkZSB0aGlzIG1peGluIHRvIHVzZSBhIGRpZmZlcmVudCBjb2x1bW4gY291bnQuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyAtIE51bWJlciBvZiBjb2x1bW5zIHRvIHVzZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRyb290IFtmYWxzZV1cbi8vLyAgIElmIGBmYWxzZWAsIHNlbGVjdG9ycyBpbnNpZGUgdGhpcyBtaXhpbiB3aWxsIG5lc3QgaW5zaWRlIHRoZSBwYXJlbnQgc2VsZWN0b3IuXG4vLy8gICBJZiBgdHJ1ZWAsIHNlbGVjdG9ycyB3aWxsIG5vdCBuZXN0LlxuQG1peGluIGdyaWQtY29udGV4dChcbiAgJGNvbHVtbnMsXG4gICRyb290OiBmYWxzZVxuKSB7XG4gIC8vIFN0b3JlIHRoZSBjdXJyZW50IGNvbHVtbiBjb3VudCBzbyBpdCBjYW4gYmUgcmUtc2V0IGxhdGVyXG4gICRvbGQtZ3JpZC1jb2x1bW4tY291bnQ6ICRncmlkLWNvbHVtbi1jb3VudDtcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkY29sdW1ucyAhZ2xvYmFsO1xuXG4gIEBpZiAkcm9vdCB7XG4gICAgQGF0LXJvb3QgeyBAY29udGVudDsgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIG9sZCBjb2x1bW4gY291bnRcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkb2xkLWdyaWQtY29sdW1uLWNvdW50ICFnbG9iYWw7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCByb3cuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyBbbnVsbF0gLSBDb2x1bW4gY291bnQgZm9yIHRoaXMgcm93LiBgbnVsbGAgd2lsbCB1c2UgdGhlIGRlZmF1bHQgY29sdW1uIGNvdW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZHN9ICRiZWhhdmlvciBbbnVsbF1cbi8vLyAgIE1vZGlmaWNhdGlvbnMgdG8gdGhlIGRlZmF1bHQgZ3JpZCBzdHlsZXMuIGBuZXN0YCBpbmRpY2F0ZXMgdGhlIHJvdyB3aWxsIGJlIHBsYWNlZCBpbnNpZGUgYW5vdGhlciByb3cuIGBjb2xsYXBzZWAgaW5kaWNhdGVzIHRoYXQgdGhlIGNvbHVtbnMgaW5zaWRlIHRoaXMgcm93IHdpbGwgbm90IGhhdmUgcGFkZGluZy4gYG5lc3QgY29sbGFwc2VgIGNvbWJpbmVzIGJvdGggYmVoYXZpb3JzLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRjZiBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBpbmNsdWRlIGEgY2xlYXJmaXguXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucy4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLXJvdyhcbiAgJGNvbHVtbnM6IG51bGwsXG4gICRiZWhhdmlvcjogbnVsbCxcbiAgJHNpemU6ICRncmlkLXJvdy13aWR0aCxcbiAgJGNmOiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gICRtYXJnaW46IGF1dG87XG5cbiAgQGlmIGluZGV4KCRiZWhhdmlvciwgbmVzdCkgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctbmVzdCgkZ3V0dGVycyk7XG5cbiAgICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBjb2xsYXBzZSkgIT0gbnVsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LXNpemUoJHNpemUpO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIEBpZiAkY2Yge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG5cbiAgQGlmICRjb2x1bW5zICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtY29udGV4dCgkY29sdW1ucykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBJbnZlcnRzIHRoZSBtYXJnaW5zIG9mIGEgcm93IHRvIG5lc3QgaXQgaW5zaWRlIG9mIGEgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucy4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLXJvdy1uZXN0KCRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICRtYXJnaW46IHJlbS1jYWxjKC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkLXpmLXNpemUpKSAvIDIgKiAtMTtcblxuICAgIG1hcmdpbi1yaWdodDogJG1hcmdpbjtcbiAgICBtYXJnaW4tbGVmdDogJG1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0IGEgZ3JpZCByb3cgc2l6ZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgWyRncmlkLXJvdy13aWR0aF0gTWF4aW11bSBzaXplIG9mIHRoZSByb3cuIFNldCB0byBgZXhwYW5kYCB0byBtYWtlIHRoZSByb3cgdGFraW5nIHRoZSBmdWxsIHdpZHRoLlxuQG1peGluIGdyaWQtcm93LXNpemUoJHNpemU6ICRncmlkLXJvdy13aWR0aCkge1xuICBAaWYgJHNpemUgPT0gZXhwYW5kIHtcbiAgICAkc2l6ZTogbm9uZTtcbiAgfVxuXG4gIG1heC13aWR0aDogJHNpemU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTZXQgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW5cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkZ3V0dGVyIFthdXRvXVxuLy8vICAgU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMsIGFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHNpbmdsZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIGd1dHRlciB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgYnJlYWtwb2ludCBuYW1lIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHRoZSBjb3JyZXNwb25kaW5nIHNpemUgaW4gdGhlICRndXR0ZXJzIG1hcC5cbi8vLyAgIC0gXCJhdXRvXCIgd2lsbCBtYWtlIHRoZSBndXR0ZXIgcmVzcG9uc2l2ZSwgdXNpbmcgdGhlICRndXR0ZXJzIG1hcCB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZ3V0dGVyKFxuICAkZ3V0dGVyOiBhdXRvLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRndXR0ZXIsICRndXR0ZXJzKSB7XG4gICAgJHBhZGRpbmc6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpIC8gMjtcblxuICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gIH1cbn1cblxuLy8vIENvbGxhcHNlIHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uIGJ5IHJlbW92aW5nIHRoZSBwYWRkaW5nLiAqKk5vdGU6Kiogb25seSB1c2UgdGhpcyBtaXhpbiB3aXRoaW4gYSBicmVha3BvaW50LiBUbyBjb2xsYXBzZSBhIGNvbHVtbidzIGd1dHRlcnMgb24gYWxsIHNjcmVlbiBzaXplcywgdXNlIHRoZSBgJGd1dHRlcmAgcGFyYW1ldGVyIG9mIHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4gaW5zdGVhZC5cbkBtaXhpbiBncmlkLWNvbHVtbi1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigwKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWd1dHRlcigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZ3V0dGVyXG5AbWl4aW4gZ3JpZC1jb2wtZ3V0dGVyKFxuICAkZ3V0dGVyOiBhdXRvLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyLCAkZ3V0dGVycyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1jb2xsYXBzZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tY29sbGFwc2VcbkBtaXhpbiBncmlkLWNvbC1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWNvbGxhcHNlO1xufVxuXG4vLy8gU2V0cyBib3R0b20gbWFyZ2luIG9uIGdyaWQgY29sdW1ucyB0byBtYXRjaCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJG1hcmdpbiBbYXV0b11cbi8vLyAgIFRoZSBib3R0b20gbWFyZ2luIG9uIGdyaWQgY29sdW1ucywgYWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgc2luZ2xlIHZhbHVlIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBicmVha3BvaW50IG5hbWUgd2lsbCBtYWtlIHRoZSBtYXJnaW4gdGhlIGNvcnJlc3BvbmRpbmcgc2l6ZSBpbiB0aGUgJG1hcmdpbnMgbWFwLlxuLy8vICAgLSBcImF1dG9cIiB3aWxsIG1ha2UgdGhlIG1hcmdpbiByZXNwb25zaXZlLCB1c2luZyB0aGUgJG1hcmdpbnMgbWFwIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXJnaW5zIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtY29sdW1uLW1hcmdpbiAoXG4gICRtYXJnaW46IGF1dG8sXG4gICRtYXJnaW5zOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJG1hcmdpbiwgJG1hcmdpbnMpIHtcbiAgICAkbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSk7XG4gICAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1ib3R0b207XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBSZXBvc2l0aW9uIGEgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJHBvc2l0aW9uIC0gSXQgY2FuIGJlOlxuLy8vICAgKiBBIG51bWJlcjogVGhlIGNvbHVtbiB3aWxsIG1vdmUgZXF1YWwgdG8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4gY291bnRcbi8vLyAgICAgc3BlY2lmaWVkLiBBIHBvc2l0aXZlIG51bWJlciB3aWxsIHB1c2ggdGhlIGNvbHVtbiB0byB0aGUgcmlnaHQsIHdoaWxlXG4vLy8gICAgIGEgbmVnYXRpdmUgbnVtYmVyIHdpbGwgcHVsbCBpdCB0byB0aGUgbGVmdC5cbi8vLyAgICogYGNlbnRlcmA6IENvbHVtbiB3aWxsIGJlIGNlbnRlcmVkXG4vLy8gICAqIGBhdXRvYDogQ29sdW1uIHdpbGwgYmUgcHVzaGVkIHRvIHRoZSBsZWZ0IChvciB0byB0aGUgcmlnaHQgZm9yIHRoZSBsYXN0IGNvbHVtbikuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKSB7XG4gIC8vIEF1dG8gcG9zaXRpb25pbmdcbiAgQGlmICRwb3NpdGlvbiA9PSBhdXRvIHtcbiAgICAmLCAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgICAgIGNsZWFyOiBub25lO1xuICAgIH1cblxuICAgIC8vIExhc3QgY29sdW1uIGFsaWdubWVudFxuICAgIEBpZiAkZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZSB7XG4gICAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogJGdsb2JhbC1yaWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQdXNoL3B1bGxcbiAgQGVsc2UgaWYgdHlwZS1vZigkcG9zaXRpb24pID09ICdudW1iZXInIHtcbiAgICAkb2Zmc2V0OiBwZXJjZW50YWdlKCRwb3NpdGlvbiAvICRncmlkLWNvbHVtbi1jb3VudCk7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkb2Zmc2V0O1xuICB9XG5cbiAgLy8gQ2VudGVyIHBvc2l0aW9uaW5nXG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBjZW50ZXIge1xuICAgICYsICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1dyb25nIHN5bnRheCBmb3IgZ3JpZC1jb2x1bW4tcG9zaXRpb24oKS4gRW50ZXIgYSBwb3NpdGl2ZSBvciBuZWdhdGl2ZSBudW1iZXIsIFwiY2VudGVyXCIgb3IgXCJhdXRvXCIuJztcbiAgfVxufVxuXG4vLy8gUmVzZXQgYSBwb3NpdGlvbiBkZWZpbml0aW9uLlxuQG1peGluIGdyaWQtY29sdW1uLXVucG9zaXRpb24ge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1wb3NpdGlvbihhdXRvKTtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLy8vIE9mZnNldHMgYSBjb2x1bW4gdG8gdGhlIHJpZ2h0IGJ5IGAkbmAgY29sdW1ucy5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkbiAtIFdpZHRoIHRvIG9mZnNldCBieS4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYGdyaWQtY29sdW1uKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuQG1peGluIGdyaWQtY29sdW1uLW9mZnNldCgkbikge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiBncmlkLWNvbHVtbigkbik7XG59XG5cbi8vLyBEaXNhYmxlIHRoZSBkZWZhdWx0IGJlaGF2aW9yIG9mIHRoZSBsYXN0IGNvbHVtbiBpbiBhIHJvdyBhbGlnbmluZyB0byB0aGUgb3Bwb3NpdGUgZWRnZS5cbkBtaXhpbiBncmlkLWNvbHVtbi1lbmQge1xuICAvLyBUaGlzIGV4dHJhIHNwZWNpZmljaXR5IGlzIHJlcXVpcmVkIGZvciB0aGUgcHJvcGVydHkgdG8gYmUgYXBwbGllZFxuICAmOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgfVxufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tcG9zaXRpb24oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtcG9zKCRwb3NpdGlvbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1wb3NpdGlvbigkcG9zaXRpb24pO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tdW5wb3NpdGlvblxuQG1peGluIGdyaWQtY29sLXVucG9zIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbjtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLW9mZnNldCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tb2Zmc2V0XG5AbWl4aW4gZ3JpZC1jb2wtb2ZmKCRuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLW9mZnNldCgkbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1lbmQoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWVuZFxuQG1peGluIGdyaWQtY29sLWVuZCB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWVuZDtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvblxuLy8vL1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGJ1dHRvbiBlbGVtZW50cy5cbi8vLyBAdHlwZSBGb250XG4kYnV0dG9uLWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYXJvdW5kIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmaWxsIGZvciBidXR0b25zLiBDYW4gZWl0aGVyIGJlIGBzb2xpZGAgb3IgYGhvbGxvd2AuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGJ1dHRvbi1maWxsOiBzb2xpZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRpdmUgZm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgd2lkdGggZm9yIGhvbGxvdyBvdXRsaW5lIGJ1dHRvbnNcbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBvcGFjaXR5IGZvciBhIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGhvbGxvdyBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbDogZmxpcCBmcm9tIG1hcmdpbi1yaWdodCB0byBtYXJnaW4tbGVmdCBmb3IgZGVmYXVsdHNcbkBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbn1cblxuLy8vIHRyYW5zaXRpb25zIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBBZGRpdGlvbmFsIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgLmV4cGFuZGVkXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJ1dHRvbi1yZXNwb25zaXZlLWV4cGFuZGVkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gVE9ETzogRG9jdW1lbnQgYnV0dG9uLWJhc2UoKSBtaXhpblxuQG1peGluIGJ1dHRvbi1iYXNlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogJGJ1dHRvbi1tYXJnaW47XG5cbiAgQGlmICh0eXBlLW9mKCRidXR0b24tcGFkZGluZykgPT0gJ21hcCcpIHtcbiAgICBAZWFjaCAkc2l6ZSwgJHBhZGRpbmcgaW4gJGJ1dHRvbi1wYWRkaW5nIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmc7XG4gIH1cblxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gIHRyYW5zaXRpb246ICRidXR0b24tdHJhbnNpdGlvbjtcbiAgZm9udC1mYW1pbHk6ICRidXR0b24tZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogbWFwLWdldCgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vLyBFeHBhbmRzIGEgYnV0dG9uIHRvIG1ha2UgaXQgZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgdGhlIGV4cGFuZCBiZWhhdmlvci4gU2V0IHRvIGBmYWxzZWAgdG8gcmV2ZXJzZSB0aGlzIGJlaGF2aW9yLlxuQG1peGluIGJ1dHRvbi1leHBhbmQoJGV4cGFuZDogdHJ1ZSkge1xuICBAaWYgJGV4cGFuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tc3R5bGUoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgQGlmICRiYWNrZ3JvdW5kLWhvdmVyID09IGF1dG8ge1xuICAgICRiYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzKTtcbiAgfVxuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgYmFja2dyb3VuZCBmaWxsIG9uIGhvdmVyIGFuZCBmb2N1cyBmb3IgaG9sbG93IGJ1dHRvbnMuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdyB7XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0ge1xuICAgICYsXG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1ob2xsb3ctc3R5bGUoXG4gICRjb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3MsXG4gICRib3JkZXItd2lkdGg6ICRidXR0b24taG9sbG93LWJvcmRlci13aWR0aFxuKSB7XG4gICRjb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkaG92ZXItbGlnaHRuZXNzKTtcblxuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgJi5kaXNhYmxlZCxcbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZGlzYWJsZWQgc3R5bGVzIHRvIGEgYnV0dG9uIGJ5IGZhZGluZyB0aGUgZWxlbWVudCwgcmVzZXRpbmcgdGhlIGN1cnNvciwgYW5kIGRpc2FibGluZyBwb2ludGVyIGV2ZW50cy5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgZGlzYWJsZWQgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tZGlzYWJsZWQoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvclxuKSB7XG4gIEBpZiAkY29sb3IgPT0gYXV0byB7XG4gICAgJGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGJ1dHRvbi1jb2xvciwgJGJ1dHRvbi1jb2xvci1hbHQpKTtcbiAgfVxuXG4gIG9wYWNpdHk6ICRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vLyBBZGRzIGEgZHJvcGRvd24gYXJyb3cgdG8gYSBidXR0b24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIFswLjRlbV0gLSBTaXplIG9mIHRoZSBhcnJvdy4gV2UgcmVjb21tZW5kIHVzaW5nIGFuIGBlbWAgdmFsdWUgc28gdGhlIHRyaWFuZ2xlIHNjYWxlcyB3aGVuIHVzZWQgaW5zaWRlIGRpZmZlcmVudCBzaXplcyBvZiBidXR0b25zLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbd2hpdGVdIC0gQ29sb3Igb2YgdGhlIGFycm93LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb2Zmc2V0IFskYnV0dG9uLXBhZGRpbmddIC0gRGlzdGFuY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0IG9mIHRoZSBidXR0b24uIERlZmF1bHRzIHRvIHdoYXRldmVyIHRoZSByaWdodCBwYWRkaW5nIG9mIGEgYnV0dG9uIGlzLlxuQG1peGluIGJ1dHRvbi1kcm9wZG93bihcbiAgJHNpemU6IDAuNGVtLFxuICAkY29sb3I6ICR3aGl0ZSxcbiAgJG9mZnNldDogZ2V0LXNpZGUoJGJ1dHRvbi1wYWRkaW5nLCByaWdodClcbikge1xuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRzaXplLCAkY29sb3IsIGRvd24pO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtOyAvLyBBbGlnbnMgdGhlIGFycm93IHdpdGggdGhlIHRleHQgb2YgdGhlIGJ1dHRvblxuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtcmlnaHR9O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgYWxsIHN0eWxlcyBmb3IgYSBidXR0b24uIEZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb3ZlciBzdHlsZXMsIHVzZSB0aGUgaW5kaXZpZHVhbCBidXR0b24gbWl4aW5zLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBtYWtlIHRoZSBidXR0b24gZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3R5bGUgW3NvbGlkXSAtIFNldCB0byBgaG9sbG93YCB0byBjcmVhdGUgYSBob2xsb3cgYnV0dG9uLiBUaGUgY29sb3IgZGVmaW5lZCBpbiBgJGJhY2tncm91bmRgIHdpbGwgYmUgdXNlZCBhcyB0aGUgcHJpbWFyeSBjb2xvciBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbihcbiAgJGV4cGFuZDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJHN0eWxlOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcblxuICBAaWYgJHN0eWxlID09IHNvbGlkIHtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IpO1xuICB9XG4gIEBlbHNlIGlmICRzdHlsZSA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkYmFja2dyb3VuZCk7XG4gIH1cblxuICBAaWYgJGV4cGFuZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24ge1xuICAuYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b247XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7IH1cblxuICAgIEBpZiAkYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQge1xuICAgICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0gb25seSkge1xuICAgICAgICAgICYuI3skc2l6ZX0tb25seS1leHBhbmRlZCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0gZG93bikge1xuICAgICAgICAgICAgJi4jeyRzaXplfS1kb3duLWV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9KSB7XG4gICAgICAgICAgICAmLiN7JHNpemV9LWV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDb2xvcnNcbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuI3skbmFtZX0uZHJvcGRvd246OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdHlsZVxuICAgICYuZGlzYWJsZWQsXG4gICAgJltkaXNhYmxlZF0ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkO1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kaXNhYmxlZCgkY29sb3IsIGF1dG8pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSG9sbG93IHN0eWxlXG4gICAgQGlmICRidXR0b24tZmlsbCAhPSBob2xsb3cge1xuICAgICAgJi5ob2xsb3cge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlO1xuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDbGVhciBzdHlsZVxuICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gY2xlYXIge1xuICAgICAgJi5jbGVhciB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGU7XG5cbiAgICAgICAgJiwgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgJiwgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG5cbiAgICAgICAgICAgICYsICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgJixcbiAgICAgICAgICAgICAgJi5kaXNhYmxlZCxcbiAgICAgICAgICAgICAgJltkaXNhYmxlZF0ge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEcm9wZG93biBhcnJvd1xuICAgICYuZHJvcGRvd24ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRyb3Bkb3duO1xuXG4gICAgICBAaWYgJGJ1dHRvbi1maWxsID09IGhvbGxvdyB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5ob2xsb3cge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQnV0dG9uIHdpdGggZHJvcGRvd24gYXJyb3cgb25seVxuICAgICYuYXJyb3ctb25seTo6YWZ0ZXIge1xuICAgICAgdG9wOiAtMC4xZW07XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgfVxuICB9XG5cbiAgYS5idXR0b24geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbGFiZWxcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGUgdGV4dCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtY29sb3ItYWx0OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcmluZyBjbGFzc2VzLiBBIG1hcCBvZiBjbGFzc2VzIHRvIG91dHB1dCBpbiB5b3VyIENTUywgbGlrZSBgLnNlY29uZGFyeWAsIGAuc3VjY2Vzc2AsIGFuZCBzbyBvbi5cbi8vLyBAdHlwZSBNYXBcbiRsYWJlbC1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1mb250LXNpemU6IDAuOHJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLXBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgb2YgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYmFzZSBzdHlsZXMgZm9yIGEgbGFiZWwuXG5AbWl4aW4gbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6ICRsYWJlbC1wYWRkaW5nO1xuXG4gIGJvcmRlci1yYWRpdXM6ICRsYWJlbC1yYWRpdXM7XG5cbiAgZm9udC1zaXplOiAkbGFiZWwtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogMTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1sYWJlbCB7XG4gIC5sYWJlbCB7XG4gICAgQGluY2x1ZGUgbGFiZWw7XG5cbiAgICBiYWNrZ3JvdW5kOiAkbGFiZWwtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGxhYmVsLWNvbG9yO1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkbGFiZWwtcGFsZXR0ZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkY29sb3IsICgkbGFiZWwtY29sb3IsICRsYWJlbC1jb2xvci1hbHQpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgcHJvZ3Jlc3MgYmFyIGNvbnRhaW5lci5cbkBtaXhpbiBwcm9ncmVzcy1jb250YWluZXIge1xuICBoZWlnaHQ6ICRwcm9ncmVzcy1oZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206ICRwcm9ncmVzcy1tYXJnaW4tYm90dG9tO1xuICBib3JkZXItcmFkaXVzOiAkcHJvZ3Jlc3MtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFja2dyb3VuZDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5uZXIgbWV0ZXIgb2YgYSBwcm9ncmVzcyBiYXIuXG5AbWl4aW4gcHJvZ3Jlc3MtbWV0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ7XG5cbiAgQGlmIGhhcy12YWx1ZSgkcHJvZ3Jlc3MtcmFkaXVzKSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0ZXh0IGluIHRoZSBwcm9ncmVzcyBtZXRlci5cbkBtaXhpbiBwcm9ncmVzcy1tZXRlci10ZXh0IHtcbiAgQGluY2x1ZGUgYWJzb2x1dGUtY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICBAaWYgaGFzLXZhbHVlKCRwcm9ncmVzcy1yYWRpdXMpIHtcbiAgICBib3JkZXItcmFkaXVzOiAkcHJvZ3Jlc3MtcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXByb2dyZXNzLWJhciB7XG4gIC8vIFByb2dyZXNzIGJhclxuICAucHJvZ3Jlc3Mge1xuICAgIEBpbmNsdWRlIHByb2dyZXNzLWNvbnRhaW5lcjtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgLnByb2dyZXNzLW1ldGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJbm5lciBtZXRlclxuICAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgIEBpbmNsdWRlIHByb2dyZXNzLW1ldGVyO1xuICB9XG5cbiAgLy8gSW5uZXIgbWV0ZXIgdGV4dFxuICAucHJvZ3Jlc3MtbWV0ZXItdGV4dCB7XG4gICAgQGluY2x1ZGUgcHJvZ3Jlc3MtbWV0ZXItdGV4dDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcHJvZ3Jlc3MtYmFyXG4vLy8vXG5cbi8vLyBIZWlnaHQgb2YgYSBwcm9ncmVzcyBiYXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhIHByb2dyZXNzIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHByb2dyZXNzLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgYSBwcm9ncmVzcyBiYXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcHJvZ3Jlc3MtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGEgcHJvZ3Jlc3MgYmFyJ3MgbWV0ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRwcm9ncmVzcy1tZXRlci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIG9mIGEgcHJvZ3Jlc3MgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHByb2dyZXNzLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXByb2dyZXNzLWVsZW1lbnQge1xuICBwcm9ncmVzcyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkcHJvZ3Jlc3MtaGVpZ2h0O1xuICAgIG1hcmdpbi1ib3R0b206ICRwcm9ncmVzcy1tYXJnaW4tYm90dG9tO1xuXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAgIEBpZiBoYXMtdmFsdWUoJHByb2dyZXNzLXJhZGl1cykge1xuICAgICAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLXJhZGl1cztcbiAgICB9XG5cbiAgICAvLyBGb3IgRmlyZWZveFxuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kOiAkcHJvZ3Jlc3MtYmFja2dyb3VuZDtcblxuICAgICY6Oi13ZWJraXQtcHJvZ3Jlc3MtYmFyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRwcm9ncmVzcy1iYWNrZ3JvdW5kO1xuXG4gICAgICBAaWYgaGFzLXZhbHVlKCRwcm9ncmVzcy1yYWRpdXMpIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLXJhZGl1cztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOjotd2Via2l0LXByb2dyZXNzLXZhbHVlIHtcbiAgICAgIGJhY2tncm91bmQ6ICRwcm9ncmVzcy1tZXRlci1iYWNrZ3JvdW5kO1xuXG4gICAgICBAaWYgaGFzLXZhbHVlKCRwcm9ncmVzcy1yYWRpdXMpIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLXJhZGl1cztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOjotbW96LXByb2dyZXNzLWJhciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkcHJvZ3Jlc3MtbWV0ZXItYmFja2dyb3VuZDtcblxuICAgICAgQGlmIGhhcy12YWx1ZSgkcHJvZ3Jlc3MtcmFkaXVzKSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRwcm9ncmVzcy1yYWRpdXM7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAvLyBJbnRlcm5ldCBFeHBsb3JlciBzZXRzIHRoZSBmaWxsIHdpdGggY29sb3JcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcblxuICAgICAgICAmOjotd2Via2l0LXByb2dyZXNzLXZhbHVlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICAmOjotbW96LXByb2dyZXNzLWJhciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRm9yIElFIGFuZCBFZGdlXG4gICAgJjo6LW1zLWZpbGwgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgQGlmIGhhcy12YWx1ZSgkcHJvZ3Jlc3MtcmFkaXVzKSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRwcm9ncmVzcy1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGFibGVcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIHRhYmxlIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGUgICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSBzdHJpcGVkIHRhYmxlIHJvd3MgYW5kIHRoZSB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtY29sb3Itc2NhbGU6IDUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzdHlsZSBmb3IgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFibGUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtaG92ZXItc2NhbGU6IDIlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdGFuZGFyZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RyaXBlZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIHRhYmxlcyBhcmUgc3RyaXBlZCBieSBkZWZhdWx0IGFuZCBhbiAudW5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuIElmIGBmYWxzZWAsIGEgLnN0cmlwZWQgY2xhc3MgaXMgY3JlYXRlZC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kdGFibGUtaXMtc3RyaXBlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3Igc3RyaXBlZCByb3dzLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIHN0cmlwZSBvbiByb3dzIG9mIHRoZSB0YWJsZXMsIGV4Y2x1ZGluZyB0aGUgaGVhZGVyIGFuZCBmb290ZXIuIElmIGV2ZW4sIHRoZSBldmVuIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgb2RkLCB0aGUgb2RkIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgZW1wdHksIG9yIGFueSBvdGhlciB2YWx1ZSwgdGhlIHRhYmxlIHJvd3Mgd2lsbCBoYXZlIG5vIHN0cmlwaW5nLlxuLy8vIEB0eXBlIEtleXdvcmRcbiR0YWJsZS1zdHJpcGU6IGV2ZW4gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWFkZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSAvIDIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBoZWFkZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgZm9vdGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBmb290ZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBoZWFkZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvb3Rlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIGhlYWRlciB3aGVuIHVzaW5nIHN0YWNrZWQgdGFibGVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGF0IHdoaWNoIHN0YWNrZWQgdGFibGUgc3dpdGNoZXMgZnJvbSBtb2JpbGUgdG8gZGVza3RvcCB2aWV3LlxuLy8vIEB0eXBlIEJyZWFrcG9pbnRcbiR0YWJsZS1zdGFjay1icmVha3BvaW50OiBtZWRpdW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUpIHtcbiAgdHIge1xuICAgIC8vIElmIHN0cmlwZSBpcyBzZXQgdG8gZXZlbiwgZGFya2VuIHRoZSBldmVuIHJvd3MuXG4gICAgQGlmICRzdHJpcGUgPT0gZXZlbiB7XG4gICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBvZGQsIGRhcmtlbiB0aGUgb2RkIHJvd3MuXG4gICAgQGVsc2UgaWYgJHN0cmlwZSA9PSBvZGQge1xuICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtdW5zdHJpcGUoKSB7XG4gIHRyIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSwgJGlzLXN0cmlwZWQ6ICR0YWJsZS1pcy1zdHJpcGVkKSB7XG4gIHRoZWFkLFxuICB0Ym9keSxcbiAgdGZvb3Qge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxuXG4gIC8vIENhcHRpb25cbiAgY2FwdGlvbiB7XG4gICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkXG4gIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtaGVhZC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtaGVhZC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgZm9vdFxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWZvb3QtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWZvb3QtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWQgYW5kIGZvb3RcbiAgdGhlYWQsXG4gIHRmb290IHtcbiAgICAvLyBSb3dzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdHIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLy8gQ2VsbHMgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgdGV4dC1hbGlnbjogI3skZ2xvYmFsLWxlZnR9O1xuICAgIH1cbiAgfVxuXG4gIC8vIFRhYmxlIHJvd3NcbiAgdGJvZHkge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgc3RyaXBlZFxuICBAaWYgJGlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICB9XG5cbiAgICAmLnVuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS11bnN0cmlwZSgpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIG5vdCBzdHJpcGVkXG4gIEBlbHNlIGlmICRpcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICB0Ym9keSB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICB9XG5cbiAgICAmLnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHRhYmxlcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHJpcGUgWyR0YWJsZS1zdHJpcGVdIC0gVXNlcyBrZXl3b3JkcyBldmVuLCBvZGQsIG9yIG5vbmUgdG8gZGFya2VuIHJvd3Mgb2YgdGhlIHRhYmxlLiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyBldmVuLlxuQG1peGluIHRhYmxlKFxuICAkc3RyaXBlOiAkdGFibGUtc3RyaXBlLFxuICAkbmVzdDogZmFsc2Vcbikge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4gIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4gIEBpZiAkbmVzdCB7XG4gICAgQGluY2x1ZGUgLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGF0LXJvb3Qge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGFiaWxpdHkgdG8gaG9yaXpvbnRhbGx5IHNjcm9sbCB0aGUgdGFibGUgd2hlbiB0aGUgY29udGVudCBvdmVyZmxvd3MgaG9yaXpvbnRhbGx5LlxuQG1peGluIHRhYmxlLXNjcm9sbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLy8vIFNsaWdodGx5IGRhcmtlbnMgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG5AbWl4aW4gdGFibGUtaG92ZXIge1xuICB0aGVhZCB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSB0YWJsZSBoZWFkZXIgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICB0Zm9vdCB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSB0YWJsZSBmb290ZXIgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1mb290LXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICB0Ym9keSB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSBub24tc3RyaXBlZCB0YWJsZSByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJHRhYmxlLWlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgLy8gRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEYXJrZW5zIHRoZSBvZGQgc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBlbHNlaWYoJHRhYmxlLXN0cmlwZSA9PSBvZGQpIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgLy8gRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZWlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhY2tlZCB0YWJsZS4gVXNlZnVsIGZvciBzbWFsbC1zY3JlZW4gbGF5b3V0cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRoZWFkZXIgWyRzaG93LWhlYWRlci1mb3Itc3RhY2tlZF0gLSBTaG93IHRoZSBmaXJzdCB0aCBvZiBoZWFkZXIgd2hlbiBzdGFja2VkLlxuQG1peGluIHRhYmxlLXN0YWNrKCRoZWFkZXI6ICRzaG93LWhlYWRlci1mb3Itc3RhY2tlZCkge1xuICBAaWYgJGhlYWRlciB7XG4gICAgdGhlYWQge1xuICAgICAgdGgge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICB0cixcbiAgdGgsXG4gIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYmxlKCRuZXN0OiBmYWxzZSkge1xuICB0YWJsZSB7XG4gICAgQGluY2x1ZGUgdGFibGUoJG5lc3Q6ICRuZXN0KTtcbiAgfVxuXG4gIHRhYmxlLnN0YWNrIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZS1zdGFjay1icmVha3BvaW50IGRvd24pIHtcbiAgICAgIEBpbmNsdWRlIHRhYmxlLXN0YWNrO1xuICAgIH1cbiAgfVxuXG4gIHRhYmxlLnNjcm9sbCB7XG4gICAgQGluY2x1ZGUgdGFibGUtc2Nyb2xsO1xuICB9XG5cbiAgdGFibGUuaG92ZXIge1xuICAgIEBpbmNsdWRlIHRhYmxlLWhvdmVyO1xuICB9XG5cbiAgLnRhYmxlLXNjcm9sbCB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBiYWRnZVxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgYmFkZ2VzLlxuLy8vIEB0eXBlIENvbG9yXG4kYmFkZ2UtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0ZSB0ZXh0IGNvbG9yIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRiYWRnZS1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGJhZGdlLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGJhZGdlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRiYWRnZS1wYWRkaW5nOiAwLjNlbSAhZGVmYXVsdDtcblxuLy8vIE1pbmltdW0gd2lkdGggb2YgYSBiYWRnZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRiYWRnZS1taW53aWR0aDogMi4xZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgYmFkZ2VzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJhZGdlLWZvbnQtc2l6ZTogMC42cmVtICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIHRoZSBiYXNlIHN0eWxlcyBmb3IgYSBiYWRnZS5cbkBtaXhpbiBiYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAkYmFkZ2UtbWlud2lkdGg7XG4gIHBhZGRpbmc6ICRiYWRnZS1wYWRkaW5nO1xuXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICBmb250LXNpemU6ICRiYWRnZS1mb250LXNpemU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tYmFkZ2Uge1xuICAuYmFkZ2Uge1xuICAgIEBpbmNsdWRlIGJhZGdlO1xuXG4gICAgYmFja2dyb3VuZDogJGJhZGdlLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRiYWRnZS1jb2xvcjtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJhZGdlLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGNvbG9yLCAoJGJhZGdlLWNvbG9yLCAkYmFkZ2UtY29sb3ItYWx0KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVhZGNydW1ic1xuLy8vL1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBhIGJyZWFkY3J1bWJzIGNvbnRhaW5lci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgQ29sb3JcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBhY3RpdmUgYnJlYWRjcnVtYiBsaW5rLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBPcGFjaXR5IG9mIGRpc2FibGVkIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGJldHdlZW4gYnJlYWRjcnVtYiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgbWFrZXMgYnJlYWRjcnVtYiBsaW5rcyB1cHBlcmNhc2UuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhZGRzIGEgc2VwZXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIElmIGl0IGV4aXN0cyAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaCBpcyB1c2VkIHRvIGJ1aWxkICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhicmVhZGNydW1icy1pdGVtLXNsYXNoKSB7XG4gICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvcjogJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2g7XG59XG5cbi8vLyBVc2VkIGNoYXJhY3RlciBmb3IgdGhlIGJyZWFkY3J1bWIgc2VwYXJhdG9yLlxuLy8vIEB0eXBlIENvbnRlbnRcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtOiAnLycgIWRlZmF1bHQ7XG5cbi8vLyBVc2VkIGNoYXJhY3RlciBmb3IgdGhlIGJyZWFkY3J1bWIgc2VwYXJhdG9yIGluIHJ0bCBtb2RlLlxuLy8vIEB0eXBlIENvbnRlbnRcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bDogJ1xcXFwnICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYnJlYWRjcnVtYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8gSWYgaXQgZXhpc3RzICRicmVhZGNydW1icy1pdGVtLXNsYXNoLWNvbG9yIGlzIHVzZWQgdG8gYnVpbGQgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2gtY29sb3IpIHtcbiAgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaC1jb2xvcjtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGJyZWFkY3J1bWJzIGNvbnRhaW5lciwgYWxvbmcgd2l0aCB0aGUgc3R5bGVzIGZvciB0aGUgYDxsaT5gIGFuZCBgPGE+YCBlbGVtZW50cyBpbnNpZGUgb2YgaXQuXG5AbWl4aW4gYnJlYWRjcnVtYnMtY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbjogJGJyZWFkY3J1bWJzLW1hcmdpbjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAvLyBJdGVtIHdyYXBwZXJcbiAgbGkge1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtbGVmdH07XG5cbiAgICBmb250LXNpemU6ICRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgICBAaWYgJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgQGlmICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvciB7XG4gICAgICAvLyBOZWVkIHRvIGVzY2FwZSB0aGUgYmFja3NsYXNoXG4gICAgICAkc2VwYXJhdG9yOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdsdHInLCAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbSwgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW0tcnRsKTtcblxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBtYXJnaW46IDAgJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luO1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgY29udGVudDogJHNlcGFyYXRvcjtcbiAgICAgICAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW47XG4gICAgfVxuICB9XG5cbiAgLy8gUGFnZSBsaW5rc1xuICBhIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1icmVhZGNydW1icyB7XG4gIC5icmVhZGNydW1icyB7XG4gICAgQGluY2x1ZGUgYnJlYWRjcnVtYnMtY29udGFpbmVyO1xuXG4gICAgLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjYWxsb3V0XG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmFkZSB2YWx1ZSBmb3IgY2FsbG91dCBiYWNrZ3JvdW5kcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgc3R5bGUgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIExpc3RcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGlubmVyIHBhZGRpbmcgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhbGxvdXRzLCBpZiB0aGUgY2FsbG91dCBoYXMgYSBkYXJrIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgcmFkaXVzIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEFtb3VudCB0byB0aW50IGxpbmtzIHVzZWQgd2l0aGluIGNvbG9yZWQgcGFuZWxzLiBTZXQgdG8gYGZhbHNlYCB0byBkaXNhYmxlIHRoaXMgZmVhdHVyZS5cbi8vLyBAdHlwZSBOdW1iZXIgfCBCb29sZWFuXG4kY2FsbG91dC1saW5rLXRpbnQ6IDMwJSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBhIGNhbGxvdXQsIGluY2x1ZGluZyBwYWRkaW5nIGFuZCBtYXJnaW4uXG5AbWl4aW4gY2FsbG91dC1iYXNlKCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogJGNhbGxvdXQtbWFyZ2luO1xuICBwYWRkaW5nOiAkY2FsbG91dC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJGNhbGxvdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkY2FsbG91dC1yYWRpdXM7XG5cbiAgLy8gUmVzcGVjdCB0aGUgcGFkZGluZywgZm9vbC5cbiAgPiA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSBxdWljayBzdHlsZXMgZm9yIGEgY2FsbG91dCB1c2luZyBhIHNpbmdsZSBjb2xvciBhcyBhIGJhc2VsaW5lLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGNhbGxvdXQtYmFja2dyb3VuZF0gLSBDb2xvciB0byB1c2UuXG5AbWl4aW4gY2FsbG91dC1zdHlsZSgkY29sb3I6ICRjYWxsb3V0LWJhY2tncm91bmQpIHtcbiAgJGJhY2tncm91bmQ6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlKTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkY2FsbG91dC1mb250LWNvbG9yLCAkY2FsbG91dC1mb250LWNvbG9yLWFsdCkpO1xufVxuXG5AbWl4aW4gY2FsbG91dC1zaXplKCRwYWRkaW5nKSB7XG4gIHBhZGRpbmctdG9wOiAkcGFkZGluZztcbiAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkcGFkZGluZztcbiAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbn1cblxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FsbG91dC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRjYWxsb3V0LWJhY2tncm91bmRdIC0gQ29sb3IgdG8gdXNlLlxuQG1peGluIGNhbGxvdXQoJGNvbG9yOiAkY2FsbG91dC1iYWNrZ3JvdW5kKSB7XG4gIEBpbmNsdWRlIGNhbGxvdXQtYmFzZTtcbiAgQGluY2x1ZGUgY2FsbG91dC1zdHlsZSgkY29sb3IpO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jYWxsb3V0IHtcbiAgLmNhbGxvdXQge1xuICAgIEBpbmNsdWRlIGNhbGxvdXQ7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc3R5bGUoJGNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNtYWxsIHtcbiAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc2l6ZSgwLjVyZW0pO1xuICAgIH1cblxuICAgICYubGFyZ2Uge1xuICAgICAgQGluY2x1ZGUgY2FsbG91dC1zaXplKDNyZW0pO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2FyZFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhcmRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1kaXZpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgc3R5bGUuXG4vLy8gQHR5cGUgTGlzdFxuJGNhcmQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNhcmQgc2hhZG93LlxuLy8vIEB0eXBlIExpc3RcbiRjYXJkLXNoYWRvdzogbm9uZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBMaXN0XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYXJkLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbi5cbi8vLyBAdHlwZSBudW1iZXJcbiRjYXJkLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIGZvbnQgY29sb3Igb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXJnaW4gLSBCb3R0b20gbWFyZ2luIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGJvcmRlciAtIEJvcmRlciBhcm91bmQgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtMaXN0fSAkcmFkaXVzIC0gYm9yZGVyIHJhZGl1cyBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRzaGFkb3cgLSBib3ggc2hhZG93IG9mIHRoZSBjYXJkLlxuQG1peGluIGNhcmQtY29udGFpbmVyKFxuICAkYmFja2dyb3VuZDogJGNhcmQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkY2FyZC1mb250LWNvbG9yLFxuICAkbWFyZ2luOiAkY2FyZC1tYXJnaW4tYm90dG9tLFxuICAkYm9yZGVyOiAkY2FyZC1ib3JkZXIsXG4gICRyYWRpdXM6ICRjYXJkLWJvcmRlci1yYWRpdXMsXG4gICRzaGFkb3c6ICRjYXJkLXNoYWRvd1xuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4LWdyb3c6IDE7XG4gIH1cblxuICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcblxuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBkaXZpZGVyLlxuQG1peGluIGNhcmQtZGl2aWRlcihcbiAgJGJhY2tncm91bmQ6ICRjYXJkLWRpdmlkZXItYmFja2dyb3VuZCxcbiAgJHBhZGRpbmc6ICRjYXJkLXBhZGRpbmdcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG5cbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBzZWN0aW9uLlxuQG1peGluIGNhcmQtc2VjdGlvbihcbiAgJHBhZGRpbmc6ICRjYXJkLXBhZGRpbmdcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jYXJkIHtcbiAgLmNhcmQge1xuICAgIEBpbmNsdWRlIGNhcmQtY29udGFpbmVyO1xuICB9XG5cbiAgLmNhcmQtZGl2aWRlciB7XG4gICAgQGluY2x1ZGUgY2FyZC1kaXZpZGVyO1xuICB9XG5cbiAgLmNhcmQtc2VjdGlvbiB7XG4gICAgQGluY2x1ZGUgY2FyZC1zZWN0aW9uO1xuICB9XG5cbiAgLy8gRm9yIElFIDExIC0gRmxleGJ1Z1xuICAvLyBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzL2lzc3Vlcy83NVxuICAuY2FyZC1pbWFnZSB7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0b29sdGlwXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGN1cnNvciBvZiB0aGUgZGVmaW5lZCB0ZXJtLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRoYXMtdGlwLWN1cnNvcjogaGVscCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgb2YgdGhlIGRlZmluZWQgdGVybS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kaGFzLXRpcC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGJvdHRvbSBvZiB0aGUgZGVmaW5lZCB0ZXJtLlxuLy8vIEB0eXBlIExpc3RcbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIHRvb2x0aXAgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgdG9vbHRpcCBmb250LlxuLy8vIEB0eXBlIENvbG9yXG4kdG9vbHRpcC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIHRoZSB0b29sdGlwIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXggd2lkdGggZm9yIHRvb2x0aXBzLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtbWF4LXdpZHRoOiAxMHJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIG9mIHRoZSB0b29sdGlwIHRleHQuIEJ5IGRlZmF1bHQsIHdlIHJlY29tbWVuZCBhIHNtYWxsZXIgZm9udCBzaXplIHRoYW4gdGhlIGJvZHkgY29weS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGlwIHdpZHRoIGZvciB0b29sdGlwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXBpcC13aWR0aDogMC43NXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGlwIGhlaWdodCBmb3IgdG9vbHRpcHMuIFRoaXMgaXMgaGVscGZ1bCBmb3IgY2FsY3VsYXRpbmcgdGhlIGRpc3RhbmNlIG9mIHRoZSB0b29sdGlwIGZyb20gdGhlIHRvb2x0aXAgd29yZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXBpcC1oZWlnaHQ6ICR0b29sdGlwLXBpcC13aWR0aCAqIDAuODY2ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHRvb2x0aXBzLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGhhcy10aXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICBib3JkZXItYm90dG9tOiAkaGFzLXRpcC1ib3JkZXItYm90dG9tO1xuICBmb250LXdlaWdodDogJGhhcy10aXAtZm9udC13ZWlnaHQ7XG4gIGN1cnNvcjogJGhhcy10aXAtY3Vyc29yO1xufVxuXG5AbWl4aW4gdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKDEwMCUgKyAjeyR0b29sdGlwLXBpcC1oZWlnaHR9KTtcbiAgei1pbmRleDogMTIwMDtcblxuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZztcblxuICBib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJhY2tncm91bmQtY29sb3I7XG4gIGZvbnQtc2l6ZTogJHRvb2x0aXAtZm9udC1zaXplO1xuICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cblxuICAmLmJvdHRvbSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9vbHRpcC1waXAtd2lkdGgsICR0b29sdGlwLWJhY2tncm91bmQtY29sb3IsIHVwKTtcbiAgICAgIGJvdHRvbTogMTAwJTtcbiAgICB9XG5cbiAgICAmLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB9XG4gIH1cblxuICAmLnRvcCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9vbHRpcC1waXAtd2lkdGgsICR0b29sdGlwLWJhY2tncm91bmQtY29sb3IsIGRvd24pO1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgIH1cblxuICAgICYuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cbiAgfVxuXG4gICYubGVmdCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9vbHRpcC1waXAtd2lkdGgsICR0b29sdGlwLWJhY2tncm91bmQtY29sb3IsIHJpZ2h0KTtcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgfVxuXG4gICAgJi5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG4gIH1cblxuICAmLnJpZ2h0IHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgbGVmdCk7XG4gICAgICByaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuXG4gICAgJi5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9XG4gIH1cblxuICAmLmFsaWduLXRvcDo6YmVmb3JlIHtcbiAgICBib3R0b206IGF1dG87XG4gICAgdG9wOiAxMCU7XG4gIH1cblxuICAmLmFsaWduLWJvdHRvbTo6YmVmb3JlIHtcbiAgICBib3R0b206IDEwJTtcbiAgICB0b3A6IGF1dG87XG4gIH1cblxuICAmLmFsaWduLWxlZnQ6OmJlZm9yZSB7XG4gICAgbGVmdDogMTAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG5cbiAgJi5hbGlnbi1yaWdodDo6YmVmb3JlIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxMCU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdG9vbHRpcCB7XG4gIC5oYXMtdGlwIHtcbiAgICBAaW5jbHVkZSBoYXMtdGlwO1xuICB9XG5cbiAgLnRvb2x0aXAge1xuICAgIEBpbmNsdWRlIHRvb2x0aXA7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG1lZGlhLW9iamVjdFxuLy8vL1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIExlZnQgYW5kIHJpZ2h0IHBhZGRpbmcgb24gc2VjdGlvbnMgd2l0aGluIGEgbWVkaWEgb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gV2lkdGggb2YgaW1hZ2VzIHdpdGhpbiBhIG1lZGlhIG9iamVjdCwgd2hlbiB0aGUgb2JqZWN0IGlzIHN0YWNrZWQgdmVydGljYWxseS4gU2V0IHRvICdhdXRvJyB0byB1c2UgdGhlIGltYWdlJ3MgbmF0dXJhbCB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbWVkaWEgb2JqZWN0IGNvbnRhaW5lci5cbkBtaXhpbiBtZWRpYS1vYmplY3QtY29udGFpbmVyIHtcbiAgZGlzcGxheTogaWYoJGdsb2JhbC1mbGV4Ym94LCBmbGV4LCBibG9jayk7XG4gIG1hcmdpbi1ib3R0b206ICRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG5cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAmLnN0YWNrLWZvci0jeyQtemYtemVyby1icmVha3BvaW50fSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHNlY3Rpb25zIHdpdGhpbiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBhZGRpbmcgWyRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmddIC0gUGFkZGluZyBiZXR3ZWVuIHNlY3Rpb25zLlxuQG1peGluIG1lZGlhLW9iamVjdC1zZWN0aW9uKCRwYWRkaW5nOiAkbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICRwYWRkaW5nO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gICAgcGFkZGluZy0jeyRnbG9iYWwtbGVmdH06ICRwYWRkaW5nO1xuICB9XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5zdGFjay1mb3ItI3skLXpmLXplcm8tYnJlYWtwb2ludH0gJiB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3Qtc3RhY2s7XG4gICAgfVxuICB9XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgJi5tYWluLXNlY3Rpb24ge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgICYubWlkZGxlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgJi5ib3R0b20ge1xuICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIHRvIHN0YWNrIHNlY3Rpb25zIG9mIGEgbWVkaWEgb2JqZWN0LiBBcHBseSB0aGlzIHRvIHRoZSBzZWN0aW9uIGVsZW1lbnRzLCBub3QgdGhlIGNvbnRhaW5lci5cbkBtaXhpbiBtZWRpYS1vYmplY3Qtc3RhY2sge1xuICBwYWRkaW5nOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZztcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiAkbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1tZWRpYS1vYmplY3Qge1xuICAubWVkaWEtb2JqZWN0IHtcbiAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3QtY29udGFpbmVyO1xuICB9XG5cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1vYmplY3Qtc2VjdGlvbjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgb3JiaXRcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGFjdGl2ZSBjb2xvciBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkaWFtZXRlciBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1kaWFtZXRlcjogMS4ycmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYmV0d2VlbiBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkaXN0YW5jZSBmcm9tIHNsaWRlIHJlZ2lvbiBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZnJvbSBPcmJpdCdzIGJ1bGxldHMgdG8gd2hhdGV2ZXIgY29udGVudCBtYXkgbHVyayBiZWxvdyBpdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBPcmJpdCdzIGNhcHRpb24uXG4vLy8gQHR5cGUgQ29sb3JcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciBPcmJpdCdzIGNhcHRpb24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBPcmJpdCdzIGNvbnRyb2xzIHdoZW4gaG92ZXJlZC5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIE9yYml0J3MgY29udHJvbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB6LWluZGV4IGZvciBPcmJpdCdzIGNvbnRyb2xzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMCAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgb3V0ZXIgT3JiaXQgd3JhcHBlci4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0YCBjbGFzcy5cbkBtaXhpbiBvcmJpdC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbm5lciBPcmJpdCBzbGlkZSBjb250YWluZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1jb250YWluZXJgIGNsYXNzLlxuQG1peGluIG9yYml0LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwOyAvLyBQcmV2ZW50IEZPVUMgYnkgbm90IHNob3dpbmcgdW50aWwgSlMgc2V0cyBoZWlnaHRcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbmRpdmlkdWFsIHNsaWRlcyBvZiBhbiBPcmJpdCBzbGlkZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1zbGlkZWAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtc2xpZGUge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICYubm8tbW90aW9udWkge1xuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBvcmJpdC1maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzbGlkZSBjb250YWluaW5nIGFuIGltYWdlLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtaW1hZ2VgIGNsYXNzLlxuQG1peGluIG9yYml0LWltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIG9yYml0IHNsaWRlIGNhcHRpb24uIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1jYXB0aW9uYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAkb3JiaXQtY2FwdGlvbi1wYWRkaW5nO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ7XG4gIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQpO1xufVxuXG4vLy8gQWRkcyBiYXNlIHN0eWxlcyBmb3IgdGhlIG5leHQvcHJldmlvdXMgYnV0dG9ucyBpbiBhbiBPcmJpdCBzbGlkZXIuIFRoZXNlIHN0eWxlcyBhcmUgc2hhcmVkIGJldHdlZW4gdGhlIGAub3JiaXQtbmV4dGAgYW5kIGAub3JiaXQtcHJldmlvdXNgIGNsYXNzZXMgaW4gdGhlIGRlZmF1bHQgQ1NTLlxuQG1peGluIG9yYml0LWNvbnRyb2wge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIEBpbmNsdWRlIHZlcnRpY2FsLWNlbnRlcjtcbiAgei1pbmRleDogJG9yYml0LWNvbnRyb2wtemluZGV4O1xuICBwYWRkaW5nOiAkb3JiaXQtY29udHJvbC1wYWRkaW5nO1xuICBjb2xvcjogJHdoaXRlO1xuXG4gICY6aG92ZXIsXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtY29udHJvbC1iYWNrZ3JvdW5kLWhvdmVyO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIE9yYml0IHByZXZpb3VzIGJ1dHRvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LXByZXZpb3VzYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1wcmV2aW91cyB7XG4gICN7JGdsb2JhbC1sZWZ0fTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgT3JiaXQgbmV4dCBidXR0b24uIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1uZXh0YCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1uZXh0IHtcbiAgI3skZ2xvYmFsLWxlZnR9OiBhdXRvO1xuICAjeyRnbG9iYWwtcmlnaHR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY29udGFpbmVyIG9mIE9yYml0IGJ1bGxldHMuIC8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIE9yYml0IHByZXZpb3VzIGJ1dHRvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LWJ1bGxldHNgIGNsYXNzLlxuQG1peGluIG9yYml0LWJ1bGxldHMge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wO1xuICBtYXJnaW4tYm90dG9tOiAkb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b207XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBidXR0b24ge1xuICAgIHdpZHRoOiAkb3JiaXQtYnVsbGV0LWRpYW1ldGVyO1xuICAgIGhlaWdodDogJG9yYml0LWJ1bGxldC1kaWFtZXRlcjtcbiAgICBtYXJnaW46ICRvcmJpdC1idWxsZXQtbWFyZ2luO1xuXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1vcmJpdCB7XG4gIC5vcmJpdCB7XG4gICAgQGluY2x1ZGUgb3JiaXQtd3JhcHBlcjtcbiAgfVxuXG4gIC5vcmJpdC1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIG9yYml0LWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5vcmJpdC1zbGlkZSB7XG4gICAgQGluY2x1ZGUgb3JiaXQtc2xpZGU7XG4gIH1cblxuICAub3JiaXQtZmlndXJlIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1maWd1cmU7XG4gIH1cblxuICAub3JiaXQtaW1hZ2Uge1xuICAgIEBpbmNsdWRlIG9yYml0LWltYWdlO1xuICB9XG5cbiAgLm9yYml0LWNhcHRpb24ge1xuICAgIEBpbmNsdWRlIG9yYml0LWNhcHRpb247XG4gIH1cblxuICAlb3JiaXQtY29udHJvbCB7XG4gICAgQGluY2x1ZGUgb3JiaXQtY29udHJvbDtcbiAgfVxuXG4gIC5vcmJpdC1wcmV2aW91cyB7XG4gICAgQGV4dGVuZCAlb3JiaXQtY29udHJvbDtcbiAgICBAaW5jbHVkZSBvcmJpdC1wcmV2aW91cztcbiAgfVxuXG4gIC5vcmJpdC1uZXh0IHtcbiAgICBAZXh0ZW5kICVvcmJpdC1jb250cm9sO1xuICAgIEBpbmNsdWRlIG9yYml0LW5leHQ7XG4gIH1cblxuICAub3JiaXQtYnVsbGV0cyB7XG4gICAgQGluY2x1ZGUgb3JiaXQtYnVsbGV0cztcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbWVudVxuLy8vL1xuXG4vLy8gTWFyZ2luIG9mIGEgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIExlZnQtaGFuZCBtYXJnaW4gb2YgYSBuZXN0ZWQgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgaXRlbXMgaW4gYSBwaWxsIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1pdGVtcy1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBzaW1wbGUgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LXNpbXBsZS1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhbiBpY29uIGFuZCB0ZXh0IGluIGEgbWVudSBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBzdGF0ZS4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYGFjdGl2ZWAgd2l0aCBgaXMtYWN0aXZlYC4gXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgYGFjdGl2ZWAgd2lsbCBiZSByZW1vdmVkIGluIHVwY29taW5nIHZlcnNpb25zLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRtZW51LXN0YXRlLWJhY2stY29tcGF0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBjZW50ZXJlZC4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYC5tZW51LWNlbnRlcmVkID4gLm1lbnVgIHdpdGggYC5tZW51LmFsaWduLWNlbnRlcmAuIFxuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IGBtZW51LWNlbnRlcmVkYCB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciB1c2luZyBgaWNvbi0qYCBjbGFzc2VzIHdpdGhvdXQgYC5pY29uc2AgY2xhc3Nlc1xuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IHRoaXMgYmFja3dhcmQgY29tcGF0aWJpbGl0eSB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtaWNvbnMtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIHRoZSBiYXNlIHN0eWxlcyBmb3IgYSBNZW51LlxuQG1peGluIG1lbnUtYmFzZSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgbGkge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgfVxuXG4gIGEsXG4gIC5idXR0b24ge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkbWVudS1pdGVtcy1wYWRkaW5nO1xuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9mIGlubmVyIGVsZW1lbnRzXG4gIGlucHV0LFxuICBzZWxlY3QsXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIGlucHV0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLy8vIEV4cGFuZHMgdGhlIGl0ZW1zIG9mIGEgTWVudSwgc28gZWFjaCBpdGVtIGlzIHRoZSBzYW1lIHdpZHRoLlxuQG1peGluIG1lbnUtZXhwYW5kIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFsaWduIG1lbnUgaXRlbXMuXG5AbWl4aW4gbWVudS1hbGlnbigkYWxpZ25tZW50KSB7XG4gIEBpZiAkYWxpZ25tZW50ID09IGxlZnQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRhbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi52ZXJ0aWNhbCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG5cbiAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgICAgfVxuXG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGFsaWdubWVudCA9PSBjZW50ZXIge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgYSBNZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbaG9yaXpvbnRhbF0gLSBEaXJlY3Rpb24gb2YgdGhlIE1lbnUuIENhbiBiZSBgaG9yaXpvbnRhbGAgb3IgYHZlcnRpY2FsYC5cbkBtaXhpbiBtZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbXBsZSBNZW51LCB3aGljaCBoYXMgbm8gcGFkZGluZyBvciBob3ZlciBzdGF0ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgWyRnbG9iYWwtbGVmdF0gLSBEaXJlY3Rpb24gb2YgdGhlIG1lbnUuIFRoaXMgZWZmZWN0cyB0aGUgc2lkZSBvZiB0aGUgYDxsaT5gIHRoYXQgcmVjZWl2ZXMgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1hcmdpbiBbJG1lbnUtc2ltcGxlLW1hcmdpbl0gLSBUaGUgbWFyZ2luIHRvIGFwcGx5IHRvIGVhY2ggYDxsaT5gLlxuQG1peGluIG1lbnUtc2ltcGxlKCRkaXI6ICRnbG9iYWwtbGVmdCwgJG1hcmdpbjogJG1lbnUtc2ltcGxlLW1hcmdpbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgbGkgKyBsaSB7XG4gICAgbWFyZ2luLSN7JGRpcn06ICRtYXJnaW47XG4gIH1cblxuICBhIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBuZXN0ZWQgTWVudSwgYnkgYWRkaW5nIGBtYXJnaW4tbGVmdGAgdG8gdGhlIG1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJG1hcmdpbiBbJG1lbnUtbmVzdGVkLW1hcmdpbl0gLSBMZW5ndGggb2YgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRuZXN0ZWQtYWxpZ25tZW50IFtsZWZ0XSAtIEFsaWdubWVudCBvZiB0aGUgbmVzdGVkIGNsYXNzXG5AbWl4aW4gbWVudS1uZXN0ZWQoXG4gICRtYXJnaW46ICRtZW51LW5lc3RlZC1tYXJnaW4sXG4gICRuZXN0ZWQtYWxpZ25tZW50OiBsZWZ0XG4pIHtcbiAgQGlmICRuZXN0ZWQtYWxpZ25tZW50ID09IHJpZ2h0IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJG1hcmdpbjtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbWFyZ2luO1xuICB9XG5cbn1cblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBpY29ucyBpbiBtZW51cy5cbkBtaXhpbiBtZW51LWljb25zKCkge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBpbWcsXG4gICAgaSxcbiAgICBzdmcge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgKyBzcGFuIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgcG9zaXRpb24gY2xhc3NlcyBmb3IgaWNvbnMgd2l0aGluIGEgbWVudS5cbkBtaXhpbiBtZW51LWljb24tcG9zaXRpb24oJHBvc2l0aW9uOiBsZWZ0LCAkc3BhY2luZzogJG1lbnUtaWNvbi1zcGFjaW5nKSB7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuXG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkc3BhY2luZztcblxuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvICRzcGFjaW5nO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46ICRzcGFjaW5nIGF1dG8gMDtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1lbnUtdGV4dCB7XG4gIHBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbkBtaXhpbiBtZW51LXN0YXRlLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gIGNvbG9yOiAkbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVudSB7XG4gIC5tZW51IHtcbiAgICBAaW5jbHVkZSBtZW51LWJhc2U7XG5cbiAgICAvLyBEZWZhdWx0IG9yaWVudGF0aW9uOiBob3Jpem9udGFsXG4gICAgJiwgJi5ob3Jpem9udGFsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgIH1cblxuICAgIC8vIFZlcnRpY2FsIG9yaWVudGF0aW9uIG1vZGlmaWVyXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBtb2RpZmllciBmb3IgaG9yaXpvbnRhbCBvcmllbnRhdGlvblxuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgfVxuXG4gICAgLy8gU2ltcGxlXG4gICAgJi5zaW1wbGUge1xuICAgICAgQGluY2x1ZGUgbWVudS1zaW1wbGU7XG4gICAgfVxuXG4gICAgLy8gQnJlYWtwb2ludCBzcGVjaWZpYyB2ZXJzaW9uc1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiBmYWxzZSkge1xuICAgICAgJi4jeyQtemYtc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgICAgfVxuXG4gICAgICAmLiN7JC16Zi1zaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tZXhwYW5kZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tc2ltcGxlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYubmVzdGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkO1xuICAgIH1cblxuICAgIC8vIEljb24gQmFzZSBTdHlsZXNcbiAgICAmLmljb25zIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbnM7XG4gICAgfVxuXG4gICAgLy8gQmFja3dhcmQgQ29tcGF0aWJpbGl0eSBmb3IgYWN0aXZlIHN0YXRlXG4gICAgQGlmICRtZW51LWljb25zLWJhY2stY29tcGF0IHtcbiAgICAgICYuaWNvbi10b3AsXG4gICAgICAmLmljb24tcmlnaHQsXG4gICAgICAmLmljb24tYm90dG9tLFxuICAgICAgJi5pY29uLWxlZnQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWljb25zO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEljb24gTGVmdFxuICAgICYuaWNvbi1sZWZ0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihsZWZ0KTtcbiAgICB9XG5cbiAgICAvLyBJY29uIFJpZ2h0XG4gICAgJi5pY29uLXJpZ2h0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihyaWdodCk7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBUb3BcbiAgICAmLmljb24tdG9wIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbih0b3ApO1xuICAgIH1cblxuICAgIC8vIEljb24gQm90dG9tXG4gICAgJi5pY29uLWJvdHRvbSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24oYm90dG9tKTtcbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAuaXMtYWN0aXZlID4gYSB7XG4gICAgICBAaW5jbHVkZSBtZW51LXN0YXRlLWFjdGl2ZTtcbiAgICB9XG4gICAgXG4gICAgLy8gQmFja3dhcmQgQ29tcGF0aWJpbGl0eSBmb3IgYWN0aXZlIHN0YXRlXG4gICAgQGlmICRtZW51LXN0YXRlLWJhY2stY29tcGF0IHtcbiAgICAgIC5hY3RpdmUgPiBhIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1zdGF0ZS1hY3RpdmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gbGVmdFxuICAgICYuYWxpZ24tI3skZ2xvYmFsLWxlZnR9IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24obGVmdCk7XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gcmlnaHRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihyaWdodCk7XG5cbiAgICAgIC5uZXN0ZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkbmVzdGVkLWFsaWdubWVudDogcmlnaHQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFsaWduIGNlbnRlclxuICAgICYuYWxpZ24tY2VudGVyIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24oY2VudGVyKTtcbiAgICB9XG5cbiAgICAubWVudS10ZXh0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtdGV4dDtcbiAgICB9XG4gIH1cblxuICBAaWYgJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQge1xuICAgIC5tZW51LWNlbnRlcmVkIHtcbiAgICAgID4gLm1lbnUge1xuICAgICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihjZW50ZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFByZXZlbnQgRk9VQyB3aGVuIHVzaW5nIHRoZSBSZXNwb25zaXZlIE1lbnUgcGx1Z2luXG4gIC5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCJAbWl4aW4gZm91bmRhdGlvbi1tZW51LWljb24ge1xuICAubWVudS1pY29uIHtcbiAgICBAaW5jbHVkZSBoYW1idXJnZXIoJGNvbG9yOiAkdGl0bGViYXItaWNvbi1jb2xvciwgJGNvbG9yLWhvdmVyOiAkdGl0bGViYXItaWNvbi1jb2xvci1ob3Zlcik7XG4gIH1cblxuICAubWVudS1pY29uLmRhcmsge1xuICAgIEBpbmNsdWRlIGhhbWJ1cmdlcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJvcGRvd24tbWVudVxuLy8vL1xuXG4vLy8gRW5hYmxlcyBhcnJvd3MgZm9yIGl0ZW1zIHdpdGggZHJvcGRvd24gbWVudXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGRyb3Bkb3dubWVudS1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyb3Bkb3duIG1lbnUgYXJyb3cgY29sb3IgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvcjogJGFuY2hvci1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBzaXplIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweCAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBwYWRkaW5nIGZvciBhbGlnbmluZyB0aGUgYXJyb3cgY29ycmVjdGx5LlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nOiAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNaW5pbXVtIHdpZHRoIG9mIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRvcCBsZXZlbCBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcm9wZG93bnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kOiAkZHJvcGRvd25tZW51LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciB0b3AgbGV2ZWwgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IG5lc3RlZCBtYXJnaW5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIHN1Yi1tZW51IGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLyBCb3JkZXIgd2lkdGggZm9yIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vIFVzZWQgdG8gYWRqdXN0IHRvcCBtYXJnaW4gb2YgYSBzdWItbWVudSBpZiBhIGJvcmRlciBpcyB1c2VkLlxuLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWJvcmRlci13aWR0aDogbnRoKCRkcm9wZG93bm1lbnUtYm9yZGVyLCAxKTtcblxuLy8vIFRleHQgY29sb3Igb2YgYW4gYWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbS4gRXhwbGljaXQgb3ZlcnJpZGUgZm9yIG1lbnUgZGVmYXVsdHNcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gYWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbS4gRXhwbGljaXQgb3ZlcnJpZGUgZm9yIG1lbnUgZGVmYXVsdHNcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cyB7XG4gID4gYTo6YWZ0ZXIge1xuICAgICN7JGdsb2JhbC1yaWdodH06IDE0cHg7XG4gIH1cblxuICAmLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgbGVmdCk7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICB9XG5cbiAgJi5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7XG4gIH1cbn1cblxuQG1peGluIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKCRkaXI6IGhvcml6b250YWwpIHtcbiAgQGlmICRkaXIgPT0gaG9yaXpvbnRhbCB7XG4gICAgPiBsaS5vcGVucy1sZWZ0IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpLm9wZW5zLXJpZ2h0IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZztcbiAgICAgIH1cblxuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuICAgICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICAgICN7JGdsb2JhbC1sZWZ0fTogYXV0bztcbiAgICAgICAgbWFyZ2luLXRvcDogLTEgKiAoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplIC8gMik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgID4gbGkge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDA7XG4gICAgICB9XG5cbiAgICAgICYub3BlbnMtbGVmdCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICByaWdodDogMTAwJTtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYub3BlbnMtcmlnaHQge1xuICAgICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICAgIEBpbmNsdWRlIHpmLWRyb3Bkb3duLWxlZnQtcmlnaHQtYXJyb3dzO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcm9wZG93bi1tZW51IHtcbiAgLmRyb3Bkb3duLm1lbnUge1xuICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuXG4gICAgYSB7XG4gICAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgICBwYWRkaW5nOiAkZHJvcGRvd25tZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlXG4gICAgLmlzLWFjdGl2ZSA+IGEge1xuICAgICAgYmFja2dyb3VuZDogJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICAgIGNvbG9yOiAkZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTtcbiAgICB9XG5cbiAgICAubm8tanMgJiB1bCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5uZXN0ZWQuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW4pO1xuICAgIH1cblxuICAgICYudmVydGljYWwge1xuICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgIH1cblxuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICAgICYuI3skc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLiN7JHNpemV9LXZlcnRpY2FsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LmZpcnN0LXN1YiB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICAgIHdpZHRoOiAxMDBweDtcblxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgYTo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICAjeyRnbG9iYWwtbGVmdH06IGF1dG87XG4gICAgICBtYXJnaW4tdG9wOiAtMSAqICRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTtcbiAgICB9XG5cbiAgICAmLm9wZW5zLWlubmVyID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuXG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBAaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSAncnRsJyB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgICYub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICAmLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMTAwJTtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtaW4td2lkdGg6ICRkcm9wZG93bm1lbnUtbWluLXdpZHRoO1xuXG4gICAgYm9yZGVyOiAkZHJvcGRvd25tZW51LWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd25tZW51LXN1Ym1lbnUtYmFja2dyb3VuZDtcblxuICAgIC5kcm9wZG93biAmIGEge1xuICAgICAgcGFkZGluZzogJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICAgIEBpbmNsdWRlIHpmLWRyb3Bkb3duLWxlZnQtcmlnaHQtYXJyb3dzO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAodHlwZS1vZigkZHJvcGRvd25tZW51LWJvcmRlci13aWR0aCkgPT0gJ251bWJlcicpIHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgbWFyZ2luLXRvcDogKC0kZHJvcGRvd25tZW51LWJvcmRlci13aWR0aCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBbVE9ET10gQ3V0IGJhY2sgc3BlY2lmaWNpdHlcbiAgICAvLyY6bm90KC5qcy1kcm9wZG93bi1ub2hvdmVyKSA+IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudDpob3ZlciA+ICYsIC8vIHdoeSBpcyB0aGlzIGxpbmUgbmVlZGVkPyBPcGVuaW5nIGlzIGhhbmRsZWQgYnkgSlMgYW5kIHRoaXMgY2F1c2VzIHNvbWUgdWdseSBmbGlja2VyaW5nIHdoZW4gdGhlIHN1YiBpcyByZS1wb3NpdGlvbmVkIGF1dG9tYXRpY2FsbHkuLi5cbiAgICAmLmpzLWRyb3Bkb3duLWFjdGl2ZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AbWl4aW4gZm91bmRhdGlvbi1zdGlja3kge1xuICAuc3RpY2t5LWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLnN0aWNreSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIC5zdGlja3kuaXMtc3R1Y2sge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiA1O1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJi5pcy1hdC10b3Age1xuICAgICAgdG9wOiAwO1xuICAgIH1cblxuICAgICYuaXMtYXQtYm90dG9tIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuc3RpY2t5LmlzLWFuY2hvcmVkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcblxuICAgICYuaXMtYXQtYm90dG9tIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRvcC1iYXJcbi8vLy9cblxuLy8vIFBhZGRpbmcgZm9yIHRoZSB0b3AgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci1wYWRkaW5nOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgdG9wIGJhci4gVGhpcyBjb2xvciBhbHNvIGNhc2NhZGVzIHRvIG1lbnVzIHdpdGhpbiB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRvcGJhci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igc3VibWVudXMgd2l0aGluIHRoZSB0b3AgYmFyLiBVc2VmdWxsIGlmICR0b3BiYXItYmFja2dyb3VuZCBpcyB0cmFuc3BhcmVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQ6ICR0b3BiYXItYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgZm9yIHRoZSB0b3AgYmFyIHRpdGxlLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMCAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gd2lkdGggb2YgYDxpbnB1dD5gIGVsZW1lbnRzIGluc2lkZSB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQnJlYWtwb2ludCBhdCB3aGljaCB0b3AgYmFyIHN3aXRjaGVzIGZyb20gbW9iaWxlIHRvIGRlc2t0b3Agdmlldy5cbi8vLyBAdHlwZSBCcmVha3BvaW50XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgdG9wIGJhciBjb250YWluZXIuXG5AbWl4aW4gdG9wLWJhci1jb250YWluZXIge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxuXG4gIHBhZGRpbmc6ICR0b3BiYXItcGFkZGluZztcblxuICAmLFxuICB1bCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRvcGJhci1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgJHRvcGJhci1iYWNrZ3JvdW5kIGlzIGRpZmZlcm50IGZyb20gJHRvcGJhci1iYWNrZ3JvdW5kLXN1Ym1lbnVcbiAgQGlmICgkdG9wYmFyLWJhY2tncm91bmQgIT0gJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQpIHtcbiAgICB1bCB1bCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXN0cmFpbiB3aWR0aCBvZiBpbnB1dHMgYnkgZGVmYXVsdCB0byBtYWtlIHRoZW0gZWFzaWVyIHRvIGFycmFuZ2VcbiAgaW5wdXQge1xuICAgIG1heC13aWR0aDogJHRvcGJhci1pbnB1dC13aWR0aDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgfVxuXG4gIC8vIFRoZSBhYm92ZSBzdHlsZXMgc2hvdWxkbid0IGFwcGx5IHRvIGlucHV0IGdyb3VwIGZpZWxkc1xuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICB9XG5cbiAgaW5wdXQuYnV0dG9uIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLy8vIE1ha2VzIHNlY3Rpb25zIG9mIGEgdG9wIGJhciBzdGFjayBvbiB0b3Agb2YgZWFjaCBvdGhlci5cbkBtaXhpbiB0b3AtYmFyLXN0YWNrZWQge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAvLyBTdWItc2VjdGlvbnNcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gU3ViLXNlY3Rpb25zXG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFVuZG9lcyB0aGUgQ1NTIGFwcGxpZWQgYnkgdGhlIGB0b3AtYmFyLXN0YWNrZWQoKWAgbWl4aW4uXG5AbWl4aW4gdG9wLWJhci11bnN0YWNrIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICAudG9wLWJhci1sZWZ0IHtcbiAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10b3AtYmFyIHtcbiAgLy8gVG9wIGJhciBjb250YWluZXJcbiAgLnRvcC1iYXIge1xuICAgIEBpbmNsdWRlIHRvcC1iYXItY29udGFpbmVyO1xuXG4gICAgLy8gU3RhY2sgb24gc21hbGwgc2NyZWVucyBieSBkZWZhdWx0XG4gICAgQGluY2x1ZGUgdG9wLWJhci1zdGFja2VkO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludCkge1xuICAgICAgQGluY2x1ZGUgdG9wLWJhci11bnN0YWNrO1xuICAgIH1cblxuICAgIC8vIEdlbmVyYXRlIGNsYXNzZXMgZm9yIHN0YWNraW5nIG9uIGVhY2ggc2NyZWVuIHNpemUgKGRlZmluZWQgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcylcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICYuc3RhY2tlZC1mb3ItI3skc2l6ZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgICAgICAgICAgQGluY2x1ZGUgdG9wLWJhci1zdGFja2VkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFN1Yi1zZWN0aW9uc1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIG1hcmdpbjogJHRvcGJhci10aXRsZS1zcGFjaW5nO1xuICAgIH1cblxuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmc6ICR0b3BiYXItdGl0bGUtc3BhY2luZztcblxuICAgICAgLm1lbnUtaWNvbiB7XG4gICAgICAgIGJvdHRvbTogMnB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50b3AtYmFyLWxlZnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgRmxleGJveCBVdGlsaXRpZXNcbi8vLy9cbi8vXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3IgdGhlIGNvdW50IG9mIHNvdXJjZSBvcmRlcmluZ2Bcbi8vLyBAdHlwZSBOdW1iZXJcbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNiAhZGVmYXVsdDtcblxuLy8vIFF1aWNrbHkgZGlzYWJsZS9lbmFibGUgUmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgVmFuaWxsYSBGbGV4IEhlbHBlcnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50czogdHJ1ZSAhZGVmYXVsdDtcblxuQG1peGluIGZsZXgtaGVscGVycyB7XG4gIC5mbGV4LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgZmxleDtcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG5cbiAgQGVhY2ggJGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWRpcmVjdGlvbiB7XG4gICAgLmZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50cykge1xuICAgIC8vIExvb3AgdGhyb3VnaCBSZXNwb25zaXZlIEJyZWFrcG9pbnRzXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY29udGFpbmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtYXV0byB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1ncm93IHtcbiAgICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWRpci0jeyRkaXJ9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mbGV4LWNsYXNzZXMge1xuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCB1c2luZyBqdXN0aWZ5LWNvbnRlbnRcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluICQtemYtZmxleC1qdXN0aWZ5IHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgIH1cbiAgfVxuICBcbiAgLy8gSG9yaXpvbnRhbCBhbGlnbm1lbnQgU3BlY2lmaWNhbGx5IGZvciBWZXJ0aWNhbCBNZW51XG4gIEBlYWNoICRoZGlyLCAkcHJvcCBpbiBtYXAtcmVtb3ZlKCQtemYtZmxleC1qdXN0aWZ5LCAnanVzdGlmeScsICdzcGFjZWQnKSB7XG4gICAgLmFsaWduLSN7JGhkaXJ9IHtcbiAgICAgICYudmVydGljYWwge1xuICAgICAgICAmLm1lbnUgPiBsaSA+IGEge1xuICAgICAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6ICRoZGlyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZlcnRpY2FsIGFsaWdubWVudCB1c2luZyBhbGlnbi1pdGVtcyBhbmQgYWxpZ24tc2VsZlxuICBAZWFjaCAkdmRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWFsaWduIHtcbiAgICAuYWxpZ24tI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeTogJHZkaXIpO1xuICAgIH1cblxuICAgIC5hbGlnbi1zZWxmLSN7JHZkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24tc2VsZigkeTogJHZkaXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIENlbnRyYWwgYWxpZ25tZW50IG9mIGNvbnRlbnRcbiAgLmFsaWduLWNlbnRlci1taWRkbGUge1xuICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6IGNlbnRlciwgJHk6IG1pZGRsZSk7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgLy8gU291cmNlIG9yZGVyaW5nXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tb3JkZXItI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LW9yZGVyKCRpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWYW5pbGxhIEZsZXhib3ggSGVscGVyc1xuICBAaW5jbHVkZSBmbGV4LWhlbHBlcnM7XG59XG4iLCJAZnVuY3Rpb24gLXpmLWZsZXgtanVzdGlmeSgkdGV4dC1kaXJlY3Rpb24pe1xuICAkLXpmLWZsZXgtanVzdGlmeTogKFxuICAgICdsZWZ0JzogaWYoJHRleHQtZGlyZWN0aW9uID09IHJ0bCwgZmxleC1lbmQsIGZsZXgtc3RhcnQpLFxuICAgICdyaWdodCc6IGlmKCR0ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGZsZXgtc3RhcnQsIGZsZXgtZW5kKSxcbiAgICAnY2VudGVyJzogY2VudGVyLFxuICAgICdqdXN0aWZ5Jzogc3BhY2UtYmV0d2VlbixcbiAgICAnc3BhY2VkJzogc3BhY2UtYXJvdW5kLFxuICApO1xuXG4gIEByZXR1cm4gJC16Zi1mbGV4LWp1c3RpZnk7XG59XG5cblxuJC16Zi1mbGV4LWFsaWduOiAoXG4gICd0b3AnOiBmbGV4LXN0YXJ0LFxuICAnYm90dG9tJzogZmxleC1lbmQsXG4gICdtaWRkbGUnOiBjZW50ZXIsXG4gICdzdHJldGNoJzogc3RyZXRjaCxcbik7XG5cbiQtemYtZmxleC1kaXJlY3Rpb246IChcbiAgJ3Jvdyc6IHJvdyxcbiAgJ3Jvdy1yZXZlcnNlJzogcm93LXJldmVyc2UsXG4gICdjb2x1bW4nOiBjb2x1bW4sXG4gICdjb2x1bW4tcmV2ZXJzZSc6IGNvbHVtbi1yZXZlcnNlLFxuKTtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBieSBhZGRpbmcgYGRpc3BsYXk6IGZsZXhgIHRvIHRoZSBlbGVtZW50LlxuQG1peGluIGZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkgYWxpZ25zIHRoZSBpdGVtcyB3aXRoaW4gYSBmbGV4IGNvbnRhaW5lci5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHggW251bGxdIC0gSG9yaXpvbnRhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYGxlZnRgLCBgcmlnaHRgLCBgY2VudGVyYCwgYGp1c3RpZnlgLCBvciBgc3BhY2VkYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IGhvcml6b250YWwgYWxpZ25tZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWFsaWduKCR4OiBudWxsLCAkeTogbnVsbCkge1xuICBAaWYgJHgge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtanVzdGlmeSwgJHgpIHtcbiAgICAgICR4OiBtYXAtZ2V0KCQtemYtZmxleC1qdXN0aWZ5LCAkeCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtcm93LWFsaWduKCk6ICN7JHh9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciBob3Jpem9udGFsIGFsaWdubWVudC4gVXNlIGxlZnQsIHJpZ2h0LCBjZW50ZXIsIGp1c3RpZnksIG9yIHNwYWNlZC4nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgdmVydGljYWwgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGp1c3RpZnktY29udGVudDogJHg7XG4gIGFsaWduLWl0ZW1zOiAkeTtcbn1cblxuLy8vIFZlcnRpY2FsbHkgYWxpZ24gYSBzaW5nbGUgY29sdW1uIHdpdGhpbiBhIGZsZXggcm93LiBBcHBseSB0aGlzIG1peGluIHRvIGEgZmxleCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbi1zZWxmKCR5OiBudWxsKSB7XG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLWNvbHVtbi1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGFsaWduLXNlbGY6ICR5O1xufVxuXG4vLy8gQ2hhbmdlcyB0aGUgc291cmNlIG9yZGVyIG9mIGEgZmxleCBjaGlsZC4gQ2hpbGRyZW4gd2l0aCBsb3dlciBudW1iZXJzIGFwcGVhciBmaXJzdCBpbiB0aGUgbGF5b3V0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb3JkZXIgWzBdIC0gT3JkZXIgbnVtYmVyIHRvIGFwcGx5LlxuQG1peGluIGZsZXgtb3JkZXIoJG9yZGVyOiAwKSB7XG4gIG9yZGVyOiAkb3JkZXI7XG59XG5cbi8vLyBDaGFuZ2UgZmxleC1kaXJlY3Rpb25cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW3Jvd10gLSBGbGV4IGRpcmVjdGlvbiB0byB1c2UuIENhbiBiZVxuLy8vICAgLSByb3cgKGRlZmF1bHQpOiBzYW1lIGFzIHRleHQgZGlyZWN0aW9uXG4vLy8gICAtIHJvdy1yZXZlcnNlOiBvcHBvc2l0ZSB0byB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSBjb2x1bW46IHNhbWUgYXMgcm93IGJ1dCB0b3AgdG8gYm90dG9tXG4vLy8gICAtIGNvbHVtbi1yZXZlcnNlOiBzYW1lIGFzIHJvdy1yZXZlcnNlIHRvcCB0byBib3R0b21cbkBtaXhpbiBmbGV4LWRpcmVjdGlvbigkZGlyZWN0aW9uOiByb3cpIHtcbiAgZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3IoJHNpemUpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gIC8vIE1heCB2YWx1ZSBpcyAwLjJweCB1bmRlciB0aGUgbmV4dCBicmVha3BvaW50ICgwLjAyIC8gMTYgPSAwLjAwMTI1KS5cbiAgLy8gVXNlIGEgcHJlY2lzaW9uIHVuZGVyIDFweCB0byBzdXBwb3J0IGJyb3dzZXIgem9vbSwgYnV0IG5vdCB0byBsb3cgdG8gYXZvaWQgcm91bmRpbmcuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICAkc2l6ZTogLXpmLWJwLXRvLWVtKCRzaXplKSAtIC4wMDEyNTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgd2l0aGluIGEgY2VydGFpbiBicmVha3BvaW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3Itb25seSgkc2l6ZSkge1xuICAkbG93ZXItYm91bmQtc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHVwcGVyLWJvdW5kLXNpemU6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRzaXplKTtcblxuICAvLyBtb3JlIG9mdGVuIHRoYW4gbm90IHRoaXMgd2lsbCBiZSBjb3JyZWN0LCBqdXN0IG9uZSB0aW1lIHJvdW5kIHRoZSBsb29wIGl0IHdvbid0IHNvIHNldCBpbiBzY29wZSBoZXJlXG4gICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKSAtIC4wMDEyNTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBBcHBsaWVzIGJhc2ljIHRyYW5zaXRpb24gc2V0dGluZ3MgdG8gYW4gZWxlbWVudC5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiB0cmFuc2l0aW9uLWJhc2ljcyhcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICBAaW5jbHVkZSAtbW90aW9uLXVpLWRlZmF1bHRzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5cbi8vLyBXcmFwcyB0aGUgY29udGVudCBpbiB0aGUgc2V0dXAgY2xhc3MgZm9yIGEgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgLSBTdGF0ZSB0byBzZXR1cCBmb3IgdHJhbnNpdGlvbi5cbkBtaXhpbiB0cmFuc2l0aW9uLXN0YXJ0KCRkaXIpIHtcbiAgJHNlbGVjdG9yOiAtbXVpLWJ1aWxkLXNlbGVjdG9yKG1hcC1nZXQoJG1vdGlvbi11aS1zdGF0ZXMsICRkaXIpKTtcblxuICBAYXQtcm9vdCB7XG4gICAgI3skc2VsZWN0b3J9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gV3JhcHMgdGhlIGNvbnRlbnQgaW4gdGhlIGFjdGl2ZSBjbGFzcyBmb3IgYSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciAtIFN0YXRlIHRvIGFjdGl2YXRlIGEgdHJhbnNpdGlvbiBvbi5cbkBtaXhpbiB0cmFuc2l0aW9uLWVuZCgkZGlyKSB7XG4gICRzZWxlY3RvcjogLW11aS1idWlsZC1zZWxlY3RvcihtYXAtZ2V0KCRtb3Rpb24tdWktc3RhdGVzLCAkZGlyKSwgdHJ1ZSk7XG5cbiAgQGF0LXJvb3Qge1xuICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN0YWdnZXIgYW5pbWF0aW9uLCB3aGljaCBjYW4gYmUgdXNlZCB3aXRoIEFuZ3VsYXIncyBgbmctcmVwZWF0YC5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXktYW1vdW50IC0gQW1vdW50IG9mIHRpbWUgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgdG8gYWRkIGJldHdlZW4gZWFjaCBpdGVtJ3MgYW5pbWF0aW9uLlxuQG1peGluIHN0YWdnZXIoJGRlbGF5LWFtb3VudCkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXktYW1vdW50O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwOyAvLyBQcmV2ZW50IGFjY2lkZW50YWwgQ1NTIGluaGVyaXRhbmNlXG59XG4iLCIvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBJbXBvcnRhbnRSdWxlLCBTcGFjZUFmdGVyQ29tbWEsIFNpbmdsZUxpbmVQZXJQcm9wZXJ0eVxuXG5AbWl4aW4gLW1vdGlvbi11aS1kZWZhdWx0cyB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IG1hcC1nZXQoJG1vdGlvbi11aS1zcGVlZHMsIGRlZmF1bHQpO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLWVhc2luZ3MsIGRlZmF1bHQpO1xufVxuXG4vLyBUcmFuc2l0aW9uc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbkBtaXhpbiBtb3Rpb24tdWktdHJhbnNpdGlvbnMge1xuICAvLyBTbGlkZVxuICAuc2xpZGUtaW4tZG93biAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShpbiwgIGRvd24pOyB9XG4gIC5zbGlkZS1pbi1sZWZ0ICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgcmlnaHQpOyB9XG4gIC5zbGlkZS1pbi11cCAgICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgdXApOyB9XG4gIC5zbGlkZS1pbi1yaWdodCAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgbGVmdCk7IH1cbiAgLnNsaWRlLW91dC1kb3duICAgeyBAaW5jbHVkZSBtdWktc2xpZGUob3V0LCBkb3duKTsgfVxuICAuc2xpZGUtb3V0LXJpZ2h0ICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIHJpZ2h0KTsgfVxuICAuc2xpZGUtb3V0LXVwICAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIHVwKTsgfVxuICAuc2xpZGUtb3V0LWxlZnQgICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGxlZnQpOyB9XG5cbiAgLy8gRmFkZVxuICAuZmFkZS1pbiAgeyBAaW5jbHVkZSBtdWktZmFkZShpbiwgIDAsIDEpOyB9XG4gIC5mYWRlLW91dCB7IEBpbmNsdWRlIG11aS1mYWRlKG91dCwgMSwgMCk7IH1cblxuICAvLyBIaW5nZVxuICAuaGluZ2UtaW4tZnJvbS10b3AgICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHRvcCk7IH1cbiAgLmhpbmdlLWluLWZyb20tcmlnaHQgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICByaWdodCk7IH1cbiAgLmhpbmdlLWluLWZyb20tYm90dG9tICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICBib3R0b20pOyB9XG4gIC5oaW5nZS1pbi1mcm9tLWxlZnQgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgbGVmdCk7IH1cbiAgLmhpbmdlLWluLWZyb20tbWlkZGxlLXggIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgdG9wLCAgIGNlbnRlcik7IH1cbiAgLmhpbmdlLWluLWZyb20tbWlkZGxlLXkgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgcmlnaHQsIGNlbnRlcik7IH1cbiAgLmhpbmdlLW91dC1mcm9tLXRvcCAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCB0b3ApOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1yaWdodCAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgcmlnaHQpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1ib3R0b20gIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgYm90dG9tKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tbGVmdCAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIGxlZnQpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteCB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHRvcCwgICBjZW50ZXIpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteSB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHJpZ2h0LCBjZW50ZXIpOyB9XG5cbiAgLy8gU2NhbGVcbiAgLnNjYWxlLWluLXVwICAgIHsgQGluY2x1ZGUgbXVpLXpvb20oaW4sICAwLjUsIDEpOyB9XG4gIC5zY2FsZS1pbi1kb3duICB7IEBpbmNsdWRlIG11aS16b29tKGluLCAgMS41LCAxKTsgfVxuICAuc2NhbGUtb3V0LXVwICAgeyBAaW5jbHVkZSBtdWktem9vbShvdXQsIDEsIDEuNSk7IH1cbiAgLnNjYWxlLW91dC1kb3duIHsgQGluY2x1ZGUgbXVpLXpvb20ob3V0LCAxLCAwLjUpOyB9XG5cbiAgLy8gU3BpblxuICAuc3Bpbi1pbiAgICAgeyBAaW5jbHVkZSBtdWktc3BpbihpbiwgIGN3KTsgfVxuICAuc3Bpbi1vdXQgICAgeyBAaW5jbHVkZSBtdWktc3BpbihvdXQsIGN3KTsgfVxuICAuc3Bpbi1pbi1jY3cgIHsgQGluY2x1ZGUgbXVpLXNwaW4oaW4sICBjY3cpOyB9XG4gIC5zcGluLW91dC1jY3cgeyBAaW5jbHVkZSBtdWktc3BpbihvdXQsIGNjdyk7IH1cblxuICAvLyBUcmFuc2l0aW9uIE1vZGlmaWVyc1xuICAvLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1zcGVlZHMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IHRyYW5zaXRpb24tZHVyYXRpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWVhc2luZ3Mge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1kZWxheXMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfS1kZWxheSB7IHRyYW5zaXRpb24tZGVsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG5cbi8vIEFuaW1hdGlvbnNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5AbWl4aW4gbW90aW9uLXVpLWFuaW1hdGlvbnMge1xuICAuc2hha2UgICAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNoYWtlKTsgfVxuICAuc3Bpbi1jdyAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNwaW4pOyB9XG4gIC5zcGluLWNjdyB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc3BpbihjY3cpKTsgfVxuICAud2lnZ2xlICAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHdpZ2dsZSk7IH1cblxuICAuc2hha2UsXG4gIC5zcGluLWN3LFxuICAuc3Bpbi1jY3csXG4gIC53aWdnbGUge1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLXNwZWVkcywgZGVmYXVsdCk7XG4gIH1cblxuICAvLyBBbmltYXRpb24gTW9kaWZpZXJzXG4gIC8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG4gIC5pbmZpbml0ZSB7IGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOyB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLXNwZWVkcyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgYW5pbWF0aW9uLWR1cmF0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1lYXNpbmdzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1kZWxheXMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfS1kZWxheSB7IGFuaW1hdGlvbi1kZWxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEludGVybmFsIGNvdW50ZXIgZm9yIGNyZWF0aW5nIHVuaXF1ZSBrZXlmcmFtZSBuYW1lc1xuJC1tdWktY3VzdG9tOiAwO1xuXG4vLy8gQ3JlYXRlcyBhIGtleWZyYW1lIGZyb20gb25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucy4gVXNlIHRoaXMgZnVuY3Rpb24gaW5zdGVhZCBvZiBgbXVpLWFuaW1hdGlvbmAgaWYgeW91IHdhbnQgdG8gY3JlYXRlIGEga2V5ZnJhbWUgYW5pbWF0aW9uICp3aXRob3V0KiBhdXRvbWF0aWNhbGx5IGFzc2lnbmluZyBpdCB0byB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBOYW1lIG9mIHRoZSBrZXlmcmFtZS5cbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICRlZmZlY3RzLi4uIC0gT25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyB0byBidWlsZCB0aGUga2V5ZnJhbWUgd2l0aC5cbkBtaXhpbiBtdWkta2V5ZnJhbWVzKCRuYW1lLCAkZWZmZWN0cy4uLikge1xuICAkb2JqOiAtbXVpLXByb2Nlc3MtYXJncygkZWZmZWN0cy4uLik7XG4gICRvYmo6IG1hcC1yZW1vdmUoJG9iaiwgbmFtZSk7XG5cbiAgQGtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgLy8gTm93IGl0ZXJhdGUgdGhyb3VnaCBlYWNoIGtleWZyYW1lIHBlcmNlbnRhZ2VcbiAgICBAZWFjaCAkcGN0LCAkcHJvcHMgaW4gJG9iaiB7XG4gICAgICAjey1tdWkta2V5ZnJhbWUtcGN0KCRwY3QpfSB7XG4gICAgICAgIC8vIExhc3RseSwgaXRlcmF0ZSB0aHJvdWdoIGVhY2ggQ1NTIHByb3BlcnR5IHdpdGhpbiBhIHBlcmNlbnRhZ2UgYW5kIHByaW50IGl0IG91dFxuICAgICAgICBAZWFjaCAkcHJvcCwgJHZhbHVlIGluICRwcm9wcyB7XG4gICAgICAgICAgI3skcHJvcH06ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHN0cmluZyBmb3IgYSBDU1Mga2V5ZnJhbWUsIGJ5IGNvbnZlcnRpbmcgYSBsaXN0IG9mIG51bWJlcnMgdG8gYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiBwZXJjZW50YWdlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkaW5wdXQgLSBMaXN0IG9mIG51bWJlcnMgdG8gdXNlLlxuLy8vIEByZXR1cm4ge1N0cmluZ30gQSBzZXQgb2YgY29tbWEtc2VwYXJhdGVkIHBlcmNlbnRhZ2UgdmFsdWVzLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtcGN0KCRpbnB1dCkge1xuICAkb3V0cHV0OiAoKTtcblxuICBAaWYgdHlwZS1vZigkaW5wdXQpID09ICdudW1iZXInIHtcbiAgICAkb3V0cHV0OiAoJGlucHV0ICogMSUpO1xuICB9IEBlbHNlIGlmIHR5cGUtb2YoJGlucHV0KSA9PSAnbGlzdCcge1xuICAgIEBlYWNoICRpIGluICRpbnB1dCB7XG4gICAgICAkb3V0cHV0OiBhcHBlbmQoJG91dHB1dCwgKCRpICogMSUpLCBjb21tYSk7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiBcIiN7JG91dHB1dH1cIjtcbn1cblxuLy8vIFByaW50cyB0aGUgQ1NTIHByb3BlcnRpZXMgZnJvbSBhIHNwZWNpZmljIGtleSBpbiBhIGtleWZyYW1lcyBtYXAuIFVzZWQgdG8gYm9ycm93IENTUyBmcm9tIGtleWZyYW1lIGZ1bmN0aW9ucyBmb3IgdXNlIGluIHRyYW5zaXRpb25zLlxuLy8vIEBwYXJhbSB7TWFwfSAka2YgLSBLZXlmcmFtZSBtYXAgdG8gZXh0cmFjdCBmcm9tLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAka2V5IC0gS2V5IGluIHRoZSBtYXAgdG8gcHJpbnQgdGhlIENTUyBvZi5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiAtbXVpLWtleWZyYW1lLWdldCgka2YsICRrZXkpIHtcbiAgJG1hcDogbWFwLWdldCgka2YsICRrZXkpO1xuXG4gIEBlYWNoICRwcm9wLCAkdmFsdWUgaW4gJG1hcCBvciAoKSB7XG4gICAgLy8gU29tZSBrZXlmcmFtZSBtYXBzIHN0b3JlIHRyYW5zZm9ybXMgYXMgcXVvdGVkIHN0cmluZ3NcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdzdHJpbmcnIHtcbiAgICAgICR2YWx1ZTogdW5xdW90ZSgkdmFsdWUpO1xuICAgIH1cbiAgICAjeyRwcm9wfTogJHZhbHVlO1xuICB9XG59XG5cbi8vLyBSZWZvcm1hdHMgYSBtYXAgY29udGFpbmluZyBrZXlzIHdpdGggYSBsaXN0IG9mIHZhbHVlcywgc28gdGhhdCBlYWNoIGtleSBpcyBhIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBzcGxpdCB1cC5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgcmVmb3JtYXR0ZWQgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtc3BsaXQoJG1hcCkge1xuICAkbmV3LW1hcDogKCk7XG5cbiAgLy8gU3BsaXQga2V5cyB3aXRoIG11bHRpcGxlIHZhbHVlcyBpbnRvIGluZGl2aWR1YWwga2V5c1xuICBAZWFjaCAka2V5LCAkaXRlbSBpbiAkbWFwIHtcbiAgICAka2V5LXR5cGU6IHR5cGUtb2YoJGtleSk7XG5cbiAgICBAaWYgJGtleS10eXBlID09ICdudW1iZXInIHtcbiAgICAgICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICgka2V5OiAkaXRlbSkpO1xuICAgIH0gQGVsc2UgaWYgJGtleS10eXBlID09ICdsaXN0JyB7XG4gICAgICBAZWFjaCAkayBpbiAka2V5IHtcbiAgICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrOiAkaXRlbSkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJG5ldy1tYXA7XG59XG5cbi8vLyBDb21iaW5lcyBhIHNlcmllcyBvZiBrZXlmcmFtZSBvYmplY3RzIGludG8gb25lLlxuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJG1hcHMuLi4gLSBBIHNlcmllcyBvZiBtYXBzIHRvIG1lcmdlLCBhcyBpbmRpdmlkdWFsIHBhcmFtZXRlcnMuXG4vLy8gQHJldHVybiB7TWFwfSBBIGNvbWJpbmVkIGtleWZyYW1lIG9iamVjdC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLWtleWZyYW1lLWNvbWJpbmUoJG1hcHMuLi4pIHtcbiAgJG5ldy1tYXA6ICgpO1xuXG4gIC8vIEl0ZXJhdGUgdGhyb3VnaCBlYWNoIG1hcCBwYXNzZWQgaW5cbiAgQGVhY2ggJG1hcCBpbiAkbWFwcyB7XG4gICAgQGlmIC1tdWktaXMtZnVuY3Rpb24oJG1hcCkge1xuICAgICAgJG1hcDogLW11aS1zYWZlLWNhbGwoJG1hcCk7XG4gICAgfVxuXG4gICAgJG1hcDogLW11aS1rZXlmcmFtZS1zcGxpdCgkbWFwKTtcblxuICAgIC8vIEl0ZXJhdGUgdGhyb3VnaCBlYWNoIGtleWZyYW1lIGluIHRoZSBtYXBcbiAgICAvLyAka2V5IGlzIHRoZSBrZXlmcmFtZSBwZXJjZW50YWdlXG4gICAgLy8gJHZhbHVlIGlzIGEgbWFwIG9mIENTUyBwcm9wZXJ0aWVzXG4gICAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICAgJG5ldy12YWx1ZTogKCk7XG5cbiAgICAgIEBpZiBtYXAtaGFzLWtleSgkbmV3LW1hcCwgJGtleSkge1xuICAgICAgICAvLyBJZiB0aGUgbWFwIGFscmVhZHkgaGFzIHRoZSBrZXlmcmFtZSAlLCBhcHBlbmQgdGhlIG5ldyBwcm9wZXJ0eVxuICAgICAgICAkbmV3LXZhbHVlOiAtbXVpLW1lcmdlLXByb3BlcnRpZXMobWFwLWdldCgkbmV3LW1hcCwgJGtleSksICR2YWx1ZSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gT3RoZXJ3aXNlLCBjcmVhdGUgYSBuZXcgbWFwIHdpdGggdGhlIG5ldyBwcm9wZXJ0eVxuICAgICAgICAkbmV3LXZhbHVlOiAkdmFsdWU7XG4gICAgICB9XG5cbiAgICAgIC8vIEZpbmFsbHksIG1lcmdlIHRoZSBtb2RpZmllZCBrZXlmcmFtZSB2YWx1ZSBpbnRvIHRoZSBvdXRwdXQgbWFwXG4gICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGtleTogJG5ldy12YWx1ZSkpO1xuICAgIH1cbiAgfVxuXG4gIC8vIE1ha2UgYSBuYW1lIGZvciB0aGUga2V5ZnJhbWVzXG4gICQtbXVpLWN1c3RvbTogJC1tdWktY3VzdG9tICsgMSAhZ2xvYmFsO1xuICAkbWFwLW5hbWU6IChuYW1lOiAnY3VzdG9tLSN7JC1tdWktY3VzdG9tfScpO1xuICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAkbWFwLW5hbWUpO1xuXG4gIEByZXR1cm4gJG5ldy1tYXA7XG59XG5cbi8vLyBDb21iaW5lcyB0d28gbWFwcyBvZiBDU1MgcHJvcGVydGllcyBpbnRvIG9uZSBtYXAuIElmIGJvdGggbWFwcyBoYXZlIGEgdHJhbnNmb3JtIHByb3BlcnR5LCB0aGUgdmFsdWVzIGZyb20gZWFjaCB3aWxsIGJlIGNvbWJpbmVkIGludG8gb25lIHByb3BlcnR5LlxuLy8vIEBwYXJhbSB7TWFwfSAkb25lIC0gRmlyc3QgbWFwIHRvIG1lcmdlLlxuLy8vIEBwYXJhbSB7TWFwfSAkdHdvIC0gU2Vjb25kIG1hcCB0byBtZXJnZS5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgY29tYmluZWQgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWktbWVyZ2UtcHJvcGVydGllcygkb25lLCAkdHdvKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkb25lLCB0cmFuc2Zvcm0pIGFuZCBtYXAtaGFzLWtleSgkdHdvLCB0cmFuc2Zvcm0pIHtcbiAgICAkdHJhbnNmb3JtOiBqb2luKG1hcC1nZXQoJG9uZSwgdHJhbnNmb3JtKSwgbWFwLWdldCgkdHdvLCB0cmFuc2Zvcm0pKTtcbiAgICAkb25lOiBtYXAtbWVyZ2UoJG9uZSwgKHRyYW5zZm9ybTogJHRyYW5zZm9ybSkpO1xuICAgICR0d286IG1hcC1yZW1vdmUoJHR3bywgdHJhbnNmb3JtKTtcbiAgfVxuXG4gIEByZXR1cm4gbWFwLW1lcmdlKCRvbmUsICR0d28pO1xufVxuIiwiLy8vIENyZWF0ZXMgYSBzbGlkaW5nIHRyYW5zaXRpb24gYnkgdHJhbnNsYXRpbmcgdGhlIGVsZW1lbnQgaG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtudWxsXSAtIERpcmVjdGlvbiB0byBzbGlkZSB0by4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLiBCeSBkZWZhdWx0IGBsZWZ0YCBhbmQgYHJpZ2h0YCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbi8vLyBAcGFyYW0ge0xlbmd0aH0gJGFtb3VudCBbMTAwJV0gLSBMZW5ndGggb2YgdGhlIHNsaWRlIGFzIGEgcGVyY2VudGFnZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1zbGlkZSAoXG4gICRzdGF0ZTogaW4sXG4gICRkaXJlY3Rpb246IG51bGwsXG4gICRhbW91bnQ6IDEwMCUsXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNsaWRlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkZGlyZWN0aW9uOiBpZigkZGlyZWN0aW9uICE9IG51bGwsICRkaXJlY3Rpb24sIGlmKCRzdGF0ZSA9PSBpbiwgbGVmdCwgcmlnaHQpKTtcbiAgJHNsaWRlOiBzbGlkZSgkc3RhdGUsICRkaXJlY3Rpb24sICRhbW91bnQpO1xuXG4gIC8vIENTUyBPdXRwdXRcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNsaWRlLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cblxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzbGlkZSwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBmYWRlIHRyYW5zaXRpb24gYnkgYWRqdXN0aW5nIHRoZSBvcGFjaXR5IG9mIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZnJvbSBbbnVsbF0gLSBPcGFjaXR5IHRvIHN0YXJ0IGF0LiBNdXN0IGJlIGEgbnVtYmVyIGJldHdlZW4gMCBhbmQgMS4gQnkgZGVmYXVsdCBgMGAgYW5kIGAxYCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvIFtudWxsXSAtIE9wYWNpdHkgdG8gZW5kIG9uLiBCeSBkZWZhdWx0IGAxYCBhbmQgYDBgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLWZhZGUoXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiBudWxsLFxuICAkdG86IG51bGwsXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJGZyb206IGlmKCRmcm9tICE9IG51bGwsICRmcm9tLCBpZigkc3RhdGUgPT0gaW4sIDAsIDEpKTtcbiAgJHRvOiBpZigkdG8gIT0gbnVsbCwgJHRvLCBpZigkc3RhdGUgPT0gaW4sIDEsIDApKTtcbiAgJGZhZGU6IGZhZGUoJGZyb20sICR0byk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGZhZGUsIDApO1xuXG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRmYWRlLCAxMDApO1xuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGhpbmdlIHRyYW5zaXRpb24gYnkgcm90YXRpbmcgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZnJvbSBbbGVmdF0gLSBFZGdlIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBmcm9tLiBDYW4gYmUgYHRvcGAsIGByaWdodGAsIGBib3R0b21gLCBvciBgbGVmdGAuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkYXhpcyBbZWRnZV0gLSBBeGlzIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBvbi4gQ2FuIGJlIGBlZGdlYCBvciBgY2VudGVyYC5cbi8vLyBAcGFyYW0ge0xlbmd0aH0gJHBlcnNwZWN0aXZlIFsyMDAwcHhdIC0gUGVyY2VpdmVkIGRpc3RhbmNlIGJldHdlZW4gdGhlIHZpZXdlciBhbmQgdGhlIGVsZW1lbnQuIEEgaGlnaGVyIG51bWJlciB3aWxsIG1ha2UgdGhlIHJvdGF0aW9uIGVmZmVjdCBtb3JlIHByb25vdW5jZWQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHVybi1vcmlnaW4gW251bGxdIC0gU2lkZSBvZiB0aGUgZWxlbWVudCB0byBzdGFydCB0aGUgcm90YXRpb24gZnJvbS4gQ2FuIGJlIGBmcm9tLWJhY2tgIG9yIGBmcm9tLWZyb250YC4gQnkgZGVmYXVsdCBgZnJvbS1iYWNrYCBhbmQgYGZyb20tZnJvbnRgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktaGluZ2UgKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogbGVmdCxcbiAgJGF4aXM6IGVkZ2UsXG4gICRwZXJzcGVjdGl2ZTogMjAwMHB4LFxuICAkdHVybi1vcmlnaW46IG51bGwsXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIGhpbmdlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkdHVybi1vcmlnaW46IGlmKCR0dXJuLW9yaWdpbiAhPSBudWxsLCAkdHVybi1vcmlnaW4sIGlmKCRzdGF0ZSA9PSBpbiwgZnJvbS1iYWNrLCBmcm9tLWZyb250KSk7XG4gICRoaW5nZTogaGluZ2UoJHN0YXRlLCAkZnJvbSwgJGF4aXMsICRwZXJzcGVjdGl2ZSwgJHR1cm4tb3JpZ2luKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkaGluZ2UsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGhpbmdlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNjYWxpbmcgdHJhbnNpdGlvbi4gQSBzY2FsZSBvZiBgMWAgbWVhbnMgdGhlIGVsZW1lbnQgaXMgdGhlIHNhbWUgc2l6ZS4gTGFyZ2VyIG51bWJlcnMgbWFrZSB0aGUgZWxlbWVudCBiaWdnZXIsIHdoaWxlIG51bWJlcnMgbGVzcyB0aGFuIDEgbWFrZSB0aGUgZWxlbWVudCBzbWFsbGVyLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZnJvbSBbbnVsbF0gLSBTaXplIHRvIHN0YXJ0IGF0LiBCeSBkZWZhdWx0IGAwYCBhbmQgYDFgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG8gW251bGxdIC0gU2l6ZSB0byBlbmQgYXQuIEJ5IGRlZmF1bHQgYDFgIGFuZCBgMGAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS16b29tKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogbnVsbCxcbiAgJHRvOiBudWxsLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzY2FsZS1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJGZyb206IGlmKCRmcm9tICE9IG51bGwsICRmcm9tLCBpZigkc3RhdGUgPT0gaW4sIDAsIDEpKTtcbiAgJHRvOiBpZigkdG8gIT0gbnVsbCwgJHRvLCBpZigkc3RhdGUgPT0gaW4sIDEsIDApKTtcbiAgJHNjYWxlOiB6b29tKCRmcm9tLCAkdG8pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzY2FsZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2NhbGUsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgc3Bpbm5pbmcgdHJhbnNpdGlvbiBieSByb3RhdGluZyB0aGUgZWxlbWVudC4gVGhlIGB0dXJuYCB1bml0IGlzIHVzZWQgdG8gc3BlY2lmeSBob3cgZmFyIHRvIHJvdGF0ZS4gYDF0dXJuYCBpcyBlcXVhbCB0byBhIDM2MC1kZWdyZWUgc3Bpbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW251bGxdIC0gRGlyZWN0aW9uIHRvIHNwaW4uIFNob3VsZCBiZSBgY3dgIChjbG9ja3dpc2UpIG9yIGBjY3dgIChjb3VudGVyY2xvY2t3aXNlKS4gQnkgZGVmYXVsdCBgY3dgIGFuZCBgY2N3YCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGFtb3VudCBbMC43NXR1cm5dIC0gQW1vdW50IHRvIGVsZW1lbnQgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktc3BpbihcbiAgJHN0YXRlOiBpbixcbiAgJGRpcmVjdGlvbjogY3csXG4gICRhbW91bnQ6IDAuNzV0dXJuLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzcGluLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkZGlyZWN0aW9uOiBpZigkZGlyZWN0aW9uICE9IG51bGwsICRkaXJlY3Rpb24sIGlmKCRzdGF0ZSA9PSBpbiwgY3csIGNjdykpO1xuICAkc3Bpbjogc3Bpbigkc3RhdGUsICRkaXJlY3Rpb24sICRhbW91bnQpO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzcGluLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzcGluLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGtleWZyYW1lIGZyb20gb25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyBhbmQgYXNzaWducyBpdCB0byB0aGUgZWxlbWVudCBieSBhZGRpbmcgdGhlIGBhbmltYXRpb24tbmFtZWAgcHJvcGVydHkuXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkZWZmZWN0cy4uLiAtIE9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMgdG8gYnVpbGQgdGhlIGtleWZyYW1lIHdpdGguXG5AbWl4aW4gbXVpLWFuaW1hdGlvbigkYXJncy4uLikge1xuICAkbmFtZTogbWFwLWdldCgtbXVpLXByb2Nlc3MtYXJncygkYXJncy4uLiksIG5hbWUpO1xuICBhbmltYXRpb24tbmFtZTogdW5xdW90ZSgkbmFtZSk7XG4gIEBpbmNsdWRlIG11aS1rZXlmcmFtZXMoJG5hbWUsICRhcmdzLi4uKTtcbn1cbiIsImJvZHkge1xuXHQvL1xufVxuXG4udGVtcGxhdGUge1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5hIHtcblx0Y29sb3I6IGdldC1jb2xvcihzZWNvbmRhcnkpO1xuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0dHJhbnNpdGlvbjogY29sb3IgMC4ycztcblxuXHQmOmhvdmVyIHtcblx0XHRjb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuXHR9XG59XG5cbmgxIHtcblx0Y29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcbn0iLCJbY2xhc3NePVwiaWNvbi1cIl0sIFtjbGFzcyo9XCIgaWNvbi1cIl0ge1xuXHRmb250LXNpemU6IDAuNzVlbTtcbn0iLCIuYy1ibG9ja3Mge1xuXHRiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcblx0cGFkZGluZzogcmVtLWNhbGMoNzUpIDAgcmVtLWNhbGMoNDApO1xuXG5cdCZfX2NvbHVtbiB7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuXHR9XG5cblx0Jl9faXRlbSB7XG5cdFx0YmFja2dyb3VuZDogJHdoaXRlO1xuXHRcdGJveC1zaGFkb3c6IDAgMnB4IDRweCAwIHJnYmEoMCwwLDAsMC4xNSk7XG5cdFx0Ym9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoNDUpIHJlbS1jYWxjKDEwKSByZW0tY2FsYygyMCk7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0dHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjJzO1xuXHRcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHQgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0ICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdCAgICBmbGV4LWdyb3c6IDE7XG5cblx0ICAgICY6aG92ZXIge1xuXHQgICAgXHRib3gtc2hhZG93OiAwIDJweCA0cHggMCByZ2JhKDAsMCwwLDAuNCk7XG5cdCAgICB9XG5cdH1cblxuXHQmX19pY29uIHtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG5cblx0XHRpbWcge1xuXHRcdFx0bWF4LWhlaWdodDogcmVtLWNhbGMoODBweCk7XG5cdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDgwcHgpO1xuXHRcdH1cblx0fVxuXG5cdCZfX3RleHQge1xuXHRcdGZsZXgtZ3JvdzogMTtcblxuXHRcdHAge1xuXHRcdFx0Y29sb3I6IGdldC1jb2xvcihzZWNvbmRhcnkpO1xuXHRcdH1cblx0fVxufSIsIi5jLWJyZWFkY3J1bWIge1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG5cblx0YSB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1x0XG5cdH1cblxuXHRsaTo6YWZ0ZXIge1xuXHRcdGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG5cdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0Zm9udC1zaXplOiAwLjc1ZW07XG5cdH1cbn0iLCIuYnV0dG9uIHtcblx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuXHQmLS1ibG9jayB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblxuXHQmLS1zaGFkb3cge1xuXHRcdGJveC1zaGFkb3c6IDAgMnB4IDRweCAwIHJnYmEoMCwwLDAsMC4zMCk7XG5cdH1cblxuXHQmLnRlcnRpYXJ5IHtcblx0XHRjb2xvcjogd2hpdGU7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGNvbG9yOiB3aGl0ZTtcblx0XHR9XG5cdH1cblxuXHQmLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIsXG5cdCYuaG9sbG93OmhvdmVyIHtcblx0XHRjb2xvcjogd2hpdGU7XG5cdFx0YmFja2dyb3VuZDogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG5cdFx0Ym9yZGVyLWNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcblx0fVxuXG5cdCYuaG9sbG93LnByaW1hcnk6aG92ZXIge1xuXHRcdGNvbG9yOiB3aGl0ZTtcblx0XHRiYWNrZ3JvdW5kOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdFx0Ym9yZGVyLWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdH1cblxuXHQmLmhvbGxvdy50ZXJ0aWFyeTpob3ZlciB7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXHRcdGJhY2tncm91bmQ6IGdldC1jb2xvcih0ZXJ0aWFyeSk7XG5cdFx0Ym9yZGVyLWNvbG9yOiBnZXQtY29sb3IodGVydGlhcnkpO1xuXHR9XG59XG5cbi5jYy1idG4ge1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59IiwiLmMtY2FyZCB7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjJzO1xuXG5cdCZfX2ltYWdlIHtcblx0XHRoZWlnaHQ6IHJlbS1jYWxjKDIyMCk7XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXHR9XG5cblx0Jl9fdGl0bGUge1xuXHRcdGNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcblx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuXHRcdHRyYW5zaXRpb246IGNvbG9yIDAuMnM7XG5cdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0fVxuXG5cdCYtLWxpbmsge1xuXHRcdCY6aG92ZXIge1xuXHRcdFx0Ym94LXNoYWRvdzogMCAycHggNHB4IDAgcmdiYSgwLDAsMCwwLjQpO1xuXG5cdFx0XHQuYy1jYXJkX190aXRsZSB7XG5cdFx0XHRcdGNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCAoNjM5IGRvd24pIHtcblx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKDUwMCk7XG5cdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHR9XG59IiwiLmMtY29udGFjdCB7XG5cblx0Ji0tZ3JheSB7XG5cdFx0YmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG5cblx0XHRpbnB1dCwgdGV4dGFyZWEge1xuXHRcdFx0YmFja2dyb3VuZDogJHdoaXRlO1xuXHRcdH1cblx0fVxuXG5cdCZfX2Zvcm0ge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0fVxuXHRcblx0Jl9faW5mbyB7XG5cblx0XHRwLCBoNCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdH1cblxuXHRcdGg1IHtcblx0XHRcdGNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdFx0fVxuXG5cdFx0aW1nIHtcblx0XHRcdG1heC13aWR0aDogcmVtLWNhbGMoMTcwKTtcblx0XHR9XG5cblx0XHRhIHtcblx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRjb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX2NvbHVtbiB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG5cdFx0fVxuXHR9XG5cblx0bGVnZW5kIHtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0fVxufVxuXG4uYy1mb3JtX19zZW5kIHtcblx0ZGlzcGxheTogbm9uZTtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR3aWR0aDogMTAwJTtcblx0dG9wOiByZW0tY2FsYyg1MCk7XG5cblx0Jl9fYWdhaW4ge1xuXG5cdH1cblxuXHQmX190ZXh0ICB7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuXG5cdFx0aDUge1xuXHRcdFx0Y29sb3I6IGdldC1jb2xvcih0ZXJ0aWFyeSk7XG5cdFx0fVxuXHR9XG59IiwiLmMtY29udGVudCB7XHJcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuXHJcbiAgICAmLS1pdGVtIHtcclxuICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDMwKSAwIDAgMDtcclxuICAgIH1cclxuXHJcbiAgICAmLS1pbWFnZSxcclxuICAgICYtLXZpZGVvIHtcclxuICAgICAgICBtYXJnaW46IDAgMCByZW0tY2FsYygzMCkgMDtcclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgICBjb2xvcjogZ2V0LWNvbG9yKHRlcnRpYXJ5KTtcclxuICAgIH1cclxuXHJcbiAgICAmLWRldGFpbC0taXRlbSB7XHJcblxyXG4gICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMzApIDAgMCAwO1xyXG5cclxuICAgICAgICAuYy1tZWRpYSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIHJlbS1jYWxjKDMwKSAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi5jLWNvdW50ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcblx0Ym9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGNvbG9yOiB3aGl0ZTtcblx0cGFkZGluZzogMCByZW0tY2FsYygyMCk7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCAoeG1lZGl1bSkge1xuXHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMTApIDA7XG5cdH1cblxuXHQmX19pdGVtIHtcblx0XHRmbGV4OiAxIDA7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMzApIDA7XG5cblx0XHRkaXNwbGF5OiBmbGV4O1xuXHQgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0ICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdCAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuXHQgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcblx0XHRcdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB3aGl0ZTtcblx0XHR9XG5cdFx0XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCAoeG1lZGl1bSkge1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMTUpO1xuXHRcdFx0aGVpZ2h0OiByZW0tY2FsYygxMzBweCk7XG5cblx0XHQgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcblx0XHRcdFx0Ym9yZGVyLXJpZ2h0OiAycHggc29saWQgd2hpdGU7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDA7XG5cdFx0ICAgIH1cblx0XHR9XG5cdH1cblxuXHQmX19udW1iZXIge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoNTApO1xuXHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXHR9XG5cblx0Jl9fdGl0bGUge1xuXHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG5cblx0XHRhIHtcblx0XHRcdGNvbG9yOiB3aGl0ZTtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdG9wYWNpdHk6IDAuODtcblx0XHRcdH1cdFxuXHRcdH1cblx0XHRcblx0fVxufSIsIi5jLWNoZWNrYm94IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXG5cdFx0KyBsYWJlbCB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoNikgcmVtLWNhbGMoMTApIHJlbS1jYWxjKDYpIHJlbS1jYWxjKDQ1KTtcblx0XHRcdGNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcblx0XHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1zZW1pLWJvbGQ7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcblx0XHRcdG1hcmdpbjogMCAwIHJlbS1jYWxjKDEwKSAwO1xuXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0bGVmdDogMTdweDtcbiAgICBcdFx0XHR0b3A6IDE1cHg7XG5cdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdHdpZHRoOiByZW0tY2FsYygxNCk7XG5cdFx0XHRcdGhlaWdodDogcmVtLWNhbGMoMTQpO1xuXHRcdFx0XHRib3JkZXI6IDJweCBzb2xpZCAkd2hpdGU7XG5cdFx0XHRcdGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAkbWVkaXVtLWdyYXk7XG5cdFx0XHR9XG5cblx0XHRcdCYuaXMtaW52YWxpZC1sYWJlbCB7XG5cdFx0XHRcdGJvcmRlci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0LWxpZ2h0ZW4pO1xuXHRcdFx0XHRjb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmOmNoZWNrZWQrbGFiZWwge1xuXHRcdFx0Ym9yZGVyOiAxcHggc29saWQgZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG5cblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0YmFja2dyb3VuZDogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG5cdFx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICR3aGl0ZTtcblx0XHRcdFx0Ym94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICRtZWRpdW0tZ3JheTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmLS1jbGVhbiB7XG5cdFx0aW5wdXRbdHlwZT1jaGVja2JveF0ge1xuXHRcdFx0KyBsYWJlbCB7XG5cdFx0XHRcdGJvcmRlcjogbm9uZTtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNik7XG5cdFx0XHRcdGNvbG9yOiAkdGV4dDtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcblx0XHRcdFx0cGFkZGluZzogcmVtLWNhbGMoNikgcmVtLWNhbGMoMTApIHJlbS1jYWxjKDYpIHJlbS1jYWxjKDM1KTtcblxuXHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0bGVmdDogMnB4O1xuXHRcdFx0XHRcdHRvcDogMTRweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmOmNoZWNrZWQrbGFiZWwge1xuXHRcdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Jl9fYmFkZ2Uge1xuXHRcdGZsb2F0OiByaWdodDtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0XHRjb2xvcjogJGRhcmstZ3JheTtcblx0XHRtYXJnaW46IHJlbS1jYWxjKDIpIDAgMCByZW0tY2FsYygxNSk7XG5cdH1cblxuXHQmX19zbWFsbC1iYWRnZSB7XG5cdFx0XHR3aWR0aDogMTZweDtcblx0XHRcdG1pbi13aWR0aDogYXV0bztcblx0XHQgICAgaGVpZ2h0OiAxNnB4O1xuXHRcdCAgICBsaW5lLWhlaWdodDogMTtcblx0XHQgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdFx0ICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0ICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdCAgICBtYXJnaW4tcmlnaHQ6IDVweDtcblx0XHR9XG5cblx0Jl9fcHJpY2Uge1xuXHRcdGZsb2F0OiByaWdodDtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0XHRjb2xvcjogJGRhcmstZ3JheTtcblx0XHRtYXJnaW46IHJlbS1jYWxjKDIpIDAgMCByZW0tY2FsYygxNSk7XG5cdH1cbn0iLCIkaGVhZGVyLWhvbWUtaGVpZ2h0OiByZW0tY2FsYyg1NTApO1xuXG4uYy1oZWFkZXIge1xuXG5cdCYtLXNtYWxsIHtcblx0XHRoZWlnaHQ6IHJlbS1jYWxjKDUwKTtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9kaXN0L2ltZy9oZWFkZXItYmFja2dyb3VuZC5qcGcnKTtcblx0XHRcblx0XHQmLS1wcmltYXJ5IHtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9kaXN0L2ltZy9oZWFkZXItcHJpbWFyeS5wbmcnKTtcblx0XHR9XG5cblx0XHQmLS10ZXJ0aWFyeSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9hc3NldHMvZGlzdC9pbWcvaGVhZGVyLXN1Y2Nlc3MucG5nJyk7XG5cdFx0fVxuXHR9XG5cblx0Ji0taG9tZSB7XG5cdFx0YmFja2dyb3VuZDogZ2V0LWNvbG9yKHF1YXRlcm5hcnkpO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdCZfX3NlY29uZGFyeSB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjRDJEOUYyO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG5cdFx0XHRoZWlnaHQ6ICRoZWFkZXItaG9tZS1oZWlnaHQ7XG5cdFx0fVxuXG5cdFx0Jl9fY29udGVudCB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1x0XHRcdFxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygxMDApO1xuXG5cdFx0XHRcdGgxIHtcblx0XHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDUwKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50ICg4MDApIHtcblx0XHRcdFx0aGVpZ2h0OiAkaGVhZGVyLWhvbWUtaGVpZ2h0O1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuXHRcdFx0XHRmbGV4OiAwIDAgMTAwJTtcbiAgICBcdFx0XHRtYXgtd2lkdGg6IDEwMCU7XG4gICAgXHRcdFx0cGFkZGluZy10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICBcdFx0XHRwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuXHRcdFx0fVxuXG5cdFx0XHRoMSwgcCB7XG5cdFx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Jl9faW1hZ2Uge1xuXHRcdFx0aGVpZ2h0OiAkaGVhZGVyLWhvbWUtaGVpZ2h0O1xuXHRcdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGNvbnRlbnQ6Jyc7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR3aWR0aDogNTAlO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0cmlnaHQ6IDA7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKSB7XG5cdFx0XHRcdGhlaWdodDogcmVtLWNhbGMoMzQwcHgpO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsIi5jLWhvdXNldGVzdCB7XG5cdG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDYwMCk7XG5cdGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuXG5cdGg0LCBoNSB7XG5cdFx0Zm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuXHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXHR9XG5cblx0aDQge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuXHR9XG5cblx0aDUge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuXHR9XG5cblx0Jl9fcXVlc3Rpb24ge1xuXG5cdH1cblxuXHQmX19iYXNlaW5mby1xdWVzdGlvbiB7XG5cdFx0cGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDQwKTtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG5cblx0XHQmOmxhc3Qtb2YtdHlwZSB7XG5cdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0fVxuXHR9XG5cblx0Jl9fdGl0bGUge1xuXHRcdG1hcmdpbjogcmVtLWNhbGMoMzApIDA7XG5cdH1cblxuXHQmX19yb3cge1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDgwKSAwO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCAoNjM5IGRvd24pIHtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDIwKSAwIHJlbS1jYWxjKDgwKSAwO1xuXG5cdFx0XHQuYy1ob3VzZXRlc3RfX2NhcmQge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiByZW0tY2FsYyg4MCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Jl9fYW5zd2VycyB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50ICgxMDAwIGRvd24pIHtcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0fVxuXHR9XG5cblx0Jl9fcmFkaW8td3JhcHBlciB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0fVxuXG5cdCZfX3dyYXBwZXIge1xuXHRcdG1hcmdpbjogcmVtLWNhbGMoNDApIDAgcmVtLWNhbGMoNTApIDA7XG5cdFx0YmFja2dyb3VuZDogJHdoaXRlO1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDQwKSByZW0tY2FsYygyMCk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDQwKSByZW0tY2FsYyg2MCk7XG5cdFx0fVxuXG5cdFx0ZmllbGRzZXQge1xuXHRcdFx0bWluLWlubGluZS1zaXplOiBhdXRvO1xuXHRcdH1cblx0fVxuXG5cdCZfX3Byb2dyZXNzIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGhlaWdodDogcmVtLWNhbGMoNDIpO1xuXHRcdGxpbmUtaGVpZ2h0OiAxO1xuXG5cdFx0LnByb2dyZXNzLXF1ZXN0aW9ucyB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcblx0XHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXHRcdFx0Y29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCAoNjAwIGRvd24pIHtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNik7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmMtbGluayB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50ICg2MDAgZG93bikge1xuXHRcdFx0LnByZXYtcXVlc3Rpb24sIC5uZXh0LXF1ZXN0aW9uIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblxuXHRcdFx0LmMtbGluayAuaWNvbjpiZWZvcmUge1xuXHRcdFx0XHRmb250LXNpemU6IDJlbTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmX190YWJsZSB7XG5cdFx0b3ZlcmZsb3c6IHNjcm9sbDtcbiAgICBcdGRpc3BsYXk6IGJsb2NrO1xuICAgIFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0fVxuXG5cdCZfX2NhcmQge1xuXHRcdGg1IHtcblx0XHRcdGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuXHRcdFx0Zm9udC13ZWlnaHQ6ICRoZWFkZXItZm9udC13ZWlnaHQ7XG5cdFx0fVxuXHR9XG5cblx0Jl9fc3ZnLXdyYXBwZXIge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXG5cdFx0YSB7XG5cdFx0XHRvdXRsaW5lOiAwO1xuXG5cdFx0XHQmOmZvY3VzLFxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdGNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmX19zdmcge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdG1hcmdpbi1yaWdodDogcmVtLWNhbGMoNTApO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQgKDU1OSBkb3duKSB7XG5cdFx0XHR3aWR0aDogY2FsYyg1MCUgLSA1MHB4KTtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcblx0XHR9XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcblx0XHRcdG9wYWNpdHk6IDAuODtcblx0XHR9XG5cblx0XHRzcGFuIHtcblx0XHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKDUpO1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNik7XG5cdFx0fVxuXG5cdFx0aW1nIHtcblx0XHRcdGhlaWdodDogcmVtLWNhbGMoODApO1xuXHRcdFx0d2lkdGg6IHJlbS1jYWxjKDgwKTtcblx0XHR9XG5cdH1cblxuXG5cdC8vIEZvcm0gZmllbGRzIGZvciB0aGUgSG91c2V0ZXN0XG5cblx0c2VsZWN0IHtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcblx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuXHRcdGNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcblx0XHRiYWNrZ3JvdW5kOiB3aGl0ZTtcblx0XHRib3JkZXItY29sb3I6ICRtZWRpdW0tZ3JheTtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoOXB4KSByZW0tY2FsYygxMHB4KSByZW0tY2FsYyg5cHgpIHJlbS1jYWxjKDE1cHgpO1xuXHRcdGhlaWdodDogYXV0bztcblxuXHRcdCY6Zm9jdXMge1xuXHRcdFx0Ym9yZGVyLWNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcblx0XHR9XG5cblx0XHQmOjpwbGFjZWhvbGRlcixcblx0XHQmOmRpc2FibGVkIHtcblx0XHRcdGNvbG9yOiAkbWVkaXVtLWdyYXk7XG5cdFx0fVxuXHR9XG5cblx0LmMtc2VsZWN0IHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHQmOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6IFwiXFxFOTAxXCI7XG5cdFx0XHRmb250LWZhbWlseTogJ2ljb21vb24nO1xuXHRcdFx0Y29sb3I6IGdldC1jb2xvcihzZWNvbmRhcnkpO1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygyMik7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRyaWdodDogMTBweDtcblx0XHRcdHRvcDogOHB4O1xuXHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0fVxuXG5cdFx0LmlzLWludmFsaWQtaW5wdXQge1xuXHRcdFx0Y29sb3I6IGdldC1jb2xvcihhbGVydCk7XG5cdFx0fVxuXHR9XG5cblx0Ly8gSG91c2V0ZXN0IHRhYmxlIGNhbGN1bGF0ZVxuXG5cdCZfX2NhbGN1bGF0ZSB7XG5cblx0XHRmaWVsZHNldCB7XG5cdFx0XHRtaW4taW5saW5lLXNpemU6IGF1dG87XG5cdFx0fVxuXG5cdFx0dGFibGUge1xuXHRcdFx0aW5wdXQge1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdHBhZGRpbmc6IDVweCAxMHB4O1xuXHRcdFx0XHR3aWR0aDogNzBweDtcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0fVxuXG5cdFx0XHR0ZCB7XG5cdFx0XHRcdHBhZGRpbmc6IDZweCAxMHB4O1xuXHRcdFx0XHRoZWlnaHQ6IDUxcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0I3JlbnRhbC13YXJuaW5nIHtcblxuXHRcdGRpdi5oNCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdH1cblxuXHRcdHAge1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNik7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdH1cblx0fVxufVxuXG4udGFibGVfX3dyYXBwZXIge1xuXHRvdmVyZmxvdy14OiBhdXRvO1xuXHRtYXJnaW46IDIwcHggMDtcblxuXHR0YWJsZSB7XG4gICAgXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHR9XG59XG5cbi8vIFNlbGVjdCAyIGhvb2d0ZVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQge1xuXG5cdC5zZWxlY3QyLWRyb3Bkb3duIHtcblxuXHRcdC5zZWxlY3QyLXJlc3VsdHMge1xuXHRcdCAgICBtYXgtaGVpZ2h0OiA0MDBweDtcblx0XHQgICAgbWluLWhlaWdodDogMjAwcHg7XG5cblx0XHQgICAgPiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25zIHtcblx0XHQgICAgXHRtYXgtaGVpZ2h0OiA0MDBweDtcblx0XHQgICAgfVxuXHRcdH1cblx0fVxufSIsIi5jLWljb24ge1xuXG5cdCZfX2xhcmdlIHtcblx0XHRjb2xvcjogd2hpdGU7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYyg4MHB4KTtcblx0fVxufSIsIi5jLWlucHV0IHtcblxuXHQmLS1zZWNvbmRhcnkge1xuXHRcdGJhY2tncm91bmQ6ICR3aGl0ZTtcblx0XHRjb2xvcjogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygxOCk7XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cblx0XHQmOjpwbGFjZWhvbGRlciB7XG5cdFx0XHRjb2xvcjogJG1lZGl1bS1ncmF5O1xuXHRcdH1cblx0fVxufSIsIi5jLWZvb3RlciB7XG5cdGJhY2tncm91bmQ6IGdldC1jb2xvcihzZWNvbmRhcnkpO1xuXHRwYWRkaW5nOiByZW0tY2FsYyg1MHB4KSAwIDA7XG5cdGNvbG9yOiAkd2hpdGU7XG5cdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuXG5cdCZfX2NvbHVtbiB7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzUpO1xuXHR9XG5cblx0YSB7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0fVxuXHR9XG5cblx0Jl9fdGl0bGUge1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcblxuXHRcdGEge1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cdFx0fVxuXHR9XG5cblx0Jl9fbWVudSB7XG5cdFx0bGkgYSB7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYyg4KSAwO1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdH1cblxuXHRcdCYtLWJvbGQge1xuXHRcdFx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cdFx0fVxuXG5cdFx0Ji0tc29jaWFsIHtcblxuXHRcdFx0YSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMzYpO1xuXG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdFx0XHRvcGFjaXR5OiAwLjg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLmMtZm9vdGVyX19ib3R0b20ge1xuXHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0Y29sb3I6IHdoaXRlO1xuXG5cdCZfX2ltYWdlIHtcblx0XHRpbWcge1xuXHRcdFx0bWF4LWhlaWdodDogcmVtLWNhbGMoNzApO1xuXHRcdH1cblx0fVxuXG5cdCZfX2xvZ28ge1xuXHRcdG1hcmdpbjogMCByZW0tY2FsYygxMCk7XG5cdH1cblxuXHQubG9nby1hdHJpdmUge1xuXHRcdHdpZHRoOiByZW0tY2FsYyg0MCk7XG5cdH1cblxuXHQubG9nby1nZWVmIHtcblx0XHR3aWR0aDogcmVtLWNhbGMoNjApO1xuXHR9XG59IiwiLmMtbGFiZWwge1xuXHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuXHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG5cblx0Ji0tbGluayB7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0fVxuXHRcblx0Ji0tZ2hvc3Qge1xuXHRcdGJhY2tncm91bmQ6IHdoaXRlICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQmLnN1Y2Nlc3Mge1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkIGdldC1jb2xvcihzdWNjZXNzKTtcblx0XHRjb2xvcjogZ2V0LWNvbG9yKHN1Y2Nlc3MpICFpbXBvcnRhbnQ7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdG9wYWNpdHk6IDAuODtcblx0XHR9XG5cdH1cbn0iLCJ1bCB7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5jLWxpc3Qge1xuXG5cdC8vIFx0SWNvbiBsaXN0XG5cdCZfX2ljb24ge1xuXHRcdHBhZGRpbmc6IDA7XG4gICAgXHRtYXJnaW4tbGVmdDogMDtcblxuICAgIFx0bGkge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiByZW0tY2FsYygyOCk7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG5cdFx0fVxuXG5cdFx0bGk6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6IFwi4oCiIFwiO1xuXHRcdFx0Zm9udC1mYW1pbHk6ICdpY29tb29uJztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR0b3A6IDhweDtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRjb2xvcjogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG5cdFx0fVxuXG5cdFx0Ji1jaGVja21hcmsge1xuXHRcdFx0bGk6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogXCJcXGU5MDlcIjtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLWhvdXNldGVzdCB7XG5cdFx0XHRsaTpiZWZvcmUge1xuXHRcdFx0XHRmb250LXNpemU6IDI2cHg7XG5cdFx0XHRcdHRvcDogLTFweDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuXHRcdFx0Ji0tI3skbmFtZX0ge1xuXHRcdFx0XHRsaTpiZWZvcmUge1xuXHRcdFx0XHRcdGNvbG9yOiAkY29sb3I7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLy8gSFRNTCBleGFtcGxlXG5cbi8vIDx1bCBjbGFzcz1cImMtbGlzdCBjLWxpc3RfX2ljb24gYy1saXN0X19pY29uLWNoZWNrbWFyayBjLWxpc3RfX2ljb24tLXByaW1hcnlcIj5cbi8vICAgICA8bGk+IExpc3QgaXRlbSA8L2xpPlxuLy8gICAgIDxsaT4gTGlzdCBpdGVtIDwvbGk+XG4vLyAgICAgPGxpPiBMaXN0IGl0ZW0gPC9saT5cbi8vIDwvdWw+XG5cblxuXG5cbi8vIGZvciBAU2FwZSwgMSBjbGFzcyBvbiBVTCBmb3IgaWNvbiBjaGVjayBsaXN0IHdpdGggcHJpbWFyeSBjb2xvci5cblxuLmMtbGlzdF9faWNvbi1jaGVja21hcmsge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cblx0bGkge1xuXHRcdHBhZGRpbmc6IDAgMCByZW0tY2FsYygyMCkgcmVtLWNhbGMoMjgpO1xuXHRcdG1hcmdpbjogMDtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiBcIlxcZTkwOVwiO1xuXHRcdFx0Zm9udC1mYW1pbHk6ICdpY29tb29uJztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR0b3A6IDhweDtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0XHRjb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuXHRcdH1cblx0fVxufSIsIi5jLWxvZ28ge1xuXG5cdCYtLXRvcC1iYXIge1xuXHRcdGltZyB7XG5cdFx0XHRtYXJnaW4tdG9wOiByZW0tY2FsYygxMCk7XG5cdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDQwKTtcdFxuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG5cdFx0XHRpbWcge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDY0KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCIuYy1saW5rIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuXHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG5cdEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG5cdFx0Ji0tI3skbmFtZX17XG5cdFx0XHRjb2xvcjogJGNvbG9yO1xuXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0Y29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiJGJwLW5hdi11cDogMTAyNDtcbiRicC1uYXYtZG93bjogMTAyMztcblxuLmMtbWFpbi1uYXYge1xuXG5cdCZfX3RyaWdnZXIge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjgpO1xuXHRcdGNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdG91dGxpbmU6IDA7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSBkb3duKSB7XG5cdFx0Jl9faXRlbSB7XG5cdFx0XHQmLS1wcmludCB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Jl9faXRlbSB7XG5cdFx0XHQ+IHNwYW4gYSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuXHRcdFx0fVxuXG5cdFx0XHQmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJde1xuICBcdFx0XHRcdC5pY29uLWNoZXZlcm9uLWRvd24ge1xuICBcdFx0XHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXFxFOTA0XCI7XG5cdFx0XHRcdFx0fVxuICBcdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50ICgkYnAtbmF2LWRvd24gZG93bikge1xuXHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuXHRcdCZfX2xpc3Qge1xuXHRcdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuXHRcdH1cblx0XHRcblx0XHQmX19pdGVtIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdFx0PiBzcGFuIHtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG5cdFx0XHRcdGEge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1x0XHRcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQ+IGEge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXHRcdFx0fVxuXG5cdFx0XHQuaWNvbi1jaGV2ZXJvbi1kb3duIHtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygyNCk7XG5cblx0XHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0XHR0b3A6IDEycHg7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCAoJGJwLW5hdi11cCkge1xuXG5cdFx0Jl9fbGlzdCB7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdH1cblxuXHRcdCZfX2l0ZW0ge1xuXHRcdFx0YSB7XG5cdFx0XHRcdGNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNik7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcblxuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcblx0XHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCYtLXN2ZyB7XG5cdFx0XHRcdG1heC1oZWlnaHQ6IHJlbS1jYWxjKDgwKTtcblx0XHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdGhlaWdodDogcmVtLWNhbGMoMjUpO1xuXHRcdFx0XHRcdHdpZHRoOiByZW0tY2FsYygyNSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHRwYWRkaW5nOiByZW0tY2FsYygxMCkgcmVtLWNhbGMoMTUpICFpbXBvcnRhbnQ7XG5cblx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQ6ICR3aGl0ZTtcblx0XHRcdFx0XHRcdG9wYWNpdHk6IDAuODtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRidXR0b24ge1xuXHRcdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0XHRwYWRkaW5nOiByZW0tY2FsYygxMCkgcmVtLWNhbGMoMTUpO1xuXG5cdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHRvcGFjaXR5OiAwLjg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCYtLWJ1c2luZXNzIHtcblx0XHRcdFx0XG5cdFx0XHRcdGEge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6IGdldC1jb2xvcihzZWNvbmRhcnkpO1xuXHRcdFx0XHRcdGNvbG9yOiB3aGl0ZTtcblx0XHRcdFx0XHRwYWRkaW5nOiByZW0tY2FsYygzMikgcmVtLWNhbGMoMTUpO1xuXG5cdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHRjb2xvcjogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB3aGl0ZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ji5pcy1hY3RpdmUge1xuXHRcdFx0XHQuaWNvbi1jaGV2ZXJvbi1kb3duIHtcblx0XHRcdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHRcdFx0Y29udGVudDogXCJcXEU5MDRcIjtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuaXMtZHJvcGRvd24tc3VibWVudSB7XG5cdFx0d2lkdGg6IHJlbS1jYWxjKDIyMCk7XG5cdFx0Ym94LXNoYWRvdzogMCAycHggNHB4IDAgcmdiYSgwLDAsMCwwLjE1KTtcblx0XHRib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblx0XHRib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0fVxufSIsIi5jLW1lZGlhIHtcblx0XG5cdCYtLXBhZGRpbmctdG9wIHtcblx0XHRwYWRkaW5nLXRvcDogcmVtLWNhbGMoNTApO1x0XG5cdH1cblxuXHQmLS1ncmF5IHtcblx0XHRiYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcblx0fVxuXG5cdCZfX2ltYWdlIHtcblxuXHRcdCZfX3dyYXBwZXIge1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuOyBcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcblx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX2ltZyB7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG5cdFx0XHRtaW4td2lkdGg6IHJlbS1jYWxjKDM3MHB4KTtcblx0XHRcdG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDMyMHB4KTtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuXHRcdFx0XHRtaW4taGVpZ2h0OiByZW0tY2FsYygzMjRweCk7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdFxuXHRcdCZfX2NvbnRlbnQge1xuXHRcdFx0YmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG5cdFx0XHRjb2xvcjogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuICAgIFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDMwKTtcblxuXHRcdFx0LmMtbGluayB7XG5cdFx0XHRcdGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji0tcmV2ZXJzZSB7XG5cdFx0XHQuYy1tZWRpYV9faW1hZ2VfX3dyYXBwZXIge1xuXHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcblx0XHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblx0XG5cdCZfX2ljb24ge1xuXG5cdFx0Jl9faW1hZ2Uge1xuXHRcdFx0aW1nIHtcblx0XHRcdFx0bWF4LXdpZHRoOiByZW0tY2FsYyg1MCk7XHRcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX190ZXh0IHtcblx0XHRcdHAge1xuXHRcdFx0XHRjb2xvcjogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiZm9ybS5tdWx0aS1mb3JtIHtcblxuXHRmaWVsZHNldC5za2lwLFxuXHRmaWVsZHNldDpub3QoLmFjdGl2ZSkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHRmaWVsZHNldCAuYnV0dG9ucyAuc3VibWl0IHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0ZmllbGRzZXQuYWN0aXZlOmZpcnN0LW9mLXR5cGUgLmJ1dHRvbnMge1xuXHRcdC5wcmV2LFxuXHRcdC8qIC5zdWJtaXQgKi8ge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cblxuXHQvKiBmaWVsZHNldC5hY3RpdmU6bm90KDpsYXN0LW9mLXR5cGUpIC5idXR0b25zIHtcblx0XHQuc3VibWl0IHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9ICovXG5cblx0LyogZmllbGRzZXQuYWN0aXZlOmxhc3Qtb2YtdHlwZSAuYnV0dG9ucyB7XG5cdFx0Lm5leHQge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH0gKi9cbn0iLCIuYy1pbWFnZSB7XG5cdHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDIwKTtcbn0iLCIuYy1wcmljZS10YWJsZSB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5O1xuXG5cdCZfX2l0ZW0ge1xuXHRcdGJhY2tncm91bmQ6IHdoaXRlO1xuXHRcdGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXHRcdGJveC1zaGFkb3c6IDAgMnB4IDRweCAwIHJnYmEoMCwwLDAsMC4xNSk7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0fVxuXG5cdCZfX3RpdGxlIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcblx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdGJvcmRlci1ib3R0b206IDA7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMjApIHJlbS1jYWxjKDIwKSByZW0tY2FsYygxMCk7XG5cblx0XHRoMiB7XG5cdFx0XHRjb2xvcjogd2hpdGU7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0fVxuXHR9XG5cblx0Jl9fYm9keSB7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMjApIHJlbS1jYWxjKDMwKSAwIHJlbS1jYWxjKDMwKTtcblx0fVxuXG5cdCZfX2Zvb3RlciB7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMjApIDA7XG5cdFx0bWFyZ2luOiBhdXRvIHJlbS1jYWxjKDMwKSAwO1xuXHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG5cblx0XHRwIHtcblx0XHRcdG1hcmdpbjogMDtcblx0XHR9XG5cdH1cblxuXHQmX19jb250ZW50IHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuXHRcdFx0PiBwIHtcblx0XHRcdFx0bWluLWhlaWdodDogcmVtLWNhbGMoNTYpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlIGRvd24pIHtcblx0XHQmX19jb2x1bW4ge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuXHRcdH1cblx0fVxuXG5cdC8vIEljb24gbGlzdCBpbnNpZGUgcHJpY2UgdGFibGUgd2l0aCBjaGVjayBpY29uLCBwcmltYXJ5IGNvbG9yLlxuXG5cdHVsIHtcblx0XHRtYXJnaW46IDA7XG5cdFx0cGFkZGluZzogMDtcblxuXHRcdGxpIHtcblx0XHRcdHBhZGRpbmc6IDAgMCByZW0tY2FsYygyMCkgcmVtLWNhbGMoMjgpO1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdGNvbnRlbnQ6IFwiXFxlOTA5XCI7XG5cdFx0XHRcdGNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cblx0XHRcdFx0Zm9udC1mYW1pbHk6ICdpY29tb29uJztcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHR0b3A6IDhweDtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNCk7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsIi5jLXByb2R1Y3Qge1xuXG5cdCZfX2NhcmQge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQgKDYzOSBkb3duKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiByZW0tY2FsYyg0MCk7XG5cdFx0fVxuXHR9XG5cblx0Jl9fcm93IHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50ICg2MzkgZG93bikge1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuXHRcdH1cblx0fVxufSIsIi5jLW5ld3Mge1xuXHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoZ2V0LWNvbG9yKHRlcnRpYXJ5KSwgdHJhbnNwYXJlbnQpO1xuXG5cdCYtLWl0ZW0ge1xuXHRcdGJveC1zaGFkb3c6IDAgMnB4IDEzcHggMCByZ2JhKDAsMCwwLC40KTtcblx0XHRtYXJnaW46IHJlbS1jYWxjKDMwKSAwO1xuXHR9XG5cblx0Ji0tY29udGVudCB7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMjApIHJlbS1jYWxjKDMwKTtcblx0XHRiYWNrZ3JvdW5kOiB3aGl0ZTtcblxuXHRcdHAge1xuXHRcdFx0Y29sb3I6IGdldC1jb2xvcih0ZXJ0aWFyeSk7XG5cdFx0fVxuXHR9XG5cblx0Ji0tZGF0ZSB7XG5cdFx0Y29sb3I6ICRkYXJrLWdyYXk7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNCk7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuXHR9XG5cblx0Ji0tcGFnaW5hdGlvbiB7XG5cblx0XHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdFx0bGkge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG5cdFx0XHRhIHtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRjb2xvcjogd2hpdGU7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcblx0XHRcdFx0cGFkZGluZzogcmVtLWNhbGMoNCkgcmVtLWNhbGMoMTIpO1xuXG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcihzZWNvbmRhcnkpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Ji5hY3RpdmUge1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcihzZWNvbmRhcnkpO1xuXG5cdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5jLW5ld3MtZGV0YWlsIHtcblx0YmFja2dyb3VuZDogd2hpdGU7XG5cblx0Ji0taXRlbSB7XG5cdFx0bWFyZ2luOiByZW0tY2FsYygzMCkgMCAwIDA7XG5cdH1cblxuXHQmLS1pbWFnZSB7XG5cdFx0bWFyZ2luOiAwIDAgcmVtLWNhbGMoMzApIDA7XG5cdH1cblxuXHRwIHtcblx0XHRjb2xvcjogZ2V0LWNvbG9yKHRlcnRpYXJ5KTtcblx0fVxufSIsIi5jLXJhZGlvIHtcblxuXHRpbnB1dFt0eXBlPXJhZGlvXSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdCsgbGFiZWwge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDYpIHJlbS1jYWxjKDEwKSByZW0tY2FsYyg2KSByZW0tY2FsYyg0NSk7XG5cdFx0XHRjb2xvcjogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG5cdFx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG5cdFx0XHRtYXJnaW46IDAgMCByZW0tY2FsYygxMCkgMDtcblxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdGxlZnQ6IDE3cHg7XG4gICAgXHRcdFx0dG9wOiAxNXB4O1xuXHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHR3aWR0aDogcmVtLWNhbGMoMTQpO1xuXHRcdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDE0KTtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdFx0XHRib3JkZXI6IDJweCBzb2xpZCAkd2hpdGU7XG5cdFx0XHRcdGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDFweCAkbWVkaXVtLWdyYXk7XG5cdFx0XHR9XG5cblx0XHRcdCYuaXMtaW52YWxpZC1sYWJlbCB7XG5cdFx0XHRcdGJvcmRlci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0LWxpZ2h0ZW4pO1xuXHRcdFx0XHRjb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmOmNoZWNrZWQrbGFiZWwge1xuXHRcdFx0Ym9yZGVyOiAxcHggc29saWQgZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG5cblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0YmFja2dyb3VuZDogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG5cdFx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICR3aGl0ZTtcblx0XHRcdFx0Ym94LXNoYWRvdzogMHB4IDBweCAwcHggMXB4ICRtZWRpdW0tZ3JheTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0XG5cdCYtLWNsZWFuIHtcblx0XHRpbnB1dFt0eXBlPXJhZGlvXSB7XG5cdFx0XHQrIGxhYmVsIHtcblx0XHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0XHRcdFx0Y29sb3I6ICR0ZXh0O1xuXHRcdFx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuXHRcdFx0XHRwYWRkaW5nOiByZW0tY2FsYyg2KSByZW0tY2FsYygxMCkgcmVtLWNhbGMoNikgcmVtLWNhbGMoMzUpO1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdGxlZnQ6IDJweDtcblx0XHRcdFx0XHR0b3A6IDE0cHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0JjpjaGVja2VkK2xhYmVsIHtcblx0XHRcdFx0Ym9yZGVyOiBub25lO1xuXG5cdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCZfX3JlY3Qge1xuXHRcdGlucHV0W3R5cGU9cmFkaW9dIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cblx0XHRcdCsgbGFiZWwge1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdFx0XHRcdHdpZHRoOiByZW0tY2FsYygxNzApO1xuXHRcdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDE3MCk7XG5cdFx0XHRcdG1hcmdpbjogMCByZW0tY2FsYygxMCk7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXHRcdFx0XHRib3gtc2hhZG93OiAwIDJweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuXG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdGJveC1zaGFkb3c6IDAgMnB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC40KTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdHAge1xuXHRcdFx0XHRcdGNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcblx0XHRcdFx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblx0XHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0XHRcdFx0XHRtYXJnaW46IHJlbS1jYWxjKDUpIDAgMCAwO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCAoNjAwIGRvd24pIHtcblx0XHRcdFx0XHRtYXJnaW46IDAgcmVtLWNhbGMoNSk7XG5cdFx0XHRcdFx0d2lkdGg6IHJlbS1jYWxjKDkwKTtcblx0XHRcdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDkwKTtcblxuXHRcdFx0XHRcdGltZyB7XG5cdFx0XHRcdFx0XHR3aWR0aDogcmVtLWNhbGMoNTApO1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiByZW0tY2FsYyg1MCk7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0cCB7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0JjpjaGVja2VkK2xhYmVsIHtcblx0XHRcdFx0Ym9yZGVyOiAzcHggc29saWQgZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5zbWFsbCB7XG5cdFx0XHRpbnB1dFt0eXBlPXJhZGlvXSB7XG5cblx0XHRcdFx0KyBsYWJlbCB7XG5cdFx0XHRcdFx0aGVpZ2h0OiByZW0tY2FsYyg1MCk7XG5cdFx0XHRcdFx0bWluLXdpZHRoOiByZW0tY2FsYygxMzApO1xuXHRcdFx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0XHRcdG1hcmdpbjogcmVtLWNhbGMoMTApIHJlbS1jYWxjKDIwKSByZW0tY2FsYygxMCkgMDtcblxuXHRcdFx0XHRcdHAge1xuXHRcdFx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRcdFx0cGFkZGluZzogMCByZW0tY2FsYygxNSk7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOmNoZWNrZWQrbGFiZWwge1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6IGdldC1jb2xvcihzZWNvbmRhcnkpO1xuXHRcdFx0XHRcdGJvcmRlcjogbm9uZTtcblxuXHRcdFx0XHRcdHAge1xuXHRcdFx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ly8gJjpmaXJzdC1vZi10eXBlIHtcblx0XHRcdC8vIFx0aW5wdXRbdHlwZT1yYWRpb10ge1xuXG5cdFx0XHQvLyBcdFx0KyBsYWJlbCB7XG5cdFx0XHQvLyBcdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdC8vIFx0XHR9XG5cdFx0XHQvLyBcdH1cblx0XHRcdC8vIH1cblx0XHR9XG5cdH1cbn0iLCIuc2VsZWN0IHtcblx0Jl9fdHJhbnNwYXJlbnQge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdGNvbG9yOiB3aGl0ZTtcblx0ICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cdCAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwcHgpO1xuXHQgICAgaGVpZ2h0OiBhdXRvO1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkIGdldC1jb2xvcihwcmltYXJ5KTtcblxuXHRcdCY6Zm9jdXMge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCBnZXQtY29sb3IocHJpbWFyeSk7XG5cdFx0XHRib3gtc2hhZG93OiAwIDAgcmVtLWNhbGMoNSkgZ2V0LWNvbG9yKHByaW1hcnkpO1xuXHRcdH1cblx0fVxufVxuXG4vLyBTZWxlY3QyIHN0eWxpbmdcblxuLnNlbGVjdDIge1xuXHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXG5cdCYtc2VsZWN0aW9uIHtcblx0XHRoZWlnaHQ6IHJlbS1jYWxjKDQ3KSAhaW1wb3J0YW50O1xuXHRcdGJvcmRlci1jb2xvcjogJG1lZGl1bS1ncmF5ICFpbXBvcnRhbnQ7XG5cblx0XHQmX19yZW5kZXJlZCB7XG5cdFx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtc2VtaS1ib2xkO1xuXHRcdFx0Y29sb3I6IGdldC1jb2xvcihzZWNvbmRhcnkpICFpbXBvcnRhbnQ7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDE1KSAhaW1wb3J0YW50O1xuXHRcdFx0bGluZS1oZWlnaHQ6IHJlbS1jYWxjKDQ3cHgpICFpbXBvcnRhbnQ7XG5cdFx0fVxuXG5cdFx0Jl9fYXJyb3cge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH1cblxuXHQmLXNlYXJjaF9fZmllbGQge1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUpICFpbXBvcnRhbnQ7XG5cdFx0YmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4gICAgXHRwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDEwKSAhaW1wb3J0YW50O1xuXHR9XG5cblx0Ji5pcy1pbnZhbGlkLWlucHV0ICsgLnNlbGVjdDItY29udGFpbmVyIHtcblxuXHRcdC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcblx0XHRcdGJhY2tncm91bmQ6ICNGREVBRUM7XG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCAjRUEyOTQxICFpbXBvcnRhbnQ7XG5cdFx0fVxuXG5cdFx0LnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG5cdFx0XHRjb2xvcjogI0VBMjk0MSAhaW1wb3J0YW50O1xuXHRcdH1cblx0fVxufSIsIi5jLXRlc3RpbW9uaWFsIHtcblx0Ly8gbWF4LXdpZHRoOiAxOTIwcHg7XG5cdC8vIG1hcmdpbjogMCBhdXRvO1xuXG5cdCYtLWl0ZW0ge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRoZWlnaHQ6IHJlbS1jYWxjKDUwMHB4KTtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxuXG5cdCYtLWJhY2tncm91bmQge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlIGRvd24pIHtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogMjAwJSAhaW1wb3J0YW50O1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cblx0Ji0tY29udGVudCB7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoNDBweCkgcmVtLWNhbGMoNzBweCkgcmVtLWNhbGMoMjBweCk7XG5cdFx0bWFyZ2luOiByZW0tY2FsYygyNXB4KTtcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKCBnZXQtY29sb3IodGVydGlhcnkpLCAuOCApO1xuXHRcdG1heC13aWR0aDogcmVtLWNhbGMoNTIwcHgpO1xuXHRcdGNvbG9yOiB3aGl0ZTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKSB7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYygzMHB4KTtcblx0XHR9XG5cblx0XHRoMyB7XG5cdFx0XHRib3JkZXItYm90dG9tOiAzcHggc29saWQgZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMjBweCk7XG5cdFx0fVxuXHR9XG5cblx0Ji0tbmFtZSB7XG5cdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoMTBweCk7XG5cdH1cblxuXHQub3JiaXQtYnVsbGV0cyBidXR0b24ge1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0fVxuXG5cdCYtLWNvbHVtbnMge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlIGRvd24pIHtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0fVxuXHR9XG5cblx0Ji0tYnVsbGV0cyB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuICAgIFx0Ym90dG9tOiByZW0tY2FsYygyMHB4KTtcbiAgICBcdHdpZHRoOiAxMDAlO1xuXHR9XG5cblx0Ly8gUGVhbnV0cyBmaXhcblx0Lm1lZGlhLWltYWdlIHtcblx0XHRpbWcge1xuXHRcdFx0d2lkdGg6IDExNzBweDtcblx0XHRcdGhlaWdodDogNTAwcHg7XG5cdFx0fVxuXHR9XG59IiwiLmMtdGV4dCxcbi5jLW1lZGlhIHsgICAgICAgICAgICAgICAgICAvLyBmaXggZm9yIGdvb2QgbGlzdCBhbHNvIGluIHRoZSBtZWRpYSBjb21wb25lbnRcblx0XG5cdHVsIHtcbiAgICBcdHBhZGRpbmc6IDA7XG4gICAgXHRtYXJnaW4tbGVmdDogMDtcblxuICAgIFx0bGkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgIFx0XHRwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDI4KTsgXG4gICAgXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBcdH1cblxuXHRcdGxpOmJlZm9yZSB7XG4gICAgXHRcdGNvbnRlbnQ6IFwi4oCiIFwiO1xuICAgIFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgXHRcdGxlZnQ6IDA7XG4gICAgXHRcdHRvcDogLTJweDtcbiAgICBcdFx0Zm9udC1zaXplOiByZW0tY2FsYygzMik7XG4gICAgXHRcdGxpbmUtaGVpZ2h0OiAxO1xuICAgIFx0XHRjb2xvcjogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG5cdFx0fVxuXHR9XG59XG5cbi8vIEZpeCBmb3IgcGVhbnV0cyBsaXN0XG5cbi5yZWRhY3Rvci10b29sYmFyID4gbGk6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn0iLCIudG9vbHRpcCB7XHJcblx0Ly8gYm9yZGVyOiAzcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG5cclxuXHRib3gtc2hhZG93OiAwcHggMHB4IDEwcHggIzljOWM5YztcclxuXHJcblx0Ly8gJjphZnRlciB7XHJcblx0Ly8gXHRkaXNwbGF5OiBibG9jaztcclxuXHQvLyBcdHdpZHRoOiAwO1xyXG5cdC8vIFx0aGVpZ2h0OiAwO1xyXG5cdC8vIFx0Ym9yZGVyOiBpbnNldCAwLjc1cmVtO1xyXG5cdC8vIFx0Y29udGVudDogJyc7XHJcblx0Ly8gXHRib3JkZXItYm90dG9tLXdpZHRoOiAwO1xyXG5cdC8vIFx0Ym9yZGVyLXRvcC1zdHlsZTogc29saWQ7XHJcblx0Ly8gXHRib3JkZXItY29sb3I6IHdoaXRlIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xyXG5cdC8vIFx0Ym90dG9tOiAtMTBweDtcclxuXHQvLyBcdGxlZnQ6IDEwJTtcclxuXHQvLyBcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHQvLyB9XHJcblxyXG5cdGltZyB7XHJcblx0XHRtYXgtd2lkdGg6IDE1MHB4O1xyXG5cdH1cclxufVxyXG5cclxuLmhhcy10aXAge1xyXG4gICAgLmZvbnQtd2VpZ2h0LW5vcm1hbCB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgIH1cclxufSIsIiR0b3AtYmFyLWhlaWdodDogODBweDtcbiR0b3AtYmFyLWhlaWdodC1tb2JpbGU6IDYwcHg7XG5cbi5jLXRvcC1iYXIge1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAkdG9wLWJhci1oZWlnaHQtbW9iaWxlO1xuXHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdGJveC1zaGFkb3c6IDAgMnB4IDRweCAwIHJnYmEoMCwwLDAsMC4xNSk7XG5cdHotaW5kZXg6IDEwMDAwO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG5cdFx0aGVpZ2h0OiAkdG9wLWJhci1oZWlnaHQ7XHRcblx0fVxuXG5cdCZfX2lubmVyIHtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHRcdGhlaWdodDogJHRvcC1iYXItaGVpZ2h0O1x0XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCAoMTAyMyBkb3duKSB7XG5cdFx0Ji5pcy1vcGVuIHtcblx0XHRcdGJhY2tncm91bmQ6IGdldC1jb2xvcihzZWNvbmRhcnkpO1xuXHRcdFx0cG9zaXRpb246IGZpeGVkO1xuXHQgICAgXHRoZWlnaHQ6IDEwMHZoO1xuXHQgICAgXHR3aWR0aDogMTAwJTtcblxuXHQgICAgXHQuYy1tYWluLW5hdiB7XG5cdCAgICBcdFx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblx0ICAgIFx0fVxuXG5cdCAgICBcdC5jLW1haW4tbmF2X19pdGVtIGEge1xuXHQgICAgXHRcdGNvbG9yOiB3aGl0ZTtcblx0ICAgIFx0fVxuXG5cdCAgICBcdC5jLW1haW4tbmF2X190cmlnZ2VyIHtcblx0ICAgIFx0XHRjb2xvcjogd2hpdGU7XG5cblx0ICAgIFx0XHQuaWNvbjo6YmVmb3JlIHtcblx0ICAgIFx0XHRcdGNvbnRlbnQ6IFwiXFxFOTA1XCI7XG5cdCAgICBcdFx0fVxuXHQgICAgXHR9XG5cdFx0fVxuXHR9XG5cblx0Lm1lbnUtaWNvbl9fd3JhcHBlciB7XG5cdFx0cG9zaXRpb246IGZpeGVkO1xuXHQgICAgei1pbmRleDogOTtcblx0ICAgIHJpZ2h0OiAyMHB4O1xuXHQgICAgdG9wOiAxNXB4O1xuXG5cdCAgICBAaW5jbHVkZSBicmVha3BvaW50ICgxMDI0KSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHQgICAgfVxuXHR9XG59IiwiLmMtdXNwLWJsb2NrIHtcblxuXHRoMiB7XG5cdFx0Y29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcblx0fVxuXG5cdCZfX3dyYXBwZXIge1xuXHRcdGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDQwKSByZW0tY2FsYygyMCkgcmVtLWNhbGMoMzApO1xuXHRcdGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXHR9XG5cblx0Jl9faW5uZXIge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0fVxuXG5cdCZfX3RleHQge1xuXHRcdG1heC13aWR0aDogcmVtLWNhbGMoNTcwcHgpO1xuXHR9XG59IiwiLy8gcmVzcG9uc2l2ZSA0OjMgdmlkZW9cblxuLmMtdmlkZW8ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG5cdGhlaWdodDogMDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHRpZnJhbWUge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdH1cbn0iLCIudGV4dC1hbGlnbi1jZW50ZXIge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi50ZXh0LWFsaWduLWxlZnQge1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udGV4dC1hbGlnbi1yaWdodCB7XG5cdHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uZmxvYXQtbGVmdCB7XG5cdGZsb2F0OiBsZWZ0O1xufVxuXG4uZmxvYXQtcmlnaHQge1xuXHRmbG9hdDogcmlnaHQ7XG59XG5cbi5mb250LXByaW1hcnkge1xuXHRmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG59XG5cbi5mdy1ib2xkIHtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG59IiwiQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcblx0LmNvbG9yLSN7JG5hbWV9IHtcblx0XHRjb2xvcjogJGNvbG9yO1xuXHR9XG59XG5cbkBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG5cdC5iYWNrZ3JvdW5kY29sb3ItI3skbmFtZX0ge1xuXHRcdGJhY2tncm91bmQ6ICRjb2xvcjtcblx0fVxufVxuXG4uY29sb3ItYmxhY2sge1xuXHRjb2xvcjogJGJsYWNrICFpbXBvcnRhbnQ7XG59IiwiJHBhZGRpbmdzLWxpc3Q6ICgxMCwgMjAsIDMwLCA0MCwgNTAsIDgwLCAxMDApO1xuJG1hcmdpbnMtbGlzdDogJHBhZGRpbmdzLWxpc3Q7XG4kcG9zaXRpb25zOiAoJ3QnLCAncicsICdiJywgJ2wnLCAndicsICdoJyk7XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBQYWRkaW5nc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5uby1wYWRkaW5nIHtcblx0cGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4ubm8tcGFkZGluZy1iIHtcblx0cGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLm5vLXBhZGRpbmctdCB7XG5cdHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5uby1wYWRkaW5nLWwge1xuXHRwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuLm5vLXBhZGRpbmctciB7XG5cdHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuQGVhY2ggJHB4IGluICRtYXJnaW5zLWxpc3Qge1xuXHQucGFkZGluZy0jeyRweH0ge1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKCRweCk7XG5cdH1cblxuXHQucGFkZGluZy12LSN7JHB4fSB7XG5cdFx0cGFkZGluZy10b3A6IHJlbS1jYWxjKCRweCk7XG5cdFx0cGFkZGluZy1ib3R0b206IHJlbS1jYWxjKCRweCk7XG5cdH1cblxuXHQucGFkZGluZy1iLSN7JHB4fSB7XG5cdFx0cGFkZGluZy1ib3R0b206IHJlbS1jYWxjKCRweCk7XG5cdH1cblxuXHQucGFkZGluZy10LSN7JHB4fSB7XG5cdFx0cGFkZGluZy10b3A6IHJlbS1jYWxjKCRweCk7XG5cdH1cblxuXHQucGFkZGluZy1oLSN7JHB4fSB7XG5cdFx0cGFkZGluZy1sZWZ0OiByZW0tY2FsYygkcHgpO1xuXHRcdHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKCRweCk7XG5cdH1cblxuXHQucGFkZGluZy1sLSN7JHB4fSB7XG5cdFx0cGFkZGluZy1sZWZ0OiByZW0tY2FsYygkcHgpO1xuXHR9XG5cblx0LnBhZGRpbmctci0jeyRweH0ge1xuXHRcdHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKCRweCk7XG5cdH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIE1hcmdpbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4ubm8tbWFyZ2luIHtcblx0bWFyZ2luOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5uby1tYXJnaW4tYiB7XG5cdG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLm5vLW1hcmdpbi10IHtcblx0bWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4ubm8tbWFyZ2luLWwge1xuXHRtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4ubm8tbWFyZ2luLXIge1xuXHRtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuQGVhY2ggJHB4IGluICRtYXJnaW5zLWxpc3Qge1xuXHQubWFyZ2luLSN7JHB4fSB7XG5cdFx0bWFyZ2luOiByZW0tY2FsYygkcHgpO1xuXHR9XG5cblx0Lm1hcmdpbi12LSN7JHB4fSB7XG5cdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoJHB4KTtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkcHgpO1xuXHR9XG5cblx0Lm1hcmdpbi1iLSN7JHB4fSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJHB4KTtcblx0fVxuXG5cdC5tYXJnaW4tdC0jeyRweH0ge1xuXHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKCRweCk7XG5cdH1cblxuXHQubWFyZ2luLWgtI3skcHh9IHtcblx0XHRtYXJnaW4tbGVmdDogcmVtLWNhbGMoJHB4KTtcblx0XHRtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKCRweCk7XG5cdH1cblxuXHQubWFyZ2luLWwtI3skcHh9IHtcblx0XHRtYXJnaW4tbGVmdDogcmVtLWNhbGMoJHB4KTtcblx0fVxuXG5cdC5tYXJnaW4tci0jeyRweH0ge1xuXHRcdG1hcmdpbi1yaWdodDogcmVtLWNhbGMoJHB4KTtcblx0fVxufSIsIi5zZWxlY3QyLWNvbnRhaW5lciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDI4cHg7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsgfVxuICAgIC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAgIC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuc2VsZWN0Mi1jb250YWluZXJbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH1cbiAgLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1pbi1oZWlnaHQ6IDMycHg7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTsgfVxuICAgIC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHBhZGRpbmctbGVmdDogOHB4O1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gIC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWFyY2gtLWlubGluZSB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAuc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUgLnNlbGVjdDItc2VhcmNoX19maWVsZCB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgZm9udC1zaXplOiAxMDAlO1xuICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlYXJjaC0taW5saW5lIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQ6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuLnNlbGVjdDItZHJvcGRvd24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtMTAwMDAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDUxOyB9XG5cbi5zZWxlY3QyLXJlc3VsdHMge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25zIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbi5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XG4gIHBhZGRpbmc6IDZweDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7IH1cbiAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uW2FyaWEtc2VsZWN0ZWRdIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3duIHtcbiAgbGVmdDogMDsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItZHJvcGRvd24tLWFib3ZlIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3duLS1iZWxvdyB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOyB9XG5cbi5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogNHB4OyB9XG4gIC5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24gLnNlbGVjdDItc2VhcmNoX19maWVsZCB7XG4gICAgcGFkZGluZzogNHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cbiAgICAuc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQ6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24ge1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG4gIC5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24uc2VsZWN0Mi1zZWFyY2gtLWhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLnNlbGVjdDItY2xvc2UtbWFzayB7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgb3BhY2l0eTogMDtcbiAgei1pbmRleDogOTk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTsgfVxuXG4uc2VsZWN0Mi1oaWRkZW4tYWNjZXNzaWJsZSB7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAgMCAwIDApICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtY2xpcC1wYXRoOiBpbnNldCg1MCUpICFpbXBvcnRhbnQ7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50OyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4gIGJvcmRlci1yYWRpdXM6IDRweDsgfVxuICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG4gICAgY29sb3I6ICM0NDQ7XG4gICAgbGluZS1oZWlnaHQ6IDI4cHg7IH1cbiAgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjOTk5OyB9XG4gIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IHtcbiAgICBoZWlnaHQ6IDI2cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMXB4O1xuICAgIHJpZ2h0OiAxcHg7XG4gICAgd2lkdGg6IDIwcHg7IH1cbiAgICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyBiIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzg4OCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICBib3JkZXItd2lkdGg6IDVweCA0cHggMCA0cHg7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBtYXJnaW4tbGVmdDogLTRweDtcbiAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHdpZHRoOiAwOyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG4gIGxlZnQ6IDFweDtcbiAgcmlnaHQ6IGF1dG87IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1kaXNhYmxlZCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLWRpc2FibGVkIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cgYiB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzg4OCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAwIDRweCA1cHggNHB4OyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgY3Vyc29yOiB0ZXh0OyB9XG4gIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCA1cHg7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIGxpIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgIHBhZGRpbmc6IDFweDsgfVxuICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZTRlNDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIHBhZGRpbmc6IDAgNXB4OyB9XG4gIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmUge1xuICAgIGNvbG9yOiAjOTk5O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAycHg7IH1cbiAgICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMzMzOyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZSwgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0W2Rpcj1cInJ0bFwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlYXJjaC0taW5saW5lIHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdFtkaXI9XCJydGxcIl0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZSB7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSB7XG4gIG1hcmdpbi1sZWZ0OiAycHg7XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLWZvY3VzIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICBib3JkZXI6IHNvbGlkIGJsYWNrIDFweDtcbiAgb3V0bGluZTogMDsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLWRpc2FibGVkIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1kaXNhYmxlZCAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWFib3ZlIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLCAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWFib3ZlIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWJlbG93IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLCAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWJlbG93IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2FhYTsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUgLnNlbGVjdDItc2VhcmNoX19maWVsZCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzID4gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9ucyB7XG4gIG1heC1oZWlnaHQ6IDIwMHB4O1xuICBvdmVyZmxvdy15OiBhdXRvOyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25bcm9sZT1ncm91cF0ge1xuICBwYWRkaW5nOiAwOyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25bYXJpYS1kaXNhYmxlZD10cnVlXSB7XG4gIGNvbG9yOiAjOTk5OyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25bYXJpYS1zZWxlY3RlZD10cnVlXSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24ge1xuICBwYWRkaW5nLWxlZnQ6IDFlbTsgfVxuICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19ncm91cCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xZW07XG4gICAgcGFkZGluZy1sZWZ0OiAyZW07IH1cbiAgICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAzZW07IH1cbiAgICAgIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0zZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogNGVtOyB9XG4gICAgICAgIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC00ZW07XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiA1ZW07IH1cbiAgICAgICAgICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNWVtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA2ZW07IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTg5N2ZiO1xuICBjb2xvcjogd2hpdGU7IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX2dyb3VwIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogNnB4OyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgb3V0bGluZTogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCB3aGl0ZSA1MCUsICNlZWVlZWUgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHdoaXRlIDUwJSwgI2VlZWVlZSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgd2hpdGUgNTAlLCAjZWVlZWVlIDEwMCUpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyNGRkZGRkZGRicsIGVuZENvbG9yc3RyPScjRkZFRUVFRUUnLCBHcmFkaWVudFR5cGU9MCk7IH1cbiAgLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNTg5N2ZiOyB9XG4gIC5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICBjb2xvcjogIzQ0NDtcbiAgICBsaW5lLWhlaWdodDogMjhweDsgfVxuICAuc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjOTk5OyB9XG4gIC5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNhYWE7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDRweDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNHB4O1xuICAgIGhlaWdodDogMjZweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxcHg7XG4gICAgcmlnaHQ6IDFweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICNlZWVlZWUgNTAlLCAjY2NjY2NjIDEwMCUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNlZWVlZWUgNTAlLCAjY2NjY2NjIDEwMCUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlZWVlZWUgNTAlLCAjY2NjY2NjIDEwMCUpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjRkZFRUVFRUUnLCBlbmRDb2xvcnN0cj0nI0ZGQ0NDQ0NDJywgR3JhZGllbnRUeXBlPTApOyB9XG4gICAgLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cgYiB7XG4gICAgICBib3JkZXItY29sb3I6ICM4ODggdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgYm9yZGVyLXdpZHRoOiA1cHggNHB4IDAgNHB4O1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IC00cHg7XG4gICAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB3aWR0aDogMDsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWNbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIge1xuICBmbG9hdDogbGVmdDsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWNbZGlyPVwicnRsXCJdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNhYWE7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4O1xuICBsZWZ0OiAxcHg7XG4gIHJpZ2h0OiBhdXRvOyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM1ODk3ZmI7IH1cbiAgLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTsgfVxuICAgIC5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IGIge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjODg4IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXdpZHRoOiAwIDRweCA1cHggNHB4OyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYWJvdmUgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICBib3JkZXItdG9wOiBub25lO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCB3aGl0ZSAwJSwgI2VlZWVlZSA1MCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCB3aGl0ZSAwJSwgI2VlZWVlZSA1MCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCB3aGl0ZSAwJSwgI2VlZWVlZSA1MCUpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyNGRkZGRkZGRicsIGVuZENvbG9yc3RyPScjRkZFRUVFRUUnLCBHcmFkaWVudFR5cGU9MCk7IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1iZWxvdyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICNlZWVlZWUgNTAlLCB3aGl0ZSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgI2VlZWVlZSA1MCUsIHdoaXRlIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZWVlZWVlIDUwJSwgd2hpdGUgMTAwJSk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI0ZGRUVFRUVFJywgZW5kQ29sb3JzdHI9JyNGRkZGRkZGRicsIEdyYWRpZW50VHlwZT0wKTsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGN1cnNvcjogdGV4dDtcbiAgb3V0bGluZTogMDsgfVxuICAuc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzU4OTdmYjsgfVxuICAuc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwIDVweDsgfVxuICAuc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlNGU0O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgcGFkZGluZzogMCA1cHg7IH1cbiAgLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSB7XG4gICAgY29sb3I6ICM4ODg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tcmlnaHQ6IDJweDsgfVxuICAgIC5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmU6aG92ZXIge1xuICAgICAgY29sb3I6ICM1NTU7IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj1cInJ0bFwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj1cInJ0bFwiXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmUge1xuICBtYXJnaW4tbGVmdDogMnB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNTg5N2ZiOyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYWJvdmUgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwOyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYmVsb3cgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwOyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xuICBvdXRsaW5lOiAwOyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWFyY2gtLWlubGluZSAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItZHJvcGRvd24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLWRyb3Bkb3duLS1hYm92ZSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLWRyb3Bkb3duLS1iZWxvdyB7XG4gIGJvcmRlci10b3A6IG5vbmU7IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXJlc3VsdHMgPiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25zIHtcbiAgbWF4LWhlaWdodDogMjAwcHg7XG4gIG92ZXJmbG93LXk6IGF1dG87IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbltyb2xlPWdyb3VwXSB7XG4gIHBhZGRpbmc6IDA7IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvblthcmlhLWRpc2FibGVkPXRydWVdIHtcbiAgY29sb3I6IGdyZXk7IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWRbYXJpYS1zZWxlY3RlZF0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzg3NWQ3O1xuICBjb2xvcjogd2hpdGU7IH1cblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXJlc3VsdHNfX2dyb3VwIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogNnB4OyB9XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1kcm9wZG93biB7XG4gIGJvcmRlci1jb2xvcjogIzU4OTdmYjsgfVxuIiwiLmNjLXdpbmRvd3tvcGFjaXR5OjE7LXdlYmtpdC10cmFuc2l0aW9uOm9wYWNpdHkgMXMgZWFzZTt0cmFuc2l0aW9uOm9wYWNpdHkgMXMgZWFzZX0uY2Mtd2luZG93LmNjLWludmlzaWJsZXtvcGFjaXR5OjB9LmNjLWFuaW1hdGUuY2MtcmV2b2tley13ZWJraXQtdHJhbnNpdGlvbjp0cmFuc2Zvcm0gMXMgZWFzZTstd2Via2l0LXRyYW5zaXRpb246LXdlYmtpdC10cmFuc2Zvcm0gMXMgZWFzZTt0cmFuc2l0aW9uOi13ZWJraXQtdHJhbnNmb3JtIDFzIGVhc2U7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gMXMgZWFzZTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAxcyBlYXNlLC13ZWJraXQtdHJhbnNmb3JtIDFzIGVhc2V9LmNjLWFuaW1hdGUuY2MtcmV2b2tlLmNjLXRvcHstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKC0yZW0pO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0yZW0pfS5jYy1hbmltYXRlLmNjLXJldm9rZS5jYy1ib3R0b217LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgyZW0pO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDJlbSl9LmNjLWFuaW1hdGUuY2MtcmV2b2tlLmNjLWFjdGl2ZS5jYy10b3B7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX0uY2MtYW5pbWF0ZS5jYy1yZXZva2UuY2MtYWN0aXZlLmNjLWJvdHRvbXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVZKDApO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfS5jYy1yZXZva2U6aG92ZXJ7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlWSgwKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX0uY2MtZ3Jvd2Vye21heC1oZWlnaHQ6MDtvdmVyZmxvdzpoaWRkZW47LXdlYmtpdC10cmFuc2l0aW9uOm1heC1oZWlnaHQgMXM7dHJhbnNpdGlvbjptYXgtaGVpZ2h0IDFzfVxuLmNjLXJldm9rZSwuY2Mtd2luZG93e3Bvc2l0aW9uOmZpeGVkO292ZXJmbG93OmhpZGRlbjstd2Via2l0LWJveC1zaXppbmc6Ym9yZGVyLWJveDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Zm9udC1mYW1pbHk6SGVsdmV0aWNhLENhbGlicmksQXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTZweDtsaW5lLWhlaWdodDoxLjVlbTtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy1tcy1mbGV4LXdyYXA6bm93cmFwO2ZsZXgtd3JhcDpub3dyYXA7ei1pbmRleDo5OTk5fS5jYy13aW5kb3cuY2Mtc3RhdGlje3Bvc2l0aW9uOnN0YXRpY30uY2Mtd2luZG93LmNjLWZsb2F0aW5ne3BhZGRpbmc6MmVtO21heC13aWR0aDoyNGVtOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWJveC1kaXJlY3Rpb246bm9ybWFsOy1tcy1mbGV4LWRpcmVjdGlvbjpjb2x1bW47ZmxleC1kaXJlY3Rpb246Y29sdW1ufS5jYy13aW5kb3cuY2MtYmFubmVye3BhZGRpbmc6MWVtIDEuOGVtO3dpZHRoOjEwMCU7LXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7LXdlYmtpdC1ib3gtZGlyZWN0aW9uOm5vcm1hbDstbXMtZmxleC1kaXJlY3Rpb246cm93O2ZsZXgtZGlyZWN0aW9uOnJvd30uY2MtcmV2b2tle3BhZGRpbmc6LjVlbX0uY2MtcmV2b2tlOmhvdmVye3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9LmNjLWhlYWRlcntmb250LXNpemU6MThweDtmb250LXdlaWdodDo3MDB9LmNjLWJ0biwuY2MtY2xvc2UsLmNjLWxpbmssLmNjLXJldm9rZXtjdXJzb3I6cG9pbnRlcn0uY2MtbGlua3tvcGFjaXR5Oi44O2Rpc3BsYXk6aW5saW5lLWJsb2NrO3BhZGRpbmc6LjJlbTt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5jYy1saW5rOmhvdmVye29wYWNpdHk6MX0uY2MtbGluazphY3RpdmUsLmNjLWxpbms6dmlzaXRlZHtjb2xvcjppbml0aWFsfS5jYy1idG57ZGlzcGxheTpibG9jaztwYWRkaW5nOi40ZW0gLjhlbTtmb250LXNpemU6LjllbTtmb250LXdlaWdodDo3MDA7Ym9yZGVyLXdpZHRoOjJweDtib3JkZXItc3R5bGU6c29saWQ7dGV4dC1hbGlnbjpjZW50ZXI7d2hpdGUtc3BhY2U6bm93cmFwfS5jYy1oaWdobGlnaHQgLmNjLWJ0bjpmaXJzdC1jaGlsZHtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH0uY2MtaGlnaGxpZ2h0IC5jYy1idG46Zmlyc3QtY2hpbGQ6Zm9jdXMsLmNjLWhpZ2hsaWdodCAuY2MtYnRuOmZpcnN0LWNoaWxkOmhvdmVye2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0uY2MtY2xvc2V7ZGlzcGxheTpibG9jaztwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LjVlbTtyaWdodDouNWVtO2ZvbnQtc2l6ZToxLjZlbTtvcGFjaXR5Oi45O2xpbmUtaGVpZ2h0Oi43NX0uY2MtY2xvc2U6Zm9jdXMsLmNjLWNsb3NlOmhvdmVye29wYWNpdHk6MX1cbi5jYy1yZXZva2UuY2MtdG9we3RvcDowO2xlZnQ6M2VtO2JvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6LjVlbTtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czouNWVtfS5jYy1yZXZva2UuY2MtYm90dG9te2JvdHRvbTowO2xlZnQ6M2VtO2JvcmRlci10b3AtbGVmdC1yYWRpdXM6LjVlbTtib3JkZXItdG9wLXJpZ2h0LXJhZGl1czouNWVtfS5jYy1yZXZva2UuY2MtbGVmdHtsZWZ0OjNlbTtyaWdodDp1bnNldH0uY2MtcmV2b2tlLmNjLXJpZ2h0e3JpZ2h0OjNlbTtsZWZ0OnVuc2V0fS5jYy10b3B7dG9wOjFlbX0uY2MtbGVmdHtsZWZ0OjFlbX0uY2MtcmlnaHR7cmlnaHQ6MWVtfS5jYy1ib3R0b217Ym90dG9tOjFlbX0uY2MtZmxvYXRpbmc+LmNjLWxpbmt7bWFyZ2luLWJvdHRvbToxZW19LmNjLWZsb2F0aW5nIC5jYy1tZXNzYWdle2Rpc3BsYXk6YmxvY2s7bWFyZ2luLWJvdHRvbToxZW19LmNjLXdpbmRvdy5jYy1mbG9hdGluZyAuY2MtY29tcGxpYW5jZXstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MSAwIGF1dG87ZmxleDoxIDAgYXV0b30uY2Mtd2luZG93LmNjLWJhbm5lcnstd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcn0uY2MtYmFubmVyLmNjLXRvcHtsZWZ0OjA7cmlnaHQ6MDt0b3A6MH0uY2MtYmFubmVyLmNjLWJvdHRvbXtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MH0uY2MtYmFubmVyIC5jYy1tZXNzYWdle2Rpc3BsYXk6YmxvY2s7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMSBhdXRvO2ZsZXg6MSAxIGF1dG87bWF4LXdpZHRoOjEwMCU7bWFyZ2luLXJpZ2h0OjFlbX0uY2MtY29tcGxpYW5jZXtkaXNwbGF5Oi13ZWJraXQtYm94O2Rpc3BsYXk6LW1zLWZsZXhib3g7ZGlzcGxheTpmbGV4Oy13ZWJraXQtYm94LWFsaWduOmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyOy1tcy1mbGV4LWxpbmUtcGFjazpqdXN0aWZ5O2FsaWduLWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0uY2MtZmxvYXRpbmcgLmNjLWNvbXBsaWFuY2U+LmNjLWJ0bnstd2Via2l0LWJveC1mbGV4OjE7LW1zLWZsZXg6MTtmbGV4OjF9LmNjLWJ0bisuY2MtYnRue21hcmdpbi1sZWZ0Oi41ZW19XG5AbWVkaWEgcHJpbnR7LmNjLXJldm9rZSwuY2Mtd2luZG93e2Rpc3BsYXk6bm9uZX19QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDo5MDBweCl7LmNjLWJ0bnt3aGl0ZS1zcGFjZTpub3JtYWx9fUBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NDE0cHgpIGFuZCAob3JpZW50YXRpb246cG9ydHJhaXQpLHNjcmVlbiBhbmQgKG1heC13aWR0aDo3MzZweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey5jYy13aW5kb3cuY2MtdG9we3RvcDowfS5jYy13aW5kb3cuY2MtYm90dG9te2JvdHRvbTowfS5jYy13aW5kb3cuY2MtYmFubmVyLC5jYy13aW5kb3cuY2MtZmxvYXRpbmcsLmNjLXdpbmRvdy5jYy1sZWZ0LC5jYy13aW5kb3cuY2MtcmlnaHR7bGVmdDowO3JpZ2h0OjB9LmNjLXdpbmRvdy5jYy1iYW5uZXJ7LXdlYmtpdC1ib3gtb3JpZW50OnZlcnRpY2FsOy13ZWJraXQtYm94LWRpcmVjdGlvbjpub3JtYWw7LW1zLWZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4LWRpcmVjdGlvbjpjb2x1bW59LmNjLXdpbmRvdy5jYy1iYW5uZXIgLmNjLWNvbXBsaWFuY2V7LXdlYmtpdC1ib3gtZmxleDoxOy1tcy1mbGV4OjEgMSBhdXRvO2ZsZXg6MSAxIGF1dG99LmNjLXdpbmRvdy5jYy1mbG9hdGluZ3ttYXgtd2lkdGg6bm9uZX0uY2Mtd2luZG93IC5jYy1tZXNzYWdle21hcmdpbi1ib3R0b206MWVtfS5jYy13aW5kb3cuY2MtYmFubmVyey13ZWJraXQtYm94LWFsaWduOnVuc2V0Oy1tcy1mbGV4LWFsaWduOnVuc2V0O2FsaWduLWl0ZW1zOnVuc2V0fS5jYy13aW5kb3cuY2MtYmFubmVyIC5jYy1tZXNzYWdle21hcmdpbi1yaWdodDowfX1cbi5jYy1mbG9hdGluZy5jYy10aGVtZS1jbGFzc2lje3BhZGRpbmc6MS4yZW07Ym9yZGVyLXJhZGl1czo1cHh9LmNjLWZsb2F0aW5nLmNjLXR5cGUtaW5mby5jYy10aGVtZS1jbGFzc2ljIC5jYy1jb21wbGlhbmNle3RleHQtYWxpZ246Y2VudGVyO2Rpc3BsYXk6aW5saW5lOy13ZWJraXQtYm94LWZsZXg6MDstbXMtZmxleDpub25lO2ZsZXg6bm9uZX0uY2MtdGhlbWUtY2xhc3NpYyAuY2MtYnRue2JvcmRlci1yYWRpdXM6NXB4fS5jYy10aGVtZS1jbGFzc2ljIC5jYy1idG46bGFzdC1jaGlsZHttaW4td2lkdGg6MTQwcHh9LmNjLWZsb2F0aW5nLmNjLXR5cGUtaW5mby5jYy10aGVtZS1jbGFzc2ljIC5jYy1idG57ZGlzcGxheTppbmxpbmUtYmxvY2t9XG4uY2MtdGhlbWUtZWRnZWxlc3MuY2Mtd2luZG93e3BhZGRpbmc6MH0uY2MtZmxvYXRpbmcuY2MtdGhlbWUtZWRnZWxlc3MgLmNjLW1lc3NhZ2V7bWFyZ2luOjJlbTttYXJnaW4tYm90dG9tOjEuNWVtfS5jYy1iYW5uZXIuY2MtdGhlbWUtZWRnZWxlc3MgLmNjLWJ0bnttYXJnaW46MDtwYWRkaW5nOi44ZW0gMS44ZW07aGVpZ2h0OjEwMCV9LmNjLWJhbm5lci5jYy10aGVtZS1lZGdlbGVzcyAuY2MtbWVzc2FnZXttYXJnaW4tbGVmdDoxZW19LmNjLWZsb2F0aW5nLmNjLXRoZW1lLWVkZ2VsZXNzIC5jYy1idG4rLmNjLWJ0bnttYXJnaW4tbGVmdDowfSJdfQ== */
